[Splunk] 하나의 서버에 설치된 여러 인스턴스 boot-start 적용하기

백로그·2021년 2월 17일

SPLUNK

목록 보기
1/1
post-thumbnail

문제

init 시스템으로 Systemd를 사용하는 *nix 운영체제 기준

Splunk 환경을 구성하다보면 하나의 서버에 여러 인스턴스를 설치해야할 상황이 생길수 있다.

하지만 단일 인스턴스 환경에서 사용하는 Systemd 등록 명령어

[sudo] $SPLUNK_HOME/bin/splunk enable boot-start -systemd-managed 1

를 두 인스턴스에 모두 사용하면 정상적으로 boot-start가 적용되지 않는 모습을 볼 수 있다.

두 인스턴스에서 같은 Systemd 파일을 사용해서 생기는 문제라고 파악했기 때문에 이에 따른 해결법을 찾아보았다.

해결

테스트 환경은 Centos7 가상머신 환경에 두대의 인스턴스가 설치된 상황이다.

하나의 인스턴스에 먼저 위의 명령어로 boot-start 를 적용하고, 해당 명령어로 생성된 파일을 임의의 이름으로 복사한다.

cp /etc/systemd/system/Splunkd.service /etc/systemd/system/<Servicename 2>.service 

그리고 복사된 파일의 ExecStart 속성의 경로를 boot-start가 적용되지 않은 인스턴스의 경로로 변경해준다.

ExecStart=/opt/<splunk instance 2>/bin/splunk _internal ~~

파일을 저장하고 설정이 적용되지 않은 인스턴스에서 아래의 명령어로 복사된 service 파일을 지정하여 boot-start 옵션을 적용한다.

[sudo] $SPLUNK_HOME/bin/splunk enable boot-start -systemd-managed 1 -systemd-unit-file-name <Servicename 2>

위의 방법으로 적용하면 두 인스턴스 모두 정상적으로 boot-start가 적용되는걸 확인할 수 있다.

[참고자료] Splunk Admin Manual - Configure Splunk Enterprise to start at boot time

0개의 댓글