Learning
토픽 68 / 107·서버리스와 관찰성

Observability (관찰 가능성)

Observability (관찰 가능성)

시스템의 외부 출력(메트릭, 로그, 트레이스)을 통해 내부 상태를 추론하고 이해할 수 있는 능력으로, 복잡한 분산 시스템에서 장애 원인 파악, 성능 분석, 사용자 경험 개선을 위한 필수 역량

목적: 시스템 상태 이해, 장애 신속 탐지/해결, 성능 최적화, 사용자 경험 개선

특징: 사후 대응적(Reactive) + 예측적(Proactive), 분산 시스템 필수, 컨텍스트 중심, 고차원 데이터

3 Pillars: Metrics(시계열 수치 데이터 CPU/메모리/요청 수/지연시간), Logs(이벤트 기록 텍스트/구조화된 로그), Traces(요청 흐름 추적 분산 트레이싱/서비스 간 호출 경로)

도구 스택: Metrics(Prometheus 수집/Grafana 시각화/Thanos 장기 저장), Logs(Fluentd/Fluent Bit 수집/Loki 저장/Elasticsearch), Traces(Jaeger/Zipkin 분산 트레이싱/Tempo), 통합(Datadog/Dynatrace/New Relic/Elastic APM - 3 Pillars 통합)

핵심 개념: Golden Signals(Latency/Traffic/Errors/Saturation - SRE 4대 지표), RED Method(Rate/Errors/Duration - 마이크로서비스), USE Method(Utilization/Saturation/Errors - 인프라), SLI/SLO/SLA(서비스 수준 지표/목표/협약)

OpenTelemetry: CNCF 프로젝트, Observability 표준, Traces/Metrics/Logs 통합 수집, 벤더 중립적, 자동 계측(Auto-instrumentation), 다양한 언어/백엔드 지원

분산 트레이싱: 요청이 여러 서비스를 거치는 전체 경로 추적, Trace(전체 요청 흐름), Span(개별 서비스/함수 호출), Context Propagation(Trace ID/Span ID 전파), 병목/장애 지점 식별

장점: 빠른 문제 해결(MTTR 감소), 성능 최적화, 사용자 경험 개선, 데이터 기반 의사결정

단점: 데이터 폭증(비용), 복잡도, 도구 통합 어려움, 전문성 필요

적용사례: 마이크로서비스 모니터링, SRE/DevOps, 성능 최적화, 장애 대응, 비즈니스 인사이트

비교: Observability(내부 상태 추론/컨텍스트/예측) vs Monitoring(알려진 메트릭/임계값/알림)

연관: Prometheus, Grafana, Jaeger, OpenTelemetry, SRE