Slide : http://slides.com/silvernine/elk-log/fullscreen

 

ELK stack(elasticsearch, logstash, kibana)을 이용해서 간단하게 log data visualization이 가능합니다.

* https://www.elastic.co/downloads 에서 아래 버전을 다운 받습니다.

– elasticsearch 2.3.4
– logstash 2.3.4 All Plugins
– kibana 4.5.3

 

1. elasticsearch

tar zxvf elasticsearch-2.3.4.tar.gz

bin/elasticsearch ( -d 옵션을 추가하면 Background로 실행됩니다. )

curl localhost:9200 ( 터미널에서 엘라스틱서치를 호출합니다.  기본 포트 값은 9200 입니다. )

편리한 사용을 위해 Head plugin을 설치합니다. ( 유용한 플러그인이 정말 많습니다! )

bin/plugin install mobz/elasticsearch-head

설치 후 http://localhost:9200/_plugin/head/ 접속 해보면 Head Plugin 화면을 확인하실 수 있습니다.

2. logstash

tar zxvf logstash-all-plugins-2.3.4.tar.gz

bin/logstash.conf 파일을 추가하면서 간단하게 json형태의 데이터가 쌓여있는 파일을 읽어서 “logstash-년월” 으로 명명되는 index를 생성하도록 설정 정보를 입력합니다.

bin/logstash -f bin/logstash.conf ( config 파일을 지정하여 logstash 를 실행합니다. )

실행 후 logstash config에서 지정한 data 폴더에 log 파일을 넣습니다. 예제 log 파일의 데이터 형태는 아래와 같습니다. sample : http://silvernine.me/document/query.20160729.log

다시 Head plugin으로 접속해서 확인해보면 아래와 같이 index가 정상적으로 생성된 것을 확인하실 수 있습니다.

elasticsearch head

 

3. Kibana

tar zxvf kibana-4.5.3-darwin-x64.tar.gz

vi config/kibana.yml > server.port, server.host 주석을 해제하고 port는 5601, host는 127.0.0.1 로 설정합니다.

bin/kibana 실행 후 http://localhost:5601 접속!

background mode ( nohup ./bin/kibana > kibana.log 2>&1 & )

Index name or pattern은 default값인 logstash-* 으로 하겠습니다.

화면 오른쪽 상단의 Last 15 minutes 버튼을 눌러 적당한 기간을 선택하도록 합니다.

kibana

kibana 에서 elasticsearch의 index정보를 정상적으로 조회 해왔습니다!

 

4. Visualize

pie chart를 선택하고 아래와 같이 설정합니다.

kibana pie chart

저장 후 Dashboard 메뉴에서 기 저장했던 chart들을 불러올 수 있습니다.

이런 과정을 통해 여러 차트를 생성한 후 Dashboard를 만들어 저장하면 아래 예시와 같이 꾸밀 수 있습니다.

dashboard

 

* share 버튼을 통해서 iframe tag를 export 할 수 있습니다! 관리자 화면 같은 곳에 붙이면 딱 좋겠죠!!

 


답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.