内容简介:本文使用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监控之》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- zabbix监控tomcat 自定义监控项
- iOS 性能监控(一)—— CPU功耗监控
- iOS 性能监控(二)—— 主线程卡顿监控
- WGCLOUD 监控系统更新,集成 ES 在线监控工具
- 监控之路5-zabbix定义一次完整的监控
- WGCLOUD 监控系统更新,进程监控模块 bug 修复
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Practical Algorithms for Programmers
Andrew Binstock、John Rex / Addison-Wesley Professional / 1995-06-29 / USD 39.99
Most algorithm books today are either academic textbooks or rehashes of the same tired set of algorithms. Practical Algorithms for Programmers is the first book to give complete code implementations o......一起来看看 《Practical Algorithms for Programmers》 这本书的介绍吧!