在以前的博客中,介绍了Kafka Web Console这个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者、消费者、ZooKeeper创建大量链接,从而致使网络阻塞。而且这个Bug也在其余使用者中出现过,看来使用开源工具要慎重!该Bug暂未获得修复,不得已,只能研究下其余同类的Kafka监控软件。web
经过研究,发现主流的三种kafka监控程序分别为:安全
如今依次介绍以上三种工具:markdown
使用Kafka Web Console,能够监控:网络
Brokers列表socket
Kafka 集群中 Topic列表,及对应的Partition、LogSiz e等信息工具
点击Topic,能够浏览对应的Consumer Groups、Offset、Lag等信息oop
程序运行后,会定时去读取kafka集群分区的日志长度,读取完毕后,链接没有正常释放,一段时间后产生大量的socket链接,致使网络堵塞。测试
雅虎开源的Kafka集群管理工具:spa
管理几个不一样的集群日志
监控集群的状态(topics, brokers, 副本分布, 分区分布)
产生分区分配(Generate partition assignments)基于集群的当前状态
KafkaOffsetMonitor能够实时监控:
Kafka集群状态
Topic、Consumer Group列表
图形化展现topic和consumer之间的关系
图形化展现consumer的Offset、Lag等信息
经过使用,我的总结以上三种监控程序的优缺点:
Kafka Web Console:监控功能较为全面,能够预览消息,监控Offset、Lag等信息,但存在bug,不建议在生产环境中使用。
Kafka Manager:偏向Kafka集群管理,若操做不当,容易致使集群出现故障。对Kafka实时生产和消费消息是经过JMX实现的。没有记录Offset、Lag等信息。
KafkaOffsetMonitor:程序一个jar包的形式运行,部署较为方便。只有监控功能,使用起来也较为安全。
若只须要监控功能,推荐使用KafkaOffsetMonito,若偏重Kafka集群管理,推荐使用Kafka Manager。
由于都是开源程序,稳定性欠缺。故需先了解清楚目前已存在哪些Bug,多测试一下,避免出现相似于Kafka Web Console的问题。
原创文章,转载请注明: 转载自蓝色天堂博客,本文连接地址:http://hadoop1989.com/2015/09/22/Kafka-Monitor_Compare/