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. 端口占用情况。

相关截图

结束

相关推荐
潘达斯奈基~7 小时前
kafka:【2】工作原理
大数据·分布式·kafka
励志成为糕手7 小时前
Kafka架构:构建高吞吐量分布式消息系统的艺术
分布式·架构·kafka·消息中间件·数据流处理
潮落拾贝19 小时前
k8s部署kafka三节点集群
容器·kafka·kubernetes
在未来等你19 小时前
Kafka面试精讲 Day 12:副本同步与数据一致性
大数据·分布式·面试·kafka·消息队列
echoyu.1 天前
消息队列-kafka完结
java·分布式·kafka
庄小焱1 天前
大数据存储域——Kafka设计原理
大数据·kafka·消息中间件
阿萨德528号1 天前
Kafka 与 RocketMQ 核心概念与架构对比
架构·kafka·rocketmq
Pure03191 天前
Kafka 零拷贝总结
分布式·kafka
怪兽在此1 天前
kafka3.8集群搭建
kafka
lifallen1 天前
揭秘KafkaStreams 线程缓存:NamedCache深度解析
数据结构·算法·缓存·kafka·apache