Observability
Observability(관측 가능성)는 시스템의 내부 상태를 외부에서 관측 가능한 데이터(로그, 메트릭, 트레이스) 를 통해 파악할 수 있는 능력을 의미한다.
단순한 모니터링을 넘어 왜 시스템이 특정 동작을 하는지, 어디서 문제가 발생했는지를 파악할 수 있도록 돕는 개념이다.
클라우드 네이티브, 분산 시스템, 마이크로서비스 환경에서 필수적인 운영 철학으로 자리 잡고 있다.
주요 특징
- 3대 신호(Three Pillars): 로그(Log), 메트릭(Metric), 트레이스(Trace) 데이터를 통합적으로 분석.
- 실시간 가시성: 시스템 상태, 성능, 이벤트를 실시간으로 파악 가능.
- 문제 원인 파악: 단순 알람에서 끝나는 것이 아니라, 근본 원인(RCA) 분석에 도움.
- 플랫폼/도구 독립적 개념: 특정 솔루션이 아닌 운영 방식과 철학 자체를 의미.
- 확장성 중심 설계: 대규모 분산 환경에서도 관측 데이터 수집·처리 가능.
- 자동화 연계: AIOps, 경보 시스템, 자동 복구 워크플로우와 통합 가능.
장점
- 근본 원인 분석(RCA) 용이: 장애 원인을 빠르게 파악하고 대응 시간 단축.
- 운영 효율성 개선: 문제 해결에 필요한 인력·시간 감소.
- 서비스 품질 보장: SLO/SLA 충족 여부를 지속적으로 추적 가능.
- 비즈니스 연계성: 기술 지표를 비즈니스 KPI와 연결해 의사결정 지원.
- 개발·운영 협업 촉진: DevOps 문화에서 필수적인 통합 가시성 제공.
관련 용어
- Monitoring(모니터링): 사전에 정의한 지표를 감시하고 이상을 탐지하는 행위.
- Telemetry(텔레메트리): 시스템에서 데이터를 수집·전송하는 과정.
- Distributed Tracing(분산 추적): 여러 서비스에 걸친 요청 경로를 추적하는 기법.
- SLO/SLA: 서비스 수준 목표/계약, 관측 데이터를 통해 충족 여부 확인.
- AIOps: 인공지능을 활용한 운영 자동화 및 문제 예측.
주요 솔루션 및 사용 사례
- 주요 솔루션
- OpenTelemetry: 로그, 메트릭, 트레이스를 표준 방식으로 수집하는 오픈소스 프로젝트.
- Prometheus & Grafana: 메트릭 수집 및 시각화 대표 솔루션.
- Jaeger / Zipkin: 분산 트레이싱 도구.
- ELK / OpenSearch Stack: 로그 수집, 검색, 시각화 플랫폼.
- Datadog, New Relic, Dynatrace: SaaS 기반 올인원 Observability 플랫폼.
- 사용 사례
- 장애 대응: 서비스 다운타임 원인 분석 및 신속한 복구.
- 성능 최적화: 병목 구간, 리소스 과다 사용 서비스 식별.
- 릴리스 검증: 배포 이후 성능/안정성 문제 조기 감지.
- 보안 이벤트 탐지: 이상 트래픽, 비정상 로그 이벤트 식별.
- 비즈니스 인사이트 확보: 사용자 행동, 전환율, 서비스 품질 데이터 분석.