Prometheus监控Kafka(三种方法JMX/Kafka_exporter/KMINION监控Kafka)

背景

一句话说明需求:

  • 公司需要监控kafka消息队列的消费情况,强调需查看当前Topic中的message的数量。

一句话说明解决:

  • 像Kafka这样的Java进程可以先通过JMX Agent或者第三方Agent(kafka_exporter\KMINION等)获取监控数据,再通过Prometheus采集数据、通过Grafana模板展示数据即可。另外具体的message数量需要通过PromQL语句查询得到。

多说几句:

  • kafka应用的具体指标和JVM虚拟机的指标都可以通过JMX监控得到。
  • Zabbix也可以监控kafka,也是通过JMX实现。
  • Prometheus对自定义监控项更友好,相关的Grafana模板更多。
  • 建议同时使用JMX和kminion,同时使用两者的Grafana模板(具体性能损耗的评估稍后有时间我再详细说明,有时间折腾也可以只装一个)

监控效果截图

参考链接

【Grafana模板库:搜索Kafka】
【阿里云官方文档:如何部署和配置Kafka JMX Agent】

实际操作

使用JMX监控

  1. 下载jmx程序包。
  2. 修改kafka启动参数
  3. 重启kafka
  4. 重启prometheus
  5. 导入grafana模板。

使用kafka_exporter监控

  1. 下载kafka_exporter程序包。
  2. 修改kafka_exporter配置文件。
  3. 启动kafka_exporter。
  4. 重启prometheus。
  5. 导入grafana模板。

使用Kminion监控

  1. 下载Kminion程序包。
  2. 修改kminion配置文件。
  3. 创建kminion配置文件的环境变量。
  4. 启动kminion。
  5. 重启prometheus。
  6. 导入grafana模板。

注意:

  1. 防火墙策略。
  2. 端口占用情况。

相关截图

结束

相关推荐
better_liang4 小时前
每日Java面试场景题知识点之-消息队列MQ核心场景与实战
java·面试·kafka·消息队列·rabbitmq·rocketmq·mq
rising start12 小时前
从客户端通信到分布式消息中间件
redis·分布式·kafka·rabbitmq·mq
Cat_Rocky16 小时前
k8s-Prometheus的manifests 清单部署
linux·kubernetes·prometheus
一个儒雅随和的男子17 小时前
使用 Docker Compose 搭建 Kafka 集群
docker·kafka
得物技术18 小时前
HorizonVault 技术深潜:如何在 HDD 上做出 100GB/s+ 级大吞吐分布式存储|得物技术
大数据·后端·kafka
week@eight19 小时前
Linux - Kafka
linux·kafka
青云计划19 小时前
Kafka消息可靠性:从生产到消费的全链路不丢不重
kafka
Devin~Y19 小时前
大厂 Java 面试实录:Spring Boot微服务/Kafka/Redis/K8s可观测性 + RAG Agent(小Y社死版)
java·spring boot·redis·spring cloud·kafka·kubernetes·micrometer
yumgpkpm19 小时前
Hadoop(CDH6、CDP7)在Qwen3.7大模型训练中的作用,(含部署、运行操作步骤)
大数据·hive·hadoop·分布式·zookeeper·spark·kafka
成为你的宁宁1 天前
【Prometheus基于文件的服务发现】
服务发现·prometheus