【问题标题】:Set up Confluent Metrics Reporter at wurstmeister/kafka在 wurstmeister/kafka 设置 Confluent Metrics Reporter
【发布时间】:2021-04-11 23:21:35
【问题描述】:

控制中心与 docker 上的 wurstmeister/kafka。

但是当我打开 cp-control-center 时,我看不到代理的指标。有一条报告消息说 Set up Confluent Metrics Reporter

我可以设置并获取 wurstmeister/kafka 图像的指标吗?

我的 docker-compose 文件如下

kafka:
    image: wurstmeister/kafka
    container_name: kafka
    hostname: kafka
    ports:
      - "9092"
      - "9999"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_PORT: 9092
      KAFKA_PORT: 9092
      KAFKA_JMX_OPTS: "-Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=kafka -Dcom.sun.management.jmxremote.rmi.port=9999"
      JMX_PORT: 9999
      KAFKA_LISTENERS: PLAINTEXT://:9092
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.22.0.4:9092
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    depends_on:
      - zookeeper
    
  control-center:
    image: confluentinc/cp-enterprise-control-center:6.0.0
    hostname: control-center
    container_name: control-center
    depends_on:
      - kafka
    ports:
      - "9021:9021"
    environment:
      CONTROL_CENTER_BOOTSTRAP_SERVERS: kafka:9092
      CONTROL_CENTER_REPLICATION_FACTOR: 1
      CONTROL_CENTER_INTERNAL_TOPICS_PARTITIONS: 1
      CONTROL_CENTER_MONITORING_INTERCEPTOR_TOPIC_PARTITIONS: 1
      CONFLUENT_METRICS_TOPIC_REPLICATION: 1
      PORT: 9021

【问题讨论】:

    标签: apache-kafka confluent-control-center


    【解决方案1】:

    代理的指标报告器不在 wurstmeister 容器的类路径上,也没有创建指标主题。

    你必须download the Confluent Platform to get those reporters,所以没有理由不使用他们的容器

    【讨论】:

    • 我使用了一个使用 wurstmeister 容器的开源应用程序,但我无法更改它,因为我必须更改应用程序的代码。我只想为消费者获取指标。但也使用 JMX 我必须在应用程序中进行更改。那么有什么方法可以在不更改应用程序代码的情况下为消费者获取指标?
    • Confluent 镜像也是开源的,无需更改任何与代码相关的内容即可在同一位置使用 Kafka 地址。如前所述,您必须以某种方式下载指标报告器 JARS 并将其添加到应用程序和容器的类路径中
    • 另外,很多人使用 Prometheus 和 Grafana 而不是控制中心