본문 바로가기

OpenSource/ELK

Logstash 여러개의 instance 구동하기


Logstash 여러개의 instance 구동하기


- 한 서버에서 두개 이상의 Logstash instance를 구동할 필요가 있을 때 사용할 수 있는 방법입니다.
- Centos 7, Java 1.8 기준

1. ELK 공식 홈페이지에서 적당한 곳에 Logstash를 내려 받습니다.

  - 복수개의 instance를 구동하는게 목적이므로 버전은 크게 중요하지 않습니다만 여기서는 5.5.1 기준으로 설명합니다.


[seyou@localhost apps]$ pwd

/home/seyou/apps

[seyou@localhost apps]$ wget https://artifacts.elastic.co/downloads/logstash/logstash-5.5.1.tar.gz

[seyou@localhost apps]$ tar xfz ./logstash-5.5.1.tar.gz


2. 예시로 두개의 instance를 돌려볼 예정이므로 바이너리를 복제합니다.


[seyou@localhost apps]$ cp -R ./logstash-5.5.1 ./logstash-5.5.1-c2

[seyou@localhost apps]$ mv ./logstash-5.5.1 ./logstash-5.5.1-c1

[seyou@localhost apps]$ ls

logstash-5.5.1-c1  logstash-5.5.1-c2  logstash-5.5.1.tar.gz


3. 먼저 logstash-5.5.1-c1의 설정부터 변경합니다.

  - 포트, 로그 레벨, JVM 옵션 등 기본적인 설정 내용은 생략합니다.


[seyou@localhost apps]$ vim ./logstash-5.5.1-c1/config/logstash.yml


...

path.data: "/home/seyou/apps/logstash-5.5.1-c1/data"

path.log: "/home/seyou/apps/logstash-5.5.1-c1/log"

...


path.data

- logstash에서 사용할 data 디렉토리를 지정합니다.

path.log

- logstash에서 사용할 log 디렉토리를 지정합니다.


[seyou@localhost apps]$ vim ./logstash-5.5.1-c1/config/startup.options


...

LS_HOME=/home/seyou/apps/logstash-5.5.1-c1

LS_GC_LOG_FILE=/home/seyou/apps/logstash-5.5.1-c1/log

SERVICE_NAME="logstash-c1"

SERVICE_DESCRIPTION="logstash-c1"

...


LS_HOME

- logstash의 home 디렉토리

LS_GC_LOG_FILE

- logstash가 동작하면서 GC가 실행될때 남길 로그 디렉토리

SERVICE_NAME

- logstash 서비스 이름

- 한 장비에서 여러 instance 사용할때 구분할 이름

SERVICE_DESCRIPTION

- 서비스 설명


4. 3.의 과정을 복제한 logstash-5.5.2-c2 디렉토리에서 진행합니다.

- 각 디렉토리명은 logstash-5.5.2-c2에 맞게 변경

- SERVICE_NAME이 중복되지 않게 설정


5. 예제 conf 파일


[seyou@localhost apps]$ vim ./logstash-5.5.1-c1/config/test.conf


1
2
3
4
5
6
7
8
9
10
11
12
13
input {
 
  stdin { }
 
}
 
 
 
output {
 
  stdout { codec => rubydebug }
 
}
cs


[seyou@localhost apps]$ cp ./logstash-5.5.1-c1/config/test.conf ./logstash-5.5.1-c2/config/test.conf


6. Logstash 실행 및 테스트


[seyou@localhost logstash-5.5.1-c1]$ ./bin/logstash -f ./config/test.conf

다른 콘솔을 켜서

[seyou@localhost logstash-5.5.1-c2]$ ./bin/logstash -f ./config/test.conf








'OpenSource > ELK' 카테고리의 다른 글

ELK 스택에서 CPU 점유율이 높을때  (0) 2018.01.15