ELK(elasticsearch + logstash + kibana)

ELK 설치에 대한 간략한 참고 ( Windows )

ELK란?

ELK는 Elasticsearch, Logstash, Kibana 세 가지 오픈 소스를 합쳐 부르는 프로젝트의 약자입니다.

  • Elasticsearch: 검색과 분석을 담당하는 저장소
  • Logstash: 저장소에 저장되는 데이터의 수집 및 전달
  • Kibana: 저장소의 데이터를 시각화한 리포트 서비스

Elasticsearch를 사용하는 곳이 있나요?

Elasticsearch는 최근 몇 년 사이 많은 발전을 했고, 다양한 곳에서 활용되고 있습니다.

대표적인 예로 삼성SDS와 네이버가 있습니다. 삼성SDS는 Elasticsearch 기반으로 SDS Chatbot Brity를 구축했고, 네이버에서는 PaaS형 애플리케이션 로깅 시스템인 NELO에 Elasticsearch를 활용하기도 했습니다.

그 밖의 활용 사례는 아래 링크에서 더 확인할 수 있습니다. 활용 사례에 대한 강의 영상도 볼 수 있습니다.

활용사례 보러가기

설치

설치를 진행하기 전에 Elasticsearch와 Logstash는 Java가 설치되어 있어야 이용할 수 있습니다.

ELK 설치에 앞서 Java 설치를 먼저 진행한 뒤, 다음 순서대로 설치하는 것을 권장합니다.

1. 자신의 OS에 맞는 ELK 다운로드

다운로드 링크

2. Elasticsearch 설치

Elasticsearch 7.1.1 Windows MSI 다운로드 링크

저는 Windows 환경에서 설치했기 때문에 윈도우 버전 파일을 다운로드했습니다.

Elasticsearch 7.1에서는 윈도우 설치 시 MSI 버전 파일도 제공되므로 해당 파일로 설치하는 것을 추천합니다. 편합니다.

설치할 폴더, 사용 메모리, 서비스 등록 여부 등을 선택하면 설치가 진행됩니다.

설치가 완료된 뒤 localhost:9200으로 접근하면 기동된 Elasticsearch의 상태를 확인할 수 있습니다.

{
  "name" : "",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "ac2sBHymTcOgN0fD2fKW8A",
  "version" : {
    "number" : "7.1.1",
    "build_flavor" : "unknown",
    "build_type" : "unknown",
    "build_hash" : "7a013de",
    "build_date" : "2019-05-23T14:04:00.380842Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

서버에서는 보통 Head를 추가 설치하고 설정해서 조회하지만, 여기서는 개인 PC에 설치하고 조회하기 위한 과정이므로 간단하게 크롬 웹스토어에서 플러그인을 설치해 사용해 봅니다.

elasticsearch-head 다운로드

3. Logstash 설치

Logstash는 별도의 설치 절차는 없습니다. 다만 서비스를 기동할 때 데이터 수집과 전달 내용을 설정한 파일을 등록해줘야 합니다.

어떤 식으로 데이터가 오고 가는지 보기 위한 목적이므로, 아래와 같이 bin 폴더에 logstash-test.conf 파일을 생성합니다.

input {
    beats { port => 5044 }
}
output {
  elasticsearch {
    hosts => ["127.0.0.1:9200"]
  }
  ##stdout { codec => rubydebug }
}

설정한 파일을 이제 실행시켜 봅니다. 명령 프롬프트 실행 후 Logstash 설치 폴더의 bin 폴더로 이동해 아래와 같이 실행합니다.

logstash -f logstash-test.conf

그러면 서비스가 시작되고, 5044 포트로 유입되는 정보를 Elasticsearch 서버로 전송합니다.

4. Kibana 설치

Kibana 7.1.1 Windows 다운로드 링크

윈도우 설치는 간단합니다. 다운로드 후 원하는 위치에 압축을 풀고 아래 파일을 실행합니다.

{설치경로}\bin\kibana.bat

실행 후 서비스 기동이 완료되면 localhost:5601로 Kibana에 접근할 수 있습니다.

기타

명령 프롬프트로 매번 실행시키는 게 불편하다면 NSSM을 사용해 서비스에 등록하면 됩니다.

마무리

짧긴 하지만 대략적으로 ELK 설치 과정을 진행해 보았습니다.

2년 전에는 참 힘들게 설치했는데, 지금은 뭔가 편해진 느낌입니다. 세상 참…

다음에는, 언젠가 될지 모르겠지만, 일반적인 웹에서 Elasticsearch에 데이터를 남기는 방법을 진행해 보려고 합니다.