1.1. OPENMARU Observability 제품 소개
Kubernetes 환경을 위한 제로 계측 통합 관측성(Observability) 플랫폼

제품 개요
OPENMARU Observability는 Kubernetes 및 클라우드 네이티브 애플리케이션을 위한 엔드투엔드 관측성 솔루션입니다. eBPF 기술을 기반으로 애플리케이션 코드를 수정하지 않고도 메트릭(Metric), 로그(Log), 추적(Trace), 프로파일링(Profiling)을 자동으로 수집하여, 운영팀이 시스템 전체를 한눈에 파악할 수 있도록 합니다.
기존 모니터링 도구와 달리 별도의 SDK 삽입이나 코드 계측(Instrumentation) 없이 설치만으로 즉시 동작하여, 레거시 서비스를 포함한 인프라 전체에 대한 100% 가시성을 제공합니다.
SRE 실천을 위한 관측성
SRE(Site Reliability Engineering, 사이트 신뢰성 엔지니어링) 는 소프트웨어 엔지니어링 원칙을 시스템 운영에 적용해 서비스의 신뢰성(가용성·성능)을 감이 아니라 지표·목표·자동화로 관리하는 접근입니다. OPENMARU Observability는 단순 모니터링을 넘어 이 SRE 방법론을 데이터로 뒷받침합니다. 코드 계측 없이 자동 수집한 데이터 위에서 SLO와 오류 예산(Error Budget), 골든 시그널(지연·트래픽·오류·포화), 근본원인분석(RCA), 용량 예측을 제공해, 운영팀이 신뢰성을 숫자로 관리하고 반복 작업(Toil)을 줄이도록 돕습니다.
SRE의 정의·이점·집중 포인트와 각 SRE 활동이 제품의 어떤 기능에 매핑되는지는 SRE 보고서 장에서 자세히 다룹니다.
핵심 특장점
1. 제로 계측 관측성 — 설치만 하면 바로 시작
기존 APM(Application Performance Monitoring) 도구나 OpenTelemetry를 사용하려면 언어별로 다양한 계측 작업이 필요합니다.
- Java: JVM 실행 시
-javaagent옵션을 추가해야 합니다 (예:java -javaagent:/path/to/agent.jar -jar app.jar). 모든 주요 APM 도구와 OpenTelemetry Java Agent 모두 이 방식을 요구합니다. - Python: APM 에이전트 패키지를
pip install로 설치하고, 애플리케이션 시작 명령에 래퍼를 추가하거나 (opentelemetry-instrument python app.py), 프레임워크 통합을 위해 코드를 수정해야 합니다. - Node.js: 계측 패키지를 설치한 후, 애플리케이션이 다른 의존성을 로드하기 전에 에이전트를 먼저 시작해야 합니다 (
--import플래그 또는require삽입). 번들러(Webpack 등)를 사용하는 환경에서는 에이전트가 정상 동작하지 않는 호환성 문제가 발생하기도 합니다. - Go: 자동 계측이 제한적이어서, 소스 코드에 OpenTelemetry SDK를 직접 임포트하고 추적/메트릭 생성 코드를 작성해야 합니다.
- .NET: 에이전트 NuGet 패키지를 설치하고 환경 변수를 설정하거나, 소스 코드에 SDK를 추가해야 합니다.
OPENMARU Observability는 이러한 언어별 계측 작업이 전 혀 필요 없습니다. 리눅스 커널의 eBPF 기술을 활용하여 커널 수준에서 측정 데이터를 수집합니다.
- 코드 수정 불필요: 애플리케이션 소스 코드를 한 줄도 바꾸지 않고, JVM 옵션 추가나 에이전트 패키지 설치 없이 메트릭, 로그, 추적, 프로파일링을 수집합니다.
- 언어/프레임워크 무관: Java, Go, Python, Node.js, .NET 등 어떤 기술 스택이든 동일한 방식으로 자동 모니터링됩니다. 언어별 에이전트를 따로 설치하거나 관리할 필요가 없습니다.
- 레거시 서비스 포함: OpenTelemetry 계측이 불가능한 서드파티 서비스, 레거시 시스템도 eBPF를 통해 추적합니다.
- 프로토콜 자동 인식: HTTP, PostgreSQL, MySQL, Redis, MongoDB, Memcached, Kafka, Cassandra, RabbitMQ, ClickHouse, ZooKeeper, DNS 등 주요 프로토콜을 코드 변경 없이 자동으로 인식하고 추적합니다.
도입 효과: 서비스별 에이전트 설치, JVM 옵션 수정, SDK 코드 삽입 등의 계측 작업이 제거되어 개발 리소스를 절감하고, 도입 즉시 전체 시스템에 대한 가시성을 확보합니다.
2. 100% 시스템 커버리지 — 사각지대 없는 관측
전통적인 모니터링은 계측된 서비스만 관찰할 수 있어 사각지대가 발생합니다. OPENMARU Observability는 커널 수준에서 모든 컨테이너의 네트워크 통신을 추적하므로, 서비스 메시 없이도 전체 서비스 맵을 자동으로 생성합니다.
- 자동 서비스 맵: 서비스 간 의존성과 트래픽 흐름을 실시간으로 시각화합니다.
- TCP 연결 추적: 모든 서비스 간 통신을 커널 수준에서 자동 감지합니다.
- 노드 에이전트 기반 수집: DaemonSet으로 배포되어 클러스터 내 모든 노드를 자동으로 커버합니다.
도입 효과: "모니터링 대상에서 빠진 서비스" 없이 인프라 전체의 상태를 정확히 파악할 수 있습니다.
3. 실행 가능한 인사이트 — 자동 문제 식별
OPENMARU Observability는 단순히 데이터를 시각화하는 것을 넘어, 80개 이상의 사전 정의된 검사(Inspection)를 통해 문제를 자동으로 식별합니다. 운영자가 직접 대시보드를 분석할 필요 없이 시스템이 먼저 이상을 감지하고 알려줍니다.
- 자동 검사(Inspection): CPU, 메모리, 네트워크, 스토리지, 데이터베이스 등 분야별 사전 정의된 검사를 자동으로 실행합니다.
- SLO 기반 알림: SLO(Service Level Objective, 서비스 수준 목표)에 따라 가용성과 응답 시간을 자동 모니터링하고, 오류 예산(Error Budget) 소진 속도에 따라 심각(Critical)/경고(Warning) 알림을 발생시킵니다.
- 인시던트 근본원인분석(RCA): 인시던트(Incident) 발생 시 원인 서비스, 영향 전파 경로, 인과 타임라인(Causal Timeline)을 자동 분석하여 제공합니다.
- 배포 회귀 감지: 새 버전 배포 후 성능 저하나 에러 증가를 자동으로 비교 감지합니다.
도입 효과: 장애 인지부터 원인 파악까지의 MTTR(Mean Time to Resolution)을 단축합니다.
4. 통합 관측성 — 단일 플랫폼에서 모든 데이터 확인
메트릭, 로그, 추적, 프로파일링의 4가지 측정 데이터를 하나의 플랫폼에서 통합하여 제공합니다. 도구 간 전환 없이 문제를 추적할 수 있습니다.
| 데이터 유형 | 제공 기능 |
|---|---|
| 메트릭(Metrics) | CPU, 메모리, 네트워크, 디스크, GPU 등 실시간 시계열 데이터 |
| 로그(Logs) | 자동 패턴 추출, 심각도 분류 |
| 추적(Traces) | 분산추적 히트맵, 오류 분석, 응답 시간 플레임 그래프(Flame Graph) 비교 |
| 프로파일링(Profiling) | 지속적 CPU 프로파일링, 코드 라인 수준 성능 분석 |
- 로그 패턴(Log Pattern) 자동 추출: 로그 메시지를 자동으로 클러스터링하여 반복 패턴을 식별합니다.
- 플레임 그래프 비교: 특정 시간대의 CPU 프로파일을 이전 시간대와 비교하여 성능 저하 원인을 코드 수준에서 파악합니다.
커스텀 대시보드로 이 데이터를 원하는 대로 조합할 수 있습니다. 지표(PromQL)뿐 아니라 로그·감사 로그·보안 이벤트·APM 스팬·사용자수를 같은 화면에 놓고, 시계열 차트·단일 값·표·막대 목록·히트맵·실시간 위젯으로 그립니다. 미리 만들어진 템플릿에서 시작해 복제한 뒤 고쳐 쓸 수 있고, JSON으로 내보내 다른 환경으로 옮길 수 있습니다. 자세한 내용은 3.2 커스텀 대시보드를 참고하세요.
도입 효과: 별도의 로그 분석 도구, APM 도구, 프로파일러를 각각 운영할 필요 없이 단일 플랫폼으로 통합합니다.
5. 극히 낮은 성능 영향
eBPF 기반 에이전트는 커널이 보장하는 안전한 실행 모델 위에서 동작하여, 프로덕션 환경에서도 안심하고 사용할 수 있습니다.
- 부하 상황에서도 낮은 영향: 높은 요청 부하에서도 에이전트 활성화에 따른 애플리케이션 응답 시간 변화가 미미합니다.
- 낮은 에이전트 리소스 사용량: eBPF가 커널 내에서 데이터를 처리하므로 애플리케이션 처리 경로에 부하를 주지 않으며, 에이전트 자체의 CPU·메모리 사용량도 낮게 유지됩니다. (기본 리소스 설정은 설치 장의 리소스 요구사항 표를 참고하세요.)
- 커널 안전 보장(읽기 전용 관측): eBPF 프로그램은 리눅스 커널 검증기(Verifier)를 통과해야만 로드·실행됩니다(무한 루프·잘못된 메모리 접근 등은 로드 자체가 거부됨). 또한 에이전트는 커널·네트워크·시스템 콜 이벤트를 읽기만 하는 관측(read-only) 모드로 동작하며, 커널 코드나 애플리케이션 메모리를 수정하거나 코드를 주입하지 않으므로 커널·애플리케이션 동작에 영향을 주지 않습니다.
- 데이터 과부하 시에도 안전: CPU 리소스가 부족할 경우 일부 통계가 누락될 수 있으나, 애플리케이션 성능 자체에는 영향을 주지 않습니다.
도입 효과: 프로덕션 워크로드에 성능 저하 없이 관측성을 추가할 수 있습니다.
6. Kubernetes 네이티브 설계
Kubernetes 환경에 최적화된 아키텍처로, Helm 차트를 통해 간편하게 배포하고 운영할 수 있습니다.
- Helm 차트 원클릭 배포: 단일 Helm 명령으로 서버, UI, 에이전트, 스토리지 전체 스택을 설치합니다.
- 자동 리소스 검색: Kubernetes API를 통해 Pod, Service, Deployment, StatefulSet 등을 자동으로 검색합니다.
- 다양한 환경 지원: 자체 관리 클러스터, EKS, GKE, AKS, OKE, OpenShift, OPENMARU COP, K3s, MicroK8s를 지원합니다.
도입 효과: Kubernetes 운영 환경에 맞춤 설계되어 별도의 인프라 구성 없이 빠르게 도입할 수 있습니다.
CogentAI — AI 기반 지능형 분석
OPENMARU Observability는 CogentAI를 통해 AI 기반의 실시간 분석 기능을 제공합니다. 차트, 로그, 감사 로그 화면에서 AI 아이콘 하나로 즉시 분석을 요청할 수 있으며, 자연어로 후속 질문을 이어가며 심층 분석이 가능합니다.
원클릭 AI 분석
모든 분석은 해당 화면의 AI 분석 버튼을 클릭하는 것만으로 시작됩니다. 별도의 설정이나 쿼리 작성 없이 현재 보고 있는 데이터를 AI가 즉시 분석합니다.
차트 분석
시계열 차트에서 AI 분석을 요청하면 CogentAI가 메트릭 데이터의 이상 패턴을 식별하고, 경고 상황에 대한 즉시 조치 사항을 안내합니다. 관련 kubectl 명령어나 구체적인 조치 방법을 함께 제시하며, 반복 발생하는 이벤트에 대해서는 근본 원인 분석에 집중합니다.
로그 분석
로그 메시지에 대해 AI 분석을 요청하면 CogentAI가 로그의 의미를 해석합니다. 타임스탬프, 로그 레벨, 클래스, 메시지 내용 등 각 필드를 설명하고, WARN/ERROR/CRITICAL 레벨의 로그에 대해서는 오류 원인을 파악하여 해결 방안을 제시합니다. INFO/DEBUG 레벨의 정상 동작 로그는 불필요한 조치 권고 없이 의미만 설명합니다.
감사 로그 분석
감사 로그에 대한 AI 분석은 보안 관점에서 수행됩니다.
- Kubernetes 감사 로그: Kubernetes RBAC 정책과 보안 모범 사례를 기반으로 분석합니다. 비정상적인 접근 패턴이나 권한 상승 시도를 식별하고, 보안 강화를 위한 권장사항을 제시합니다.
- OS 감사 로그: 시스템 보안 모범 사례를 기반으로 비정상적인 프로세스 실행이나 파일 접근을 식별하고, 보안 강화를 위한 권장사항을 제시합니다.
Kubernetes 공식 문서 기반 인사이트
CogentAI는 Kubernetes 공식 문서와 모범 사례를 기반으로 분석 결과를 제공합니다. 순수하게 Kubernetes 자체 기능과 kubectl 명령어를 활용한 해결 방안을 제시하여, 실제 운영 환경에서 즉시 적용할 수 있는 실용적인 인사이트를 제공합니다.
고급 분석 기능
OPENMARU Observability는 기본 모니터링을 넘어, 고급 분석 기능을 제공하여 운영팀이 문제를 사전에 예측하고, 발생한 장애의 근본 원인을 자동으로 파악할 수 있도록 합니다.
예측(Forecast) — 시계열 예측
차트에서 원클릭으로 미래 추세를 예측하여, 리소스 고갈이나 성능 저하를 사전에 대비할 수 있습니다.
- 원클릭 예측: 모든 시계열 차트에서 예측 버튼을 클릭하면 과거 데이터를 기반으로 미래 추세를 즉시 예측합니다.
- 5가지 알고리즘 제공: Auto(자동 선택), Holt-Winters, Linear, ARIMA, SARIMA 알고리즘을 지원합니다. Auto 모드에서는 데이터 특성에 따라 최적의 알고리즘을 자동으로 선택합니다.
- 신뢰 구간 시각화: 예측 결과를 대시선과 신뢰 구간 밴드로 기존 차트 위에 오버레이합니다. 예측의 불확실성 범위를 시각적으로 파악할 수 있습니다.
- 유연한 예측 범위: 10분, 30분, 1시간, 2시간, 3시간, 6시간, 12시간 등 다양한 예측 범위(Horizon)를 선택할 수 있습니다.
- 자동 폴백: 예측 정확도가 낮으면 자동으로 다른 알고리즘으로 전환하여 안정적인 결과를 제공합니다 (SARIMA → ARIMA → Holt-Winters → Linear).
활용 예시: CPU 사용량 차트에서 예측을 실행하여 몇 시간 뒤(최대 12시간) 리소스 한계에 도달할지 사전에 확인하고, 스케일링 계획을 수립할 수 있습니다.
이상치 탐지(Anomaly Detection)
시계열 데이터에서 정상 범위를 벗어나는 이상치를 자동으로 탐지하여, 수동 모니터링으로는 놓칠 수 있는 미세한 이상 징후를 식별합니다.
- 온디맨드 이상치 탐지: 차트에서 이상치 탐지 버튼을 클릭하면 해당 메트릭의 이상치를 즉시 분석합니다.
- 4가지 탐지 알고리즘: Z-Score(통계적 편차), IQR(사분위 범위), Isolation Forest(ML 기반), RCF(Random Cut Forest)를 지원합니다.
- 기대값 밴드 시각화: 정상 범위를 밴드로 표시하고, 밴드를 벗어나는 이상 구간을 하이라이트하여 한눈에 식별할 수 있습니다.
- 감도 조절: 탐지 감도를 조절하여 환경에 맞게 이상 기준을 설정할 수 있습니다.
- 방향 설정: 상향 이상(급증), 하향 이상(급감), 양방향 이상을 각각 탐지할 수 있습니다.
활용 예시: 네트워크 응답 시간 차트에서 이상치 탐지를 실행하여, 평소와 다른 응답 시간 패턴이 발생한 시간대를 자 동으로 식별하고 원인 조사를 시작할 수 있습니다.
배포 타임라인 (Deployment Timeline)
배포 이벤트와 인시던트를 시간 축 위에 통합 시각화하여, 배포와 장애 간의 상관관계를 직관적으로 파악할 수 있습니다.
- 통합 이벤트 타임라인: 배포(순간 이벤트)와 인시던트(기간 이벤트)를 하나의 시간 축 위에 2-Lane Swimlane 형태로 표시합니다. 배포는 포인트 마커로, 인시던트는 시작부터 종료까지의 기간 바로 시각화됩니다.
- 시간 상관관계 분석: "이 배포 직후에 인시던트가 발생했는가?"를 한눈에 확인할 수 있습니다. 배포와 인시던트의 시간적 근접성을 시각적으로 비교합니다.
- 이벤트 밀도 관리: 밀집된 이벤트를 자동으로 클러스터링하여 카운트 배지로 표시합니다. 줌 레벨에 따라 클러스터가 자동으로 재계산됩니다.
- 브러시 선택 줌: 타임라인에서 드래그하여 특정 시간 구간을 확대하고, 세부 이벤트를 탐색할 수 있습니다.
- 원클릭 상세 이동: 타임라인의 이벤트를 클릭하면 해당 배포의 애플리케이션 상세 뷰 또는 인시던트 상세 뷰로 바로 이동합니다.
활용 예시: 새벽에 발생한 인시던트를 조사할 때, 타임라인에서 인시던트 직전에 수행된 배포를 즉시 식별하고 해당 배포의 변경 내역을 확인할 수 있습니다.
사용자수 추정 (User Estimation)
에이전트가 수집한 HTTP 트래픽만으로 실시간 활성 사용자 수를 추정합니다. 애플리케이션에 추적 코드를 심지 않아도 되고, 브라우저 쿠키나 외부 분석 도구가 필요 없습니다.
- 두 가지 추정 방식: 세션 쿠키가 있으면 세션 기준으로, 없으면 IP + User-Agent 조합으로 셉니다. 자동으로 고르거나 직접 지정할 수 있습니다
- DAU / WAU / MAU: 일·주·월 단위 활성 사용자 수를 함께 제공합니다
- 지역 분포: 접속 IP를 기준으로 국가·지역별 분포를 지도로 보여 줍니다
- 사용자 활성도 보고서: 기간별 활성 사용자 추이를 보고서로 내려받을 수 있습니다
활용 예시: 배포 직후 활성 사용자 수가 급감하면 기능 회귀나 로그인 장애를 의심할 수 있습니다. 서버 지표는 정상인데 사용자가 줄어드는 상황을 잡아냅니다. 자세한 내용은 7.1 사용자수 추정을 참고하세요.
RCA(Root Cause Analysis, 근본원인분석)
인시던트 발생 시, 종속 성 그래프를 자동으로 순회하여 근본 원인을 추적하고, 영향 전파 경로를 시각화합니다. 수동 분석 없이 "왜 이 문제가 발생했는가"에 대한 답을 제공합니다.
- 2단계 자동 분석: 먼저 구조적 분석으로 종속성 그래프를 순회하며 측정 데이터를 비교 분석하고, 이후 분석 결과를 요약하여 수정 방안을 제안합니다. 구조적 분석 단계에서는 결정론적 방법을 사용하므로 재현 가능하고 설명 가능한 결과를 제공합니다.
- SLI 히트맵: 인시던트 기간의 응답 시간과 오류율을 히트맵(Heatmap)으로 시각화합니다. 차트 영역을 선택하여 특정 시간 윈도우로 드릴다운할 수 있습니다.
- 영향 전파 맵(Propagation Map): 근본 원인 서비스에서 시작하여 영향이 전파된 경로를 멀티 레벨 서비스 그래프로 시각화합니다. 각 서비스의 상태(정상/경고/위험)를 색상으로 구분합니다.
- 가설 트리(Hypothesis Tree): 가능한 원인을 계층적 트리 구조로 제시합니다. 각 가설에는 Sparkline 시각화, 로그 패턴, 관련 메트릭이 포함되어 근거를 확인할 수 있습니다.
- 인과 타임라인: 원인 이벤트에서 결과까지의 시간 순서를 타임라인으로 표시하여 인과관계를 추적합니다.
- 검사 기반 분석: CPU, 메모리, 네트워크, 스토리지, 데이터베이스 등 분야별 사전 정의된 검사를 통해 문제를 자동으로 식별합니다.
활용 예시: 결제 서비스의 SLO 위반 인시던트가 발생했을 때, RCA 탭에서 근본 원인이 하위 데이터베이스 서비스의 잠금 대기였음을 자동 식별하고, 영향이 결제 → 주문 → 프론트엔드로 전파된 경로 를 확인할 수 있습니다.
기존 모니터링 도구와의 비교
| 비교 항목 | 기존 APM/모니터링 | OPENMARU Observability |
|---|---|---|
| 계측 방식 | 언어별 에이전트 설치, JVM 옵션 추가, SDK 코드 삽입 필요 | eBPF 기반 제로 계측 |
| 커버리지 | 계측된 서비스만 관찰 가능 | 모든 서비스 자동 관찰 (100%) |
| 서비스 맵 | 서비스 메시 또는 수동 구성 필요 | 자동 생성 (TCP 연결 추적) |
| 도입 시간 | 수주~수개월 (서비스별 계측) | 수시간 (Helm 설치 즉시 동작) |
| 레거시 서비스 | 계측 불가 시 사각지대 발생 | eBPF로 레거시 포함 추적 |
| 성능 영향 | SDK 오버헤드 존재 | 애플리케이션 경로 밖(커널) 처리로 영향 미미 |
| 문제 식별 | 수동 대시보드 분석 | 80+ 자동 검사로 자동 식별 |
| 통합 데이터 | 메트릭/로그/추적 도구 별도 | 단일 플랫폼 통합 |
| AI 기반 분석 | 별도 도구 연동 또는 미지원 | CogentAI 원클릭 AI 분석 내장 |
| 시계열 예측 | 별도 ML 도구 연동 필요 | 차트 내 원클릭 예측 (5가지 알고리즘) |
| 이상치 탐지 | 임계값 수동 설정 | 온디맨드 이상치 탐지 (4가지 알고리즘) |
| 근본원인분석 | 수동 로그/메트릭 분석 | 자동 RCA (종속성 그래프 순회 + 가설 트리) |
| 배포-장애 상관관계 | 별도 도구에서 수동 비교 | 통합 타임라인으로 시각적 상관관계 분석 |
도입 효과
운영 효율성 향상
- MTTR 단축: 인시던트 근본원인분석(RCA) 자동화로 장애 원인 파악 시간을 단축합니다. 가설 트리와 영향 전파 맵을 통해 복잡한 마이크로서비스 장애도 체계적으로 분석합니다.
- AI 기반 즉시 분석: CogentAI를 통해 차트, 로그, 감사 로그에서 원클릭으로 AI 분석을 수행하여, 운영자의 분석 부담을 줄이고 대응 속도를 높입니다.
- 사전 장애 예방: SLO 기반 오류 예산 모니터링과 예측 기능을 결합하여, 리소스 고갈이나 성능 저하를 사전에 감지하고 대비합니다.
- 배포 안전성 확보: 배포 타임라인에서 배포-인시던트 간 시간 상관관계를 즉시 파악하고, 배포 전후 성능 회귀를 자동 비교합니다.
- 이상 징후 조기 식별: 이상치 탐지로 임계값에 도달하기 전 미세한 이상 패턴을 식별하여 선제적 으로 대응합니다.
비용 절감
- 도구 통합: 메트릭, 로그, 추적, 프로파일링을 하나의 플랫폼으로 통합하여 여러 도구의 라이선스 비용을 절감합니다.
- 계측 개발 비용 제거: 서비스별 SDK 삽입 및 유지보수에 투입되는 개발 리소스를 절감합니다.
- 로그 스토리지 비용 절감: 로그 패턴 자동 추출로 반복되는 유사 로그를 템플릿 단위로 클러스터링하고, ClickHouse의 컬럼 기반 고압축(데이터 특성에 따라 수 배~수십 배)으로 스토리지 사용량을 줄입니다.
- 리소스 최적화: 클라우드 비용 분석으로 유휴 리소스와 과잉 프로비저닝을 식별합니다.
개발 생산성 향상
- 코드 수준 성능 분석: 지속적 프로파일링으로 특정 코드 라인까지 성능 병목을 추적합니다.
- 분산추적 자동 분석: 수천 개의 추적을 자동 분석하여 오류 원인과 지연 구간을 요약 제공합니다.
- 개발자 온보딩 가속화: 서비스 맵과 의존성 시각화를 통해 새로운 팀원이 시스템 구조를 빠르게 이해합니다.
활용 사례
사례 1: 마이크로서비스 장애 추적
상황: 수십 개의 마이크로서비스로 구성된 시스템에서 간헐적인 응답 지연이 발생하지만, 어떤 서비스가 원인인지 파악하기 어렵습니다.
OPENMARU Observability 활용:
- 토폴로지 맵에서 서비스 간 의존성과 트래픽 상태를 한눈에 확인합니다.
- 분산추적 히트맵에서 지연이 발생하는 시간대와 요청을 시각적으로 식별합니다.
- 해당 구간의 추적을 선택하면 시스템이 자동으로 모든 추적을 분석하여 지연 플레임 그래프를 생성하고, 어떤 서비스의 어떤 호출이 병목인지 표시합니다.
- 인시던트 RCA를 통해 근본 원인 서비스와 영향 전파 경로를 자동으로 파악합니다.
효과: 기존에 수시간이 걸리던 장애 원인 분석을 수분 내에 완료합니다.
사례 2: 새 버전 배포 후 성능 회귀 감지
상황: 애플리케이션의 새 버전을 배포한 후, 일부 API의 응답 시간이 느려졌다는 보고가 들어옵니다.
OPENMARU Observability 활용:
- 배포 이력에서 해당 서비스의 배포 시점을 확인합니다.
- 타임라인 맵에서 배포 이벤트와 인시던트의 시간적 상관관계를 시각화합니다.
- 애플리케이션 상세 메트릭에서 배포 전후 CPU, 메모리, 응답 시간 변화를 차트 오버레이로 비교합니다.
- 프로파일링 비교 모드에서 이전 버전과 새 버전의 CPU 플레임 그래프를 비교하여, 성능이 저하된 정확한 코드 함수를 빨간색으로 표시합니다.
효과: 배포 회귀를 즉시 감지하고, 코드 수준에서 원인을 파악하여 빠르게 롤백 또는 수정합니다.
사례 3: 데이터베이스 성능 병목 진단
상황: 서비스의 응답 시간이 전반적으로 느려졌으며, 데이터베이스가 원인으로 의심됩니다.
OPENMARU Observability 활용:
- 서비스 맵에서 해당 서비스가 의존하는 데이터베이스 연결을 확인합니다.
- eBPF 기반 추적에서 코드 변경 없이 자동 캡처된 데이터베이스 쿼리 스팬(Span)을 확인합니다.
- 데이터베이스 에이전트 메트릭에서 느린 쿼리, 잠금 대기, 연결 풀 상태를 분석합니다.
- 로그 패턴에서 데이터베이스 관련 오류 패턴의 발생 추이를 파악합니다.
효과: 어떤 쿼리가 가장 많은 리소스를 소비하는지 정확히 파악하고, 쿼리 최적화 대상을 식별합니다.
사례 4: Kubernetes 클러스터 리소스 최적화
상황: 클라우드 비용이 증가하고 있지만, 어떤 서비스가 리소스를 과도하게 사용하는지 파악하기 어렵습니다.
OPENMARU Observability 활용:
- 대시보드에서 클러스터 전체 CPU/메모리 할당률과 실제 사용률 차이를 확인합니다.
- 네임스페이스별 리소스 트리맵에서 리소스 배분 현황을 시각적으로 파악합니다.
- 노드 상세에서 유휴 리소스가 많은 노드를 식별합니다.
- 애플리케이션별 메트릭에서 요청(Request) 대비 실제 사용량이 낮은 서비스를 찾아 리소스를 재조정합니다.
효과: 과잉 프로비저닝된 리소스를 식별하여 클라우드 비용을 절감합니다.