内容简介:本文使用Burrow和Telegraf搭建Kafka的监控体系。然后,简单介绍一下其他的,比如Kafka Manager,Kafka Eagle,Confluent Control Center等。如果你对kafka比较陌生,请参考:使用Burrow拉取kafka的监控信息,然后通过telegraf进行收集,最后写入到influxdb中。使用grafana进行展示。
本文使用Burrow和Telegraf搭建Kafka的监控体系。然后,简单介绍一下其他的,比如Kafka Manager,Kafka Eagle,Confluent Control Center等。
如果你对kafka比较陌生,请参考: Kafka基础知识索引
Burrow
依赖路径
使用Burrow拉取kafka的监控信息,然后通过telegraf进行收集,最后写入到influxdb中。使用grafana进行展示。
安装
从github下载二进制文件解压即可。
Burrow是Kafka社区committer亲自编写的,能够监控消费端端情况。不过没有UI界面,开发语言使用的是Go。此项目活跃度不是很高,但已经够用了。
主要的配置文件
burrow可以支持同时获取多个集群的信息,比如,我有两个集群 dm和 databus,那么我的配置文件就可以是下面这样。
[general] pidfile="burrow.pid" stdout-logfile="burrow.out" access-control-allow-origin="mysite.example.com" [logging] filename="logs/burrow.log" level="info" maxsize=100 maxbackups=30 maxage=10 use-localtime=false use-compression=true [zookeeper] servers=[ "192.168.54.159:2181"] timeout=6 root-path="/burrow" [client-profile.databus] client-id="burrow-databus" kafka-version="0.10.0" [cluster.databus] class-name="kafka" servers=[ "192.168.86.57:9092","192.168.128.158:9092" ] client-profile="databus" topic-refresh=120 offset-refresh=30 [consumer.databus] class-name="kafka" cluster="databus" servers=[ "192.168.86.57:9092","192.168.128.158:9092" ] client-profile="databus" group-blacklist="^(console-consumer-|python-kafka-consumer-|quick-).*$" group-whitelist="" [client-profile.dm] client-id="burrow-dm" kafka-version="0.10.0" [cluster.dm] class-name="kafka" servers=[ "192.168.204.156:9092","192.168.87.50:9092" ] client-profile="dm" topic-refresh=120 offset-refresh=30 [consumer.dm] class-name="kafka" cluster="dm" servers=[ "192.168.204.156:9092","192.168.87.50:9092" ] client-profile="databus" group-blacklist="^(console-consumer-|python-kafka-consumer-|quick-).*$" group-whitelist="" [httpserver.default] address=":8000" [storage.default] class-name="inmemory" workers=20 intervals=15 expire-group=604800 min-distance=1
然后,使用nohup命令启动即可。
nohup ./burrow -config-dir=./config &
验证
获取配置的kafka集群。 http://localhost :8000/v3/kafka
获取某个集群的消费者信息。 http://localhost :8000/v3/kafka/databus/consumer
Grafana配置
1、创建变量
过滤出所有集群,这样就可以使用选择框进行集群选择。
2、创建图表
通过cluster过滤集群,然后选择监控项。可以通过group进行分组。
监控项
burrow_group 监控消费者信息。包括
lag offset status total_lag patition_count
burrow_patition 监控更加详细的分区信息,包括
lag offset status
burrow_topic 监控主题相关信息,包括
offset
一、Kafka Manager
最受欢迎的一个,scala编写 且仅提供源码下载需要自己sbt编译。【编译过程极其 o(≧口≦)o】
支持管理多个集群、选择副本、副本重新分配以及创建Topic、Consumer信息查看等功能。
除了编译困难,在拉取大型kafka集群的信息时,会占用大量资源。
二、Kafka Eagle
国人自己开发,在Kafka QQ群里很多人推崇,因为界面很干净漂亮,上面有很好的数据展现。权限报警比较完善,支持钉钉,微信,邮件等报警方式。支持使用ksql查询数据。
三、Confluent Control Center
Control Center是目前能收集到的功能最齐全的Kafka监控框架,but只有购买了Confluent企业版才有,付费的
官方文档 : https://docs.confluent.io/current/quickstart/index.html
注:安装极为繁琐( https://docs.confluent.io/current/installation/installing_cp/zip-tar.html#prod-kafka-cli-install )
需要使用企业版提供的kafka,否则需要将kafka引入4个jar,修改配置文件。
另外此服务需要依赖schema-registry、connect-distributed、及kafka-rest等服务,需要开5个端口
四、Kafka Monitor
炮灰
五、Kafka Offset Monitor
炮灰
End
以上,就是常用的kafka监控组件。
更多精彩文章。
Linux五件套之类的。
以上所述就是小编给大家介绍的《Kafka监控之》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Intel系列微处理器体系结构、编程与接口
布雷, / 机械工业出版社 / 2005-4 / 99.00元
本书是讲述Intel微处理器的国外经典教材,已经多次再版,经过长期教学使用,吐故纳新,不断完善,内容丰富,体系完整。第6版中包含了微处理器领域的最新技术发展,涵盖了Pentium 4的内容。本书结合实例讲解工作原理,并给出小结和习题,既适合教学使用,也适合自学。书中许多实例都可以作为开发类似应用的模板和原型,极具实用价值。附录还给出了备查资料,供设计和调试汇编语言时使用。本书可作为高等院校计算机、......一起来看看 《Intel系列微处理器体系结构、编程与接口》 这本书的介绍吧!