title: "OpenTelemetry Collector로 Prometheus (scraper) 교체하기"
description: "OTel(OpenTelemetry) Collector로 Prometheus (scraper)를 교체하는 방법에 대한 설명이다. [OpenTelemetry의 사용자 관점 Overview](<https://www.notion.so/OpenTelemetry-Overview-6f9a3981f293459c9858e84627843575?pvs=21>) 및 [OpenTelemetry 설치 첫 단계: Operator 설치](<https://www.notion.so/OpenTelemetry-Operator-aec62b1424d24a568b254e94baf36559?pvs=21>) 의 연장선 상에 위치한 OpenTelemetry Collector의 상세 검토 중 하나이다."
cleanUrl: /sw-engineer/prometheus-opentelemetry-collector
ogImage: "<https://anyflower.notion.site/image/https%3A%2F%2Fprod-files-secure.s3.us-west-2.amazonaws.com%2F7570d2fc-66b1-4e23-bb3c-ff7b56842b0d%2F1563857c-c10f-4074-aafb-1018c95267b6%2FUntitled.png?table=block&id=e542d08d-4990-4c23-ae56-be946c5084eb&spaceId=7570d2fc-66b1-4e23-bb3c-ff7b56842b0d&width=1420&userId=&cache=v2>"
floatFirstTOC: right
OTel(OpenTelemetry) Collector로 Prometheus (scraper - agent mode)를 교체하는 방법에 대한 설명이다. OpenTelemetry의 사용자 관점 Overview 및 OpenTelemetry 설치 준비: Operator 설치 의 연장선 상에 위치한 OpenTelemetry Collector의 상세 검토 중 하나이다.
OpenTelemetry Collector 및 Target Allocator의 Kubernetes Metric scrapping 구조
위 그림은 OpenTelemetry Collector로 Prometheus (scraper)를 교체했을 때의 아키텍처이다.
좌측 노란 박스는 scraping 대상 Kubernetes resources를, 푸른 박스는 OpenTelemetry components로 OpenTelemetry Collector와 Target Allocator를, 붉은 박스는 metric 저장소로서의 Prometheus 및 scraper(오직 OpenTelemetry Collector에서만 scrap)로서의 Prometheus를 나타낸다. 실선은 데이터의 흐름을, 점선은 관계를 의미한다.
각 components에 대한 설명은 아래부터 이어진다.
Architecture 에서 식별된 각 components에 대한 설명이다.
statefulset
배포 방식이 요구된다. 이로 인해 발생 가능한 데이터 중복 및 부하 분산 등의 문제를 해결하기 위해 OTel Operator는 Target Allocator를 함께 제공한다. 이에 대해서는 Target Allocator 에서 자세히 다룬다.config.scrape_configs
에 동일하게 설정한다. 여기서는 Prometheus helm chart의 default scraping config를 그대로 가져왔다.