ELK Stack
ELK Stack은 로그 및 데이터 분석 도구로써 오픈 소스 프로젝트인 Elasticsearch, Logstash, Kibana의 앞글자만 따와서 만든 약어입니다. ELK에서 Elasticsearch는 검색 및 분석을 담당하고, Logstash는 로그 및 데이터를 수집을 담당하고, Kibana는 데이터 시각화를 담당합니다.
인프라가 클라우드로 이동할수록, 해당 인프라의 서버 로그, 어플리케이션 로그 등 전반적인 프로세스를 모니터링하기 위해 로그 관리와 로그 분석 솔루션이 필요합니다. ELK Stack은 이러한 공간을 채워주는 가장 단순하면서 강력한 로그 분석 솔루션을 제공합니다.
Elasticsearch
Elasticsearch는 아파치 루씬(Apache Lucene)기반의 오픈 소스 분산 검색 엔진으로, JSON 형식의 데이터를 저장하고 검색할 수 있으며, 데이터를 기반으로 분석 작업을 진행할 수도 있습니다.
Logstash나 API를 사용해 Elasticsearch로 데이터를 전송하고, Kibana와 함께 사용해 데이터를 시각화하여 대시보드를 구축할 수 있습니다.
Logstash
Logstash는 실시간 파이프라인 기능을 가진 오픈 소스 데이터 수집 엔진입니다. Logstash는 다양한 소스에서 데이터를 수집하여 변환한 후 Elasticsearch같은 stash 저장소로 전송합니다. Logstash는 Elasticsearch에 데이터를 전송할 때 가장 많이 사용됩니다.
Kibana
Kibana는 Elastic Stack을 기반으로 구축된 무료 오픈 소스 프론트엔드 어플리케이션으로, Elasticcsearch에서 색인된 데이터를 검색하고 시각화하는 기능을 제공합니다. Logstash에서 데이터를 수집해 Elasticsearch로 전송하고, Elasticsearch에색인된 데이터를 Kibana 대시보드를 통해 시각화함으로써, 로그를 분석하고 어플리케이션을 모니터링할 수 있습니다.