8.4. 部署 Prometheus 指标配置


部署 Prometheus 指标配置,以便将 Prometheus 与 AMQ Streams 搭配使用。使用 metricsConfig 属性来启用和配置 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

示例配置文件具有重新标记规则以及启用 Prometheus 指标所需的配置。Prometheus 从目标 HTTP 端点中提取指标。示例文件是尝试使用 AMQ Streams 尝试 Prometheus 的好方法。

要应用重新标记规则和指标配置,请执行以下操作之一:

  • 将示例配置复制到您自己的自定义资源
  • 使用指标配置部署自定义资源

如果要包含 Kafka Exporter 指标,请在 Kafka 资源中添加 kafkaExporter 配置。

重要

Kafka Exporter 只提供与消费者 lag 和 consumer offsets 相关的其他指标。对于常规 Kafka 指标,您必须在 Kafka 代理 中配置 Prometheus 指标。

此流程演示了如何在 Kafka 资源中部署 Prometheus 指标配置。将示例文件用于其他资源时,该进程是相同的。

流程

  1. 使用 Prometheus 配置部署示例自定义资源。

    例如,对于应用 kafka-metrics.yaml 文件的每个 Kafka 资源。

    部署示例配置

    oc apply -f kafka-metrics.yaml
    Copy to Clipboard Toggle word wrap

    另外,您可以将 kafka-metrics.yaml 中的示例配置复制到您自己的 Kafka 资源。

    复制示例配置

    oc edit kafka <kafka-configuration-file>
    Copy to Clipboard Toggle word wrap

    复制 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...
    Copy to Clipboard Toggle word wrap

    1
    复制 metricsConfig 属性来引用包含指标配置的 ConfigMap。
    2
    复制指定指标配置的整个 ConfigMap
    注意

    对于 Kafka Bridge,您可以指定 enableMetrics 属性,并将其设置为 true

    apiVersion: kafka.strimzi.io/v1beta2
    kind: KafkaBridge
    metadata:
      name: my-bridge
    spec:
      # ...
      bootstrapServers: my-cluster-kafka:9092
      http:
        # ...
      enableMetrics: true
      # ...
    Copy to Clipboard Toggle word wrap
  2. 要部署 Kafka Exporter,请添加 kafkaExporter 配置。

    kafkaExporter 配置只在 Kafka 资源中指定。

    部署 Kafka 导出器配置示例

    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
    
        resources: 
    4
    
          requests:
            cpu: 200m
            memory: 64Mi
          limits:
            cpu: 500m
            memory: 128Mi
        logging: debug 
    5
    
        enableSaramaLogging: true 
    6
    
        template: 
    7
    
          pod:
            metadata:
              labels:
                label1: value1
            imagePullSecrets:
              - name: my-docker-credentials
            securityContext:
              runAsUser: 1000001
              fsGroup: 0
            terminationGracePeriodSeconds: 120
        readinessProbe: 
    8
    
          initialDelaySeconds: 15
          timeoutSeconds: 5
        livenessProbe: 
    9
    
          initialDelaySeconds: 15
          timeoutSeconds: 5
    # ...
    Copy to Clipboard Toggle word wrap

    1
    ADVANCED OPTION: 容器镜像配置,这只在特殊情况下建议
    2
    指定指标中包含的消费者组的正则表达式。
    3
    指定指标中包含的主题的正则表达式。
    4
    5
    日志记录配置,记录具有给定严重性的日志消息(debug、info、warn、error、fatal)或更高版本。
    6
    启用 Sarama 日志记录的布尔值,是 Kafka Exporter 使用的 Go 客户端库。
    7
    8
    9
注意

要使 Kafka 导出器能够正常工作,需要使用使用者组。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat