Skip to main content Link Search Menu Expand Document (external link)

Table of contents

  1. ELK란?
    1. ELK을 더 알아보자!
      1. E(Elasticsearch)
      2. L(Logstash)
      3. K(Kibana)
  2. How to Install
    1. Github에서 코드를 가져옵니다.

ELK란?

이 장에선 Docker환경에서 ELK 빌드 자동화 구축에 대해서 알아보겠습니다. “ELK”는 Elasticsearch, Logstash 및 Kibana, 이 오픈 소스 프로젝트 세 개의 머리글자입니다.

Note

  • Elasticsearch: 검색 및 분석 엔진 (엘라스틱서치는 검색 엔진 이면서 데이터 베이스이기도 하다.)
  • Logstash: 여러 소스에서 동시에 데이터를 수집하여 변환한 후 Elasticsearch 같은 “stash”로 전송하는 서버 사이드 데이터 처리 파이프라인
  • Kibana: 사용자가 Elasticsearch에서 차트와 그래프를 이용해 데이터를 시각화 툴

img

ELK을 더 알아보자!

모든 시스템의 로그를 집계할 수 있습니다. 로그에서 문제를 분석할 수 있을 뿐만 아니라 시스템 사용을 모니터링하고 개선 기회를 찾을 수도 있습니다.

  • E(Elasticsearch)

    엘라스틱서치는 검색 엔진 이면서 데이터 베이스이기도 하다.

    • 인덱싱 indexing
    • 병렬 & 분산 처리
    • Lucene 기반 검색 엔진 (최적화된 자료구조 지원, 스코어링 scoring 등..)
    • REST API
    • DSL (Domain Specific Language)
  • L(Logstash)

    로그스태시는 이벤트 수집과 정제를 위한 도구이다.

    • 엘라스틱서치 인덱싱 성능 최적화
    • 로그 가공
    • 데이터 수집 및 가공
  • K(Kibana)

    키바나는 시각화와 엘라스틱서치 관리 도구이다.

    • 엘라스틱서치의 UI
    • 시각화, 대시보드
    • 실시간 모니터링, 데이터분석, APM, SIEM 등의 솔루션

    img

How to Install

이 글에서의 ELK 구축은 docker를 기반으로 구축하고, Django와 연동하여, 간단하게 APM도 확인할 예정입니다. 마지막은 모든 과정을 하나로 묶은 docker-compose.yml로 정리할 예정입니다.

Github에서 코드를 가져옵니다.

git clone https://github.com/deviantony/docker-elk