OpenTelemetry, Kafka로 옵저버빌리티 구축

by DD
5개월 전
조회수 14

OpenTelemetry 표준을 도입하여 분산 시스템의 관측 가능성을 확보함

Kafka를 활용, 데이터 유실 방지 및 트래픽 급증에 유연하게 대응

Grafana LGTM 스택을 통해 Traces, Metrics, Logs를 통합 시각화

OpenTelemetry Collector의 핵심 기능

OpenTelemetry CollectorTelemetry 데이터 수집, 처리, 내보내기를 담당하는 핵심 컴포넌트이다. 구체적으로 Receivers를 통해 다양한 프로토콜로 데이터를 수신하고, Processors를 거쳐 데이터를 가공한다. 따라서 Exporters를 통해 최종 백엔드로 데이터를 전송하여 시스템 관측성을 확보한다.

Kafka를 활용한 데이터 파이프라인 설계

Kafka는 데이터 유실 방지확장성 확보를 위해 파이프라인 중간에 위치한다. 따라서 Gateway Collector는 Kafka에 데이터를 전송하고, 백엔드 시스템 장애 시에도 데이터 유실을 막는다. 트래픽 급증 시 Kafka가 완충 역할을 수행하여 시스템 안정성을 보장한다.

Grafana LGTM 스택을 이용한 시각화

Grafana LGTM 스택은 Traces, Metrics, Logs를 통합하여 시각화한다. 구체적으로 Tempo를 통해 Traces를, Mimir를 통해 Metrics를, Loki를 통해 Logs를 적재한다. 따라서 OpenTelemetry에서 수집된 데이터를 기반으로 시스템의 종합적인 상태를 파악할 수 있다.

OpenTelemetry와 Kafka를 활용한 안정적인 Observability 구축기