LGTM with O11y
OpenSource 모니터링 환경 구성
목차
OpenTelemetry란?
관찰가능성(Observability) 프레임워크
OpenTelemetry는 2019년에 CNCF(Cloud Native Computing Foundation)에서 개발한 오픈 소스 관찰 가능성(Observability) 프레임워크입니다. �OpenTelemetry는 Google의 OpenCensus와 OpenTracing 프로젝트를 통합하여 탄생했으며, 분산 시스템에서 트레이스, 메트릭, 로그 데이터를 수집하고 이를 표준화하여 다양한 백엔드로 전송할 수 있는 기능을 제공합니다.
OpenTelemetry는 표준화된 API와 SDK를 통해 분산 시스템에서 애플리케이션의 성능 데이터를 일관되게 수집하며, 다양한 언어와 클라우드 환경에서 쉽게 사용할 수 있습니다. OpenTelemetry는 현재 가장 널리 사용되는 관찰 가능성 프레임워크 중 하나로, 트레이싱, 메트릭, 로그 데이터를 하나의 통합된 시스템에서 처리할 수 있습니다.
장점
OpenTelemetry 아키텍처
OpenTelemetry (약자 OTel, O11y)는 Traces, Metrics, Logs 같은 �원격 분석 데이터를 계측, 생성, 수집, 내보내는 Observability framework
�하지만 OpenTelemetry는 Traces, Metrics, Logs 데이터를 저장하거나 쿼리할 수 있는 방법을 제공하지 않고, �상용(Datadog, New Relic, 기타 등등)서비스 또는 오픈 소스 백엔드(Jaeger, Prometheus, Grafana)로 �데이터를 전송하여 데이터를 저장
OpenTelemetry Operator란?
OpenTelemetry Operator는 �CR(Custom Resource을 이용해 아래의 리소스를 관리
LGTM이란?
Grafana Labs에서 개발된 Monitoring Stack
L : Loki (로그 수집 저장소)
G : Grafana (시각화)
T : Tempo (분산 추적 저장소 , APM)
M : Mimr (시계열 메트릭 저장소)
LGTM을 사용하는 이유
Loki
로그를 저장하는 백엔드
Grafana Loki는 2018년 Grafana Labs에서 개발한 오픈 소스 분산 로그 시스템입니다. �Prometheus와 유사한 방식으로 작동하며, 로그 데이터를 인덱싱하지 않고 메타데이터만 인덱싱하는 방식으로 로그 데이터를 저장합니다. Loki는 이러한 접근 방식 덕분에 로그 저장 비용을 크게 절감할 수 있습니다. 메트릭 기반의 로그 수집으로 대규모 시스템에서 효율적으로 로그를 처리할 수 있습니다.
Loki는 Cortex의 분산 시스템 설계를 기반으로 개발되었으며, Prometheus와 유사한 구성을 제공하여 Prometheus 사용자들이 쉽게 사용할 수 있습니다. 또한, Loki는 수평 확장 및 고가용성을 지원하며, 로그 데이터를 Grafana에서 쉽게 시각화할 수 있도록 통합되어 있습니다.
장점
Tempo
추적(Trace)를 저장하는 백엔드
Grafana Tempo는 2020년에 Grafana Labs에서 개발한 오픈 소스 분산 트레이싱 시스템입니다. �Tempo는 Jaeger, Zipkin 등의 기존 트레이싱 도구와 호환되며, �트레이스 데이터를 저비용으로 장기 저장할 수 있도록 최적화되어 있으며, �특히 로그와 메트릭 시스템과의 통합에 강점을 가지고 있습니다.
Tempo는 Cortex와 Loki에서 영감을 받아, 트레이스의 효율적 저장을 위해 �샤딩 및 복제를 활용하며, 대규모 시스템에서 확장성을 제공�또한, Grafana와의 통합을 통해 메트릭과 로그 데이터와 함께 트레이스 데이터를 분석
장점
Mimir
시계열(Time Series) 메트릭을 저장하는 백엔드
Grafana Mimir는 2022년 Grafana Labs에서 개발한 오픈 소스 소프트웨어 프로젝트로 고성능, 장기, 분산형 메트릭 저장 시스템이다.
Mimir는 Cortex의 기능과 GEM(Grafana Enterprise Metrics) 및 Grafana Cloud를 대규모로 실행하기 위해 개발한 기능을 모두 AGPLv3 라이선스에 따라 결합
장점
Mimir 아키텍처
Mimir, Loki, Tempo의 아키텍쳐 자체는 거의 동일
Mimir 아키텍처
Distributor
Mimir 아키텍처
Ingester
Mimir 아키텍처
Store-gateway
Mimir 아키텍처
Querier
Mimir 아키텍처
Query Frontend
Mimir 아키텍처
Compactor