데브옵스
표준을 통한 마이크로 서비스의 Observability 구축기
두줄요약
Kubernetes 기반 마이크로서비스의 가시성을 확보하기 위해 OpenTelemetry와 SigNoz를 활용한 Observability 구축 과정을 정리했습니다. Collector 파이프라인과 Auto-Instrumentation, 운영 효율 개선 포인트를 함께 소개했습니다.
문제 상황
- Kubernetes 환경에서 서비스 증가와 대규모 오픈에 따라 마이크로서비스 가시성 확보 필요성 대두
- 모니터링 툴 분산으로 인한 유지보수 부담, 문제 추적 복잡도 증가, 운영 학습 비용 상승
구조와 흐름
- OpenTelemetry로 Metric, Log, Trace를 표준화해 수집·전파·상관관계 분석 구조 구성
- Collector에서 Receiver, Processor, Exporter 파이프라인을 분리해 수신-처리-전송 흐름 정의
- Auto-Instrumentation과 Instrumentation CR로 k8s 배포 시 에이전트 주입
선택 이유
- 벤더 중립적 표준으로 Vendor Lock-In 완화
- 여러 백엔드와 연동 가능한 확장성
- SigNoz를 관찰 백엔드로 선택해 단일 도구로 MLT 통합 관리
성능/운영 포인트
- memory_limiter, filter, batch 등 Processor 순서에 따라 성능과 리소스 사용 영향
- 필요 데이터만 조기 필터링하고 배치 전송으로 네트워크 효율 개선
- console exporter는 트러블슈팅용으로 활용 후 운영 시 제외 검토
