ELK Stack 완벽 가이드! Elasticsearch Logstash Kibana 기반 Log Monitoring Architecture 이해하기

Cloud Native 환경에서는 Metrics뿐만 아니라 Application과 Server에서 발생하는 Log 데이터를 분석하는 것이 중요합니다.

Metrics는 현재 상태를 숫자로 보여주지만 Log는 시스템에서 발생한 상세한 이벤트 기록을 제공합니다.

예:

사용자 요청 발생

Application Log 생성

Error 발생

Log 분석 필요

특히 Kubernetes 환경에서는 수많은 Container와 Pod가 동적으로 생성되기 때문에 중앙 집중식 Log 관리 시스템이 필요합니다.

기존 방식:

Server 접속

Log File 확인

문제 분석

하지만 대규모 환경에서는 수백 개의 Server와 Container Log를 각각 확인하기 어렵습니다.

이를 해결하기 위해 ELK Stack 같은 Log Monitoring Architecture가 사용됩니다.

ELK Stack은 Elasticsearch, Logstash, Kibana 세 가지 기술로 구성된 대표적인 Log Analysis Platform입니다.

예:

Application

Logstash

Elasticsearch

Kibana Dashboard

Log 분석

구성 요소역할
ElasticsearchLog 저장 및 검색
LogstashLog 수집 및 변환
KibanaLog 시각화
Beats데이터 전달
IndexLog 관리 단위

ELK Stack 구조를 이해하면 Kubernetes, Cloud, Enterprise Log Monitoring Architecture를 설계할 수 있습니다.

ELK Stack이란?

ELK Stack은 Log 데이터를 수집하고 저장하며 분석하기 위한 Open Source 기반 Log Management Platform입니다.

구성:

E

Elasticsearch

L

Logstash

K

Kibana

현재는 Beats와 Elastic Agent까지 함께 활용하는 구조가 일반적입니다.

ELK Stack Architecture

기본 구조:

Application

↓

Log Collector

↓

Logstash

↓

Elasticsearch

↓

Kibana

↓

Dashboard

Log 수집부터 분석까지 자동화합니다.

Elasticsearch란?

Elasticsearch는 대량의 데이터를 빠르게 검색하고 분석할 수 있는 Distributed Search Engine입니다.

주요 기능:

  • Full Text Search
  • Log Storage
  • Distributed Index
  • Real Time Search

ELK Stack의 저장 및 검색 엔진 역할을 담당합니다.

Elasticsearch Index란?

Index는 Elasticsearch에서 데이터를 저장하는 논리적인 공간입니다.

구조:

Application Log

↓

Index

↓

Document

↓

Field

Log 데이터를 효율적으로 검색합니다.

Elasticsearch Cluster Architecture

대규모 환경:

Master Node

↓

Data Node

↓

Index Storage

↓

Search Request

여러 Node로 확장 가능합니다.

Logstash란?

Logstash는 다양한 Source에서 Log 데이터를 수집하고 변환하는 Data Processing Pipeline Tool입니다.

역할:

  • Log 수집
  • 데이터 변환
  • 필터 적용
  • Elasticsearch 전달

Log 처리 과정을 자동화합니다.

Logstash Pipeline 구조

기본 구조:

Input

↓

Filter

↓

Output

예:

File Log

↓

Parsing

↓

Elasticsearch

Log 데이터를 원하는 형태로 변환합니다.

Logstash Input

Input은 Log 데이터를 가져오는 Source입니다.

예:

  • File
  • Syslog
  • Kafka
  • Database
  • Beats

다양한 환경에서 데이터를 수집합니다.

Logstash Filter

Filter는 수집된 Log를 분석하고 변환합니다.

대표 Filter:

Filter역할
GrokLog Parsing
Date시간 변환
MutateField 변경
GeoIP위치 분석

비정형 Log를 분석 가능한 데이터로 변경합니다.

Kibana란?

Kibana는 Elasticsearch 데이터를 시각화하는 Dashboard Platform입니다.

활용:

  • Log 검색
  • Dashboard 생성
  • Error 분석
  • Monitoring 화면 구성

운영자가 Log를 쉽게 분석할 수 있습니다.

ELK Stack과 Kubernetes

Kubernetes Log Architecture:

Pod

↓

Container Log

↓

Filebeat

↓

Logstash

↓

Elasticsearch

↓

Kibana

Cluster 전체 Log를 중앙 관리합니다.

ELK Stack과 Docker

Container 환경:

Docker Container

↓

Container Log

↓

Logstash

↓

Elasticsearch

↓

Dashboard

Container Application Log 분석에 활용됩니다.

ELK Stack과 DevOps

DevOps 운영:

Deploy

↓

Application Running

↓

Log Collection

↓

Error Analysis

↓

Optimization

운영 장애 분석에 중요한 역할을 합니다.

ELK Stack과 Observability

Observability 구조:

요소도구
MetricsPrometheus
LogsELK Stack
VisualizationGrafana
TracingOpenTelemetry

전체 시스템 상태를 분석합니다.

ELK Stack Best Practice

권장:

  • Log Retention 정책 설정
  • Index 관리
  • Log Level 관리
  • Sensitive Data 제거
  • Cluster Monitoring 구성

효율적인 Log 운영 환경을 구축합니다.

ELK Stack 장애 분석

Elasticsearch 상태 확인:

curl localhost:9200/_cluster/health

Logstash 상태 확인:

systemctl status logstash

Kibana 상태 확인:

systemctl status kibana

확인:

  • Elasticsearch Cluster 상태
  • Log 수집 여부
  • Index 생성 상태
  • Pipeline 오류

ELK Stack 장점

장점설명
중앙 관리Log 통합
검색빠른 분석
확장성Distributed 구조
시각화Dashboard 제공

ELK Stack은 Enterprise 환경에서 가장 대표적인 Log Monitoring Architecture입니다.

자주 묻는 질문

ELK Stack과 Prometheus 차이는 무엇인가요?

Prometheus는 Metrics 중심이고 ELK Stack은 Log 분석 중심입니다.

Kubernetes에서 ELK Stack이 필요한가요?

대규모 Kubernetes 환경에서는 장애 분석과 Application 운영을 위해 많이 사용됩니다.

Grafana와 Kibana 차이는 무엇인가요?

Grafana는 Metrics 시각화 중심이고 Kibana는 Elasticsearch 기반 Log 분석과 검색에 특화되어 있습니다.

마무리

ELK Stack은 Elasticsearch, Logstash, Kibana를 기반으로 Application과 Infrastructure Log를 수집하고 분석하는 대표적인 Log Monitoring Architecture입니다.

구성 요소역할
ElasticsearchLog 저장·검색
Logstash수집·변환
Kibana시각화
Beats데이터 전달
IndexLog 관리

ELK Stack 구조를 이해하면 Kubernetes, Cloud, Enterprise 환경에서 안정적인 Log Monitoring과 Observability Architecture를 구축할 수 있습니다.

댓글 남기기