ELK/ELK 개발부터 운영까지

엘라스틱스택(ELK Stack) 이란?

Flambee 2022. 2. 14. 23:45
해당 글은 엘라스틱 스택 개발부터 운영까지라는 책 중 1 장을 정리하여 쓴 글입니다.

 

 

엘라스틱 스택은 무엇일까?

1. 엘라스틱 스택은 총 4개 엘라스틱 서치, 로그 스태시, 비츠, 키바나로 이루어져있다.

2. 빅데이터 파이프라인을 구성하기 위한 데이터 수집, 가공, 저장, 분석, 시각화에 필요한 모든 기능을 제공한다.

 추가적인 정보 : 처음부터 엘라스틱 스택이 만들어 진 것은 아니다. 엘라스틱 스택은 엘라스틱 서치 > 로그 스태시, 키바나 > 비츠 순으로 오픈소스 프로젝트가 진행되며 만들어졌다. 즉, 처음에 만들어진 엘라스틱 서치를 이용한 오픈소스 검색 엔진에 머무르는게 아닌, 플랫폼으로 발전하는 길을 택했다고 볼 수 있다.

엘라스틱서치

  • 검색 엔진이다.
  • 용어 단위로 분해되고 역인덱스 사전을 구춘한다.
  • 연관도에 따른 정렬이 가능하다.
  • 클러스터 구성 시 데이터의 양과 무관하게 1초 이내의 응답 속도를 기대할 수 있다.
  • 분산시스템을 이용하여 무결성과, 가용성을 지켜줄 수 있다.
  • JOIN 쿼리가 어렵기 때문에 반정규화가 필요할때가 있다.
  • 수정하거나 삭제할 경우에 비용이 저렴하지 않다.

키바나

  • 엘라스틱 스택의 UI를 담당.
  • 대시보드를 통하여, 라인 차트, 파이 차트 등과 테이블, 지도 등의 다양한 시각화 요소들을 확인 할 수 있다.
  • 커스텀 마이징 가능.

로그스태시

  • 데이터 수집과 가공 기능을 제공한다.
  • 로그, 메트릭, 웹 애플리케이션 등 다양한 소스로부터 로그를 수집할 수 있다.
  • 엘라스틱서치의 인덱싱 성능을 최적화하기 위한 배치 처리와 병렬 처리가 가능하다.
  • 영속적인 큐를 사용해 현재 처리 중인 이벤트의 최소 1회 전송을 보장한다.
  • 데이터 급증 속에서도 안정성을 보장해준다.

비츠

  • 무거운 로그스태시 대신 사용하는 경량 오픈소스.
  • 로그스태시 수준의 복잡한 이벤트 가공은 지원하지 않아 가벼움.
  • 각 서비스 호스트에 비교적 부담 없이 설치할 수 있음.
  • 비츠와 로그 스태시를 혼합 사용을 하기도 함. 비츠에서 각 서비스 호스트의 정보를 수집하여 로그스태시에서 취합하여 엘라스틱서치로 전송하는 형태의 아키텍처 사용.

기타 솔루션

  • APM : 애플리케이션 성능 모니터링
  • SIEM : 보안 이벤트 분석
  • 인프라 모니터링 등.

엘라스틱 스택 용도

  • 전문 검색 엔진
  • 로그 통합 분석
  • 보안 이벤트 분석
  • 애플리케이션 성능 분석
  • 머신러닝
  • 빅데이터 플랫폼 (카프카 연동, 하둡 연동, 관계형 데이터베이스 연동)