20.4. 구성을 통해 Prometheus 지표 활성화


Prometheus의 AMQ Streams에 지표를 활성화하고 노출하려면 지표 구성 속성을 사용합니다.

다음 구성 요소에는 메트릭을 노출하려면 metricsConfig 구성이 필요합니다.

  • Kafka
  • KafkaConnect
  • MirrorMaker
  • 크루즈 컨트롤
  • ZooKeeper

이 구성을 사용하면 Prometheus Cryostat Exporter 가 HTTP 끝점을 통해 지표를 노출할 수 있습니다. Cryostat 내보내기 HTTP 끝점의 포트는 9404입니다. Prometheus는 이 끝점을 스크랩하여 Kafka 지표를 수집합니다.

이러한 구성 요소의 메트릭을 노출하려면 enableMetrics 속성을 true 로 설정합니다.

  • Kafka 브리지
  • OAuth 2.0 인증 및 권한 부여 프레임워크
  • 승인을 위한 OPA(Open Policy Agent)

AMQ Streams에 Prometheus 지표 구성을 배포하려면 자체 구성 또는 AMQ Streams와 함께 제공되는 사용자 정의 리소스 구성 파일 예제 를 사용할 수 있습니다.

  • kafka-metrics.yaml
  • kafka-connect-metrics.yaml
  • kafka-mirror-maker-2-metrics.yaml
  • kafka-bridge-metrics.yaml
  • kafka-cruise-control-metrics.yaml
  • oauth-metrics.yaml

이러한 파일에는 Prometheus 지표를 활성화하는 데 필요한 재레이블 규칙 및 구성이 포함되어 있습니다. AMQ Streams로 Prometheus를 시도하는 데 좋은 출발점입니다.

다음 절차에서는 Kafka 리소스에 예제 Prometheus 지표 구성을 배포하는 방법을 보여줍니다. 다른 리소스에 대한 예제 파일을 배포할 때 프로세스는 동일합니다.

Kafka Exporter 지표를 포함하려면 Kafka 리소스에 kafkaExporter 구성을 추가합니다.

중요

Kafka 내보내기는 소비자 지연 및 소비자 오프셋과 관련된 추가 지표만 제공합니다. 일반 Kafka 메트릭의 경우 Kafka 브로커 에서 Prometheus 지표를 구성해야 합니다.

절차

  1. Prometheus 구성을 사용하여 예제 사용자 정의 리소스를 배포합니다.

    예를 들어 각 Kafka 리소스에 대해 kafka-metrics.yaml 파일을 적용할 수 있습니다.

    예제 구성 배포

    oc apply -f kafka-metrics.yaml

    또는 kafka-metrics.yaml 의 예제 구성을 자체 Kafka 리소스에 복사할 수 있습니다.

    예제 구성 복사

    oc edit kafka <kafka_configuration_file>

    metricsConfig 속성 및 Kafka 리소스에 참조하는 ConfigMap 을 복사합니다.

    Kafka의 메트릭 구성 예

    apiVersion: kafka.strimzi.io/v1beta2
    kind: Kafka
    metadata:
      name: my-cluster
    spec:
      kafka:
        # ...
        metricsConfig: 
    1
    
          type: jmxPrometheusExporter
          valueFrom:
            configMapKeyRef:
              name: kafka-metrics
              key: kafka-metrics-config.yml
    ---
    kind: ConfigMap 
    2
    
    apiVersion: v1
    metadata:
      name: kafka-metrics
      labels:
        app: strimzi
    data:
      kafka-metrics-config.yml: |
      # metrics configuration...

    1
    메트릭 구성이 포함된 ConfigMap을 참조하는 metricsConfig 속성을 복사합니다.
    2
    지표 구성을 지정하는 전체 ConfigMap 을 복사합니다.
  2. Kafka Exporter를 배포하려면 kafkaExporter 구성을 추가합니다.

    kafkaExporter 구성은 Kafka 리소스에만 지정됩니다.

    Kafka Exporter를 배포하기 위한 구성 예

    apiVersion: kafka.strimzi.io/v1beta2
    kind: Kafka
    metadata:
      name: my-cluster
    spec:
      # ...
      kafkaExporter:
        image: my-registry.io/my-org/my-exporter-cluster:latest 
    1
    
        groupRegex: ".*" 
    2
    
        topicRegex: ".*" 
    3
    
        groupExcludeRegex: "^excluded-.*" 
    4
    
        topicExcludeRegex: "^excluded-.*" 
    5
    
        resources: 
    6
    
          requests:
            cpu: 200m
            memory: 64Mi
          limits:
            cpu: 500m
            memory: 128Mi
        logging: debug 
    7
    
        enableSaramaLogging: true 
    8
    
        template: 
    9
    
          pod:
            metadata:
              labels:
                label1: value1
            imagePullSecrets:
              - name: my-docker-credentials
            securityContext:
              runAsUser: 1000001
              fsGroup: 0
            terminationGracePeriodSeconds: 120
        readinessProbe: 
    10
    
          initialDelaySeconds: 15
          timeoutSeconds: 5
        livenessProbe: 
    11
    
          initialDelaySeconds: 15
          timeoutSeconds: 5
    # ...

    1
    ADVANCED OPTION: 컨테이너 이미지 구성 - 특별한 경우에만 권장됩니다.
    2
    메트릭에 포함할 소비자 그룹을 지정하는 정규식입니다.
    3
    메트릭에 포함할 주제를 지정하는 정규식입니다.
    4
    메트릭에서 제외할 소비자 그룹을 지정하는 정규식입니다.
    5
    메트릭에서 제외할 주제를 지정하는 정규식입니다.
    6
    예약할 CPU 및 메모리 리소스입니다.
    7
    지정된 심각도(디버그, info, warn, error, fatal) 이상으로 메시지를 기록하기 위한 로깅 구성입니다.
    8
    Kafka Exporter에서 사용하는 Go 클라이언트 라이브러리인 Sarama 로깅을 활성화하는 부울입니다.
    9
    배포 템플릿 및 포드 사용자 지정.
    10
    상태 점검 준비 프로브.
    11
    상태 점검 활동성 프로브.
참고

Kafka 내보내기가 제대로 작동하려면 소비자 그룹을 사용 중이어야 합니다.

Kafka 브리지의 메트릭 활성화

Kafka Bridge의 지표를 노출하려면 KafkaBridge 리소스에서 enableMetrics 속성을 true 로 설정합니다.

Kafka 브리지의 메트릭 구성 예

apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaBridge
metadata:
  name: my-bridge
spec:
  # ...
  bootstrapServers: my-cluster-kafka:9092
  http:
    # ...
  enableMetrics: true
  # ...

OAuth 2.0 및 OPA 메트릭 활성화

OAuth 2.0 또는 OPA의 메트릭을 노출하려면 적절한 사용자 정의 리소스에서 enableMetrics 속성을 true 로 설정합니다.

OAuth 2.0 메트릭

Kafka 리소스에서 Kafka 클러스터 권한 부여 및 Kafka 리스너 인증에 대한 지표를 활성화합니다.

지원되는 다른 구성 요소의 사용자 정의 리소스에서 OAuth 2.0 인증에 대한 메트릭을 활성화할 수도 있습니다.

OPA 메트릭
Kafka 클러스터 권한 부여 메트릭을 OAuth 2.0과 동일한 방식으로 Kafka 리소스를 활성화합니다.

다음 예에서 OAuth 2.0 리스너 인증 및 OAuth 2.0(keycloak) 클러스터 권한에 대해 메트릭이 활성화됩니다.

OAuth 2.0에 대해 메트릭이 활성화된 클러스터 구성의 예

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
  name: my-cluster
  namespace: myproject
spec:
  kafka:
    # ...
    listeners:
    - name: external
      port: 9094
      type: loadbalancer
      tls: true
      authentication:
        type: oauth
        enableMetrics: true
      configuration:
        #...
    authorization:
      type: keycloak
      enableMetrics: true
  # ...

Prometheus와 함께 OAuth 2.0 지표를 사용하려면 oauth-metrics.yaml 파일을 사용하여 예제 Prometheus 지표 구성을 배포할 수 있습니다. oauth-metrics.yaml 파일에 포함된 ConfigMap 구성을 OAuth 2.0에 대한 메트릭을 활성화한 동일한 Kafka 리소스 구성 파일에 복사합니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동