Kafka监控软件汇总
问题导读
1.本文列举了哪些软件?
2.各自有哪些 特点?
3.目前哪个版本用的最多?
Kafka manager
首先是Kafka Manager,是我目前用的最多的,有简单易懂的ui,可以代替部分脚本,可以看到某些jmx数据,主要是流量。还有offset的监控,与新旧consumer的lag。另外就是topic的管理功能了,可以查看partition的分配,可以手动生成分配的配置,然后reassign,还有修改topic的一些配置,如rentention.ms这种,但是增加replication fator做不到,管理topic UI差不多是这样的
Kafka Monitor
我假定你指的是这款吧:https://github.com/linkedin/kafka-monitor。 这款监控框架更多的是关注对Kafka集群做端到端的整体系统测试,并产出各种系统级的监控指标,比如端到端的延时,整体消息丢失率等。对于新搭建的Kafka线上集群,使用Kafka Monitor做个整体测试有助于你了解该集群整体的一些性能,但若是用于日常监控该框架便有些不便了,需要自己修改webapp/index.html中的监控指标,流程上有些不太友好。不过这款框架的优势是其主要贡献者是LinkedIn的lindong(Kafka 1.0.0版本中正式支持JBOD就是lindong主力开发的),质量上是有保证的
Kafka Offset
MonitorKafkaOffsetMonitor应该算比较早的监控框架了,有着很酷的UI,使用者也是很多。但其比较大的劣势是对新版本consumer和security的支持,另外该项目已经近2年未维护了,其主力开发甚至是另起炉灶,重新写了一个新的KafkaOffsetMonitor来支持新版本consumer——https://github.com/Morningstar/kafka-offset-monitor。不过目前该项目star数很少,应该没有大规模应用,到底是否适用于生产环境需要用户自行判断
Burrow
Burrow是LinkedIn开源的一款专门监控consumer lag的框架。事实上,当初其开源时我对它还是期待挺高的,不过令人遗憾地是后劲不足,发展得非常缓慢,而且这款框架是用Go写的,安装时要求必须有Go运行环境,故Burrow在普及上不如其他框架。Burrow没有UI界面,只开放了很多HTTP endpoint,这对于想偷懒的运维来说更是一个减分项。总之它的功能目前十分有限,普及率和知名度都是比较低的。不过好处是该项目主要贡献者是LinkedIn团队维护Kafka集群的主要负责人,故质量上是很有保证的
JMXTrans + InfluxDB + Grafana
如果你监控Kafka是为了酷炫和让领导看,那么我推荐你这套组合。这套组合完全监控Kafka的JMX指标,其最大的优势是UI酷炫,适合于向领导展示:) 具体搭建方法网上有很多教程,可以参考下。这里就不再赘述了。
作者:huxihx
链接:https://www.zhihu.com/question/67752849/answer/256108808
页:
[1]