Splunk에서 모델 생성, 배포 등의 프로세스를 진행하기 위해 DLTK 를 세팅해줬다. MLTK도 충분히 좋지만, 코드로 내가 원하는 모델을 배포하기 위해서는 결국 DLTK 세팅이 필요하다.
로컬 환경, 단일 호스트에서 진행하였다.
준비된 사항!!
가 모두 설치되어 있어야 한다.
DLTK 앱을 설치하기 위해서는 MLTK 앱이 설치되어있어야 한다.
좌측 상단의 앱
을 클릭 후 아래로 내려오는 네비게이션 바에서 앱 관리
를 눌러준다.
이후에는 우측 상단의 앱 더 찾아보기
를 눌러준다.
Learning
을 검색 후 나오는 2개의 앱을 각각 설치 해 준다.
Python for Scientific Computing
라고 검색하면, OS와 CPU별로 앱이 나뉘어져서 나오는데, 나는 맥북 M1칩이어서 아래의 앱을 설치해줬다.설치 후 Splunk를 재시작 해준다. 이후 앱에 접속하면 아래와 같이 설정이 필요하다는 내용이 나오게 되고, 설정페이지로 이동된다.
앱 설정 페이지로 계속을 눌러주면, 아래와 같이 페이지가 로드된다.
아래의 Yes에 체크표시를 해주면 앱 설정 페이지가 로드된다.
도커 관련된 설정을 설정해주는 화면이다.
unix://var/run/docker.sock
으로 입력하면 된다. localhost
라고 기재해주었다.localhost
라고 기재해주면 된다. localhost
로 기재했다.Kubernetes은 현재 쿠버네티스로 올리지 않았기 때문에 일단 생략했다. 쿠버네티스 Authentication Mode의 경우 사용자 인증을 어떻게 하는제 적어주면 된다. 그 외에 Service Type은 쿠버네티스 사용 시, 클러스터 형태를 어떤 식으로 할지 선택해주는 부분이다.
* Enable Splunk Access: Yes
* Splunk Access Token: 사용자 별로 부여되는 접근 토큰이다.
설정 > 사용자 역할 및 인증 > 토큰 > 새 토큰
새 토큰을 클릭 후 사용자 이름, 사용 목적을 기재한다. 만료는 언제까지 토큰이 유효할지를 설정해주면 되는데 나는 1년으로 365d를 기재했다.
이후는 언제부터 사용할 것 인지를 나타내주면 된다. 나는 지금부터 사용할 것이기 때문에 now 라고 기재했다.
이후에 나오는 토큰 값을 복사해서, 아까 확인했던 Splunk Access Token 부분에 복붙해주면 된다.
* Splunk Host Address: Docker 컨테이너에서 Splunk에 접근할때 어디로 접근하면 되는지 그 주소를 나타내주면 된다. 나는 도커에서 로컬 호스트를 접근할 것이기 때문에 host.docker.internal 라고 기재했다.
* Splunk Management Port: Splunk 관리포트를 기재해주면 된다. 대부분 디폴트가 8089로 설정되어 있다.
여기까지 설정값을 지정해줬다.
마지막의 Test & Save를 눌러준다.
DSDL의 앱 화면 베너 중 설정 부분의 하위에 Containers 탭으로 들어간다.
아래를 보면 컨테이너를 설정하는 화면이 나온다.
Container image를 선택해준다. 나는 Golden Image CPU를 선택해줬다. 컨테이너의 이미지는 선택할 수 있는데, GPU가 있으면 GPU를 선택해도 좋을 것 같다.
컨테이너 이미지 사이트에 가보면 각 컨테이너별로 어떤 스펙을 가지고 있는지 나와있다. 이중에서 필요한 요구사항에 따라 선택해서 다운받는다.
생각보다 로컬에서 실행하기에는 용량이 커서 쵸큼 놀랐다. CPU 이미지는 약 6G 정도 된다.
아무튼 이미지를 선택하고, Start를 눌러주면 잠시 후 아래와 같은 화면이 보인다.
컨테이너에 Jupyter, MLFlow, Spark 등이 모두 포함되어 있어 Splunk와 연동해서 사용할 수 있게끔 되어있다.
설정화면에서 지정했던 비밀번호를 입력해준다. (만약 지정을 안했더라면, 디폴트 비밀번호가 이 사이트에 나와있다.)
아무튼 비밀번호를 입력하고 나면 바로 아래의 화면이 나온다.
좌측에서 보이는 notebooks 경로로 들어가서 아래의 파일을 테스트 해줬다.
SplunkSearch 후 데이터를 불러오는 곳 까지 테스트 해줬다. 완료되었다.