OpenTelemetry has graduated… Now what?

CNCF Blog · 2026.07.27
OpenTelemetry has graduated… Now what?

OpenTelemetry CNCF Graduated 졸업, 그 의미와 실무적 영향

OpenTelemetry(OTel)가 CNCF(Cloud Native Computing Foundation)의 Graduated 프로젝트로 공식 승격됐다. Kubernetes, Prometheus와 같은 반열에 오른 것으로, CNCF Graduated 지위는 단순한 타이틀이 아니다. 프로젝트의 API 안정성, 거버넌스 성숙도, 커뮤니티 신뢰도가 외부 검증을 통과했음을 의미한다. 백엔드 개발자 입장에서 이는 "OTel을 프로덕션에 도입해도 안전하다"는 업계 공식 신호로 읽을 수 있다.

왜 OTel이 필요했나 — 표준화 이전의 혼돈

OTel 등장 이전, 텔레메트리 신호(traces, metrics, logs)는 각 벤더마다 포맷이 달랐다. 모니터링 도구를 교체하려면 기존 벤더의 계측 라이브러리를 코드에서 직접 걷어내고 새 라이브러리로 교체해야 했다. 벤더 락인(vendor lock-in) 이 심각한 문제였고, 세 가지 텔레메트리 신호가 서로 분리되어 있어 상관관계 분석도 어려웠다.

이를 해결하기 위해 CNCF의 OpenTracing과 Google의 OpenCensus가 2019년 5월 합쳐져 OpenTelemetry가 탄생했다. 두 프로젝트의 장점을 통합하여 단일 명세(specification), 표준 API, 언어별 SDK, 그리고 Collector를 제공하는 통합 표준이 만들어진 것이다. OpenTracing은 2022년 1월, OpenCensus는 2023년 7월에 각각 공식 아카이브됐다.

실무에서 OTel을 도입해야 하는 이유

Graduated 승격의 실질적인 의미는 안정성 보장이다. API 하위 호환성이 유지되므로, 한 번 계측 코드를 작성하면 모니터링 백엔드를 Jaeger에서 Tempo로, 혹은 상용 APM으로 교체해도 애플리케이션 코드를 수정할 필요가 없다.

Java 백엔드 기준으로, OTel Java SDK와 자동 계측 에이전트를 활용하면 Spring Boot 애플리케이션에 최소한의 코드 변경으로 트레이싱을 적용할 수 있다.

// 수동 스팬 생성 예시
Tracer tracer = GlobalOpenTelemetry.getTracer("my-service");
Span span = tracer.spanBuilder("processOrder").startSpan();
try (Scope scope = span.makeCurrent()) {
    // 비즈니스 로직
    span.setAttribute("order.id", orderId);
} finally {
    span.end();
}

OTel Collector를 중간에 두면 수집 파이프라인을 애플리케이션 코드와 완전히 분리할 수 있다. 벤더를 교체하거나 여러 백엔드로 동시에 데이터를 라우팅하는 작업이 Collector 설정 변경만으로 가능해진다.

# collector config 예시 (일부)
exporters:
  otlp/jaeger:
    endpoint: "jaeger:4317"
  otlp/datadog:
    endpoint: "datadog-agent:4317"
service:
  pipelines:
    traces:
      exporters: [otlp/jaeger, otlp/datadog]

OTel은 현재 CNCF 프로젝트 중 두 번째로 높은 기여 속도를 기록하고 있으며, 주요 관측성 벤더 전체가 공식 지원한다. 이는 장기적으로 생태계가 더욱 확장될 것임을 의미한다.

정리

  • OTel의 CNCF Graduated 승격은 API 안정성과 장기 지원을 공식 보증하는 신호로, 프로덕션 도입 결정의 근거로 삼을 수 있다.
  • 벤더 락인 문제를 해결하는 핵심은 OTel Collector를 중간 계층으로 두어 계측 코드와 백엔드를 분리하는 아키텍처다.
  • traces, metrics, logs를 단일 표준으로 수집·상관관계 분석할 수 있어, 분산 시스템의 관측성(observability) 수준을 실질적으로 끌어올릴 수 있다.
Source
CNCF Blog
원문 보기 →
← 목록으로 돌아가기