마지막 업데이트: 2026년 2월 20일
현대의 분산 시스템, 특히 Kubernetes 기반 마이크로서비스 아키텍처에서는 시스템의 내부 상태를 외부에서 관찰하고 이해하는 능력이 필수적입니다. 이를 **관측성(Observability)**이라고 합니다.
Observability vs Monitoring
관측성과 모니터링은 종종 혼용되지만, 근본적인 차이가 있습니다:
구분
Monitoring
Observability
관측성의 3가지 축 (Three Pillars)
관측성은 세 가지 핵심 데이터 유형으로 구성됩니다:
로그는 시스템에서 발생하는 개별 이벤트의 기록입니다.
특징:
사용 사례:
도구: Loki, Elasticsearch, CloudWatch Logs, Fluent Bit
2. Metrics (메트릭)
메트릭은 시간에 따른 수치 측정값입니다.
특징:
주요 메트릭 유형:
Counter: 누적 증가값 (예: 요청 수)
Gauge: 현재 상태값 (예: CPU 사용률)
Histogram: 분포 측정 (예: 응답 시간)
도구: Prometheus, VictoriaMetrics, CloudWatch Metrics, Datadog
트레이스는 분산 시스템에서 요청의 전체 경로를 추적합니다.
특징:
구성 요소:
SpanContext: 서비스 간 전파되는 컨텍스트
도구: Tempo, Jaeger, X-Ray, Zipkin, Datadog APM
세 가지 축은 독립적이지 않고 서로 연결되어 강력한 분석 능력을 제공합니다:
Trace-to-Log 상관분석
TraceID를 로그에 포함시켜 특정 요청과 관련된 모든 로그를 추적:
Metric-to-Trace 상관분석 (Exemplars)
메트릭에 TraceID를 연결하여 이상 징후 발생 시 해당 요청 추적:
OpenTelemetry와 표준화
OpenTelemetry(OTel)는 관측성 데이터 수집을 위한 업계 표준입니다:
OpenTelemetry의 장점:
EKS 환경에서의 관측성 전략
Amazon EKS에서 효과적인 관측성을 구현하기 위한 전략:
Prometheus, VictoriaMetrics
계층화된 스토리지: 오래된 데이터는 저렴한 스토리지로 이동
Loki, Prometheus, Grafana
Tempo, Exemplars, TraceID
Datadog Watchdog, Dynatrace Davis
이 관측성 섹션은 다음과 같이 구성되어 있습니다:
로그 수집, 저장, 분석을 위한 도구와 전략:
CloudWatch Logs: AWS 네이티브 로깅
시계열 메트릭 수집과 분석:
Prometheus: 업계 표준 메트릭 시스템
VictoriaMetrics: 고성능 Prometheus 대안
CloudWatch Metrics: AWS 네이티브 메트릭
분산 추적과 요청 흐름 분석:
Tempo: Grafana의 분산 추적 백엔드
통합 시각화와 대시보드:
관측성 구현을 시작하려면 다음 순서를 권장합니다:
메트릭 수집 설정: Prometheus 또는 VictoriaMetrics 배포
로그 수집 설정: Loki와 Fluent Bit 배포
시각화: Grafana에서 모든 데이터 소스 연동