ELK Stack?

quokka·2022년 4월 9일
0

.

목록 보기
2/5
post-thumbnail

Elastcisearch는 검색엔진으로 단독으로 사용할 수도 있지만 용도에 따라 다양한 툴과 함께 사용할 수 있다.

대표적으로 ELK(Elasticsearch / Logstash / Kibana / Beats) 스택으로 사용된다.

Logstash
다양한 소스(DB, csv 파일 등)의 로그 또는 트랜잭션 데이터를 수집, 집계, 파싱하여 Elasticsearch로 전달한다.

Elasticsearch
Logstash로부터 받은 데이터를 검색 및 집계하여 필요한 정보를 얻을 수 있다.

Kibana
Elasticsearch의 데이터를 시각화 및 모니터에 사용된다.

Beats
ELK stack에 경량의 단일 목적 데이터 수집기 Beats가 추가되었다. (로그스태시가 단말 장치에서 단순 데이터 수집으로 사용하기에는 프로그램 부피가 커서 필터 기능 없이 단순히 수집하고 데이터를 전달하는 포워더 성격의 Beats가 개발되었다.)


일반적으로 사용되는 흐름은 다음과 같다.

  • Beats에서 데이터를 수집하고, 수집한 데이터를 Logstash가 받는다.

  • Logstash는 전달된 데이터를 구문 분석, 변환, 필터링해서 Elasticsearch로 데이터를 전달한다. Logstash에서 불필요한 데이터는 제거하고, 필요한 데이터만 구조를 도출해서 ES로 전달하게 된다.

  • ES에 전달된 데이터는 ES와 연동된 Kibana에서 검색, 분석할 수 있다.

물론 반드시 이 구조로 사용하는 것은 아니다. 짧은 시간에 대용량 데이터를 전달할 때 중간에 Redis, Kafka 등 버퍼 역할을 추가하기도 하고, Beats 없이 Logstash로 바로 데이터를 수집하고 ES로 전달할수도 있고, 다른 데이터베이스를 ES와 연동하여 사용하기도 한다.

0개의 댓글