6장. 모니터링 스택에 대한 메트릭 구성
클러스터 관리자는 다음 작업을 수행하도록 OpenTelemetry 수집기 CR(사용자 정의 리소스)을 구성할 수 있습니다.
-
수집기의 파이프라인 지표 및 활성화된 Prometheus 내보내기를 스크랩하기 위한 Prometheus
ServiceMonitor
CR을 생성합니다. - 클러스터 내 모니터링 스택에서 지표를 스크랩하도록 Prometheus 수신자를 구성합니다.
6.1. 모니터링 스택에 메트릭을 전송하기 위한 구성
OpenTelemetryCollector
CR(사용자 정의 리소스)을 구성하여 사이드카 배포에 대한 Prometheus ServiceMonitor
CR 또는 PodMonitor
CR을 생성할 수 있습니다. ServiceMonitor
는 수집기의 내부 메트릭 끝점 및 Prometheus 내보내기 메트릭 끝점을 스크랩할 수 있습니다.
Prometheus 내보내기가 포함된 OpenTelemetry Collector CR의 예
apiVersion: opentelemetry.io/v1alpha1
kind: OpenTelemetryCollector
spec:
mode: deployment
observability:
metrics:
enableMetrics: true 1
config: |
exporters:
prometheus:
endpoint: 0.0.0.0:8889
resource_to_telemetry_conversion:
enabled: true # by default resource attributes are dropped
service:
telemetry:
metrics:
address: ":8888"
pipelines:
metrics:
receivers: [otlp]
exporters: [prometheus]
- 1
- OpenTelemetry Operator의 Red Hat 빌드를 구성하여 Prometheus
ServiceMonitor
CR 또는PodMonitor
CR을 생성하여 수집기의 내부 지표 끝점 및 Prometheus 내보내기 메트릭 끝점을 스크랩합니다.
enableMetrics
를 true
로 설정하면 다음 두 개의 ServiceMonitor
인스턴스가 생성됩니다.
-
<
instance_name>-collector-monitoring
서비스에 대한 하나의ServiceMonitor
인스턴스입니다. 이ServiceMonitor
인스턴스는 수집기의 내부 메트릭을 스크랩합니다. -
<
instance_name>-collector
서비스에 대한 하나의ServiceMonitor
인스턴스입니다. 이ServiceMonitor
인스턴스는 Prometheus 내보내기 인스턴스에서 노출하는 메트릭을 스크랩합니다.
또는 수동으로 생성한 Prometheus PodMonitor
CR은 예를 들어 Prometheus 스크랩 중에 추가된 중복된 라벨 제거와 같은 세분화된 제어를 제공할 수 있습니다.
수집기 메트릭을 스크랩하도록 모니터링 스택을 구성하는 PodMonitor
CR의 예
apiVersion: monitoring.coreos.com/v1 kind: PodMonitor metadata: name: otel-collector spec: selector: matchLabels: app.kubernetes.io/name: <cr_name>-collector 1 podMetricsEndpoints: - port: metrics 2 - port: promexporter 3 relabelings: - action: labeldrop regex: pod - action: labeldrop regex: container - action: labeldrop regex: endpoint metricRelabelings: - action: labeldrop regex: instance - action: labeldrop regex: job