Kafka 消息监控 - Kafka Eagle

1.概述

  在开发工做当中,消费 Kafka 集群中的消息时,数据的变更是咱们所关心的,当业务并不复杂的前提下,咱们可使用 Kafka 提供的命令工具,配合 Zookeeper 客户端工具,能够很方便的完成咱们的工做。随着业务的复杂化,Group 和 Topic 的增长,此时咱们使用 Kafka 提供的命令工具,已预感到力不从心,这时候 Kafka 的监控系统此刻便尤其显得重要,咱们须要观察消费应用的详情。 监控系统业界有不少杰出的开源监控系统。咱们在早期,有使用 KafkaMonitor 和 Kafka Manager 等,不过随着业务的快速发展,以及互联网公司特有的一些需求,现有的开源的监控系统在性能、扩展性、和 DEVS 的使用效率方面,已经没法知足了。 所以,咱们在过去的时间里,从互联网公司的一些需求出发,从各位 DEVS 的使用经验和反馈出发,结合业界的一些开源的 Kafka 消息监控,用监控的一些思考出发,设计开发了如今 Kafka 集群消息监控系统:Kafka Eagle。git

  Kafka Eagle 用于监控 Kafka 集群中 Topic 被消费的状况。包含 Lag 的产生,Offset 的变更,Partition 的分布,Owner ,Topic 被建立的时间和修改的时间等信息。下载地址以下所示:github

2.内容

  Kafka Eagle 涉及如下内容模块:浏览器

  • Dashboard
  • Topic(Create & List)
  • Consumers
  • Cluster Info

2.1 Dashboard

  咱们经过在浏览器中输入 http://host:port/ke,访问 Kafka Eagle 的 Dashboard 页面。该页面包含如下内容:工具

  • Brokers
  • Topics
  • Zookeepers
  • Consumers
  • Kafka Brokers Graph

  展现 Kafka 集群的 Topic 数量,消费者数量,Kafka 的 Brokers 数,以及所属的 Zookeeper 集群信息。Dashboard 信息展现截图以下:性能

2.2 Topic

  在 Topic 模块下,包含建立 Topic 和展现 Topic 信息详情。学习

2.2.1 Create

  经过建立模块能够建立一个自定义分区和备份数的 Topic。以下图所示:设计

2.2.2 List

  该模块下列出 Kafka 集群中全部的 Topic,包含 Topic 的分区数,建立时间以及修改时间,以下图所示:blog

  上图中,每个 Topic 名称对应一个详情的超连接,经过该连接能够查看该 Topic 的详情,如:分区索引号,Leader,Replicas 和 Isr,以下图所示所示:索引

2.3 Consumers

  该模块显示有消费记录的 Topic 信息,其中包含以下内容:开发

  • Running
  • Pending
  • Active Topic Graph
  • Offsets Rate Graph

2.4 Cluster Info

  该模块显示 Kafka 集群信息和 Zookeeper 集群信息,包含以下内容:

  • Kafka Broker Host & IP
  • Kafka Broker Created & Modify Date
  • Zookeeper Host & IP

3.数据采集

  Kafka Eagel 监控的消息数据源,来自于 Zookeeper。因为建立,修改或是消费 Kafka 的消息,都会在 Zookeeper 中进行注册,咱们能够从中获取数据的变更,例如:Topic,Brokers,Partitions 以及 Group 等,Kafka 在 Zookeeper 的结构存储,以下图所示: 

4.总结

   Kafka Eagle 的安装使用很简单,下载安装,配置好 Kafka 集群所属的 Zookeeper 集群地址便可,安装部署文档地址以下:

5.结束语

  这篇博客就和你们分享到这里,若是你们在研究学习的过程中有什么问题,能够加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!

相关文章
相关标签/搜索