1.概述
Kafka Eagle是一款开源的Kafka集群监控系统,源代码托管在Github。目前Kafka Eagle已更新到V1.3.4版本,域名已经统一更新为http://www.kafka-eagle.org/,以前的下载地址和官网使用手册地址均已替换,例如http://download.smartloli.org/替换为http://download.kafka-eagle.org/,而使用手册地址http://ke.smartloli.org/替换为https://docs.kafka-eagle.org/。今天,笔者就带着你们来总体分析一下Kafka Eagle。html
2.内容
Kafka Eagle迭代至今,以及集成了许多功能,例如:多集群管理、Topic大小统计、Topic MBean监控、Kafka多版本兼容、Flink消费者应用程序支持等。git
2.1 Kafka Eagle
2.1.1 背景
Kafka Eagle设计的背景,有如下几点缘由:github
- Apache Kafka官方没有提供监控系统或是Web页面,来可视化Kafka集群,这对管理和掌握Kafka的动态带来极大的不方便,而开发者和运维人员没法及时把握Kafka的状态,在定位分析一些问题的时候,会很不方便
- 已有的监控工具功能较少,对于现有的Kafka监控工具,功能较少,达不到想要的监控和管理效果
- 已有的监控工具使用难度较大,目前一些监控工具均须要本身编译源代码,并且在配置上很复杂,同时文档说明也没有统一的规范,使用起来很不方便
- 告警支持不足,有些监控工具虽然支持邮件告警,可是,对于已有的IM支持比较欠缺,例如微信和钉钉的支持等

2.1.2 架构和核心模块
Kafka Eagle核心模块包含以下:数据库
- 面板可视化
- 主题管理,包含建立主题、删除主题、主题列举、主题配置、主题查询等
- 消费者应用:对不一样消费者应用进行监控,包含Kafka API、Flink API、Spark API、Storm API、Flume API、LogStash API等
- 集群管理:包含对Kafka集群和Zookeeper集群的详情展现,其内容包含Kafka启动时间、Kafka端口号、Zookeeper Leader角色等。同时,还有多集群切换管理,Zookeeper Client操做入口
- 集群监控:包含对Broker、Kafka核心指标、Zookeeper核心指标进行监控,并绘制历史趋势图
- 告警功能:对消费者应用数据积压状况进行告警,以及对Kafka和Zookeeper监控度进行告警。同时,支持邮件、微信、钉钉告警通知
- 系统管理:包含用户建立、用户角色分配、资源访问进行管理

Kafka Eagle架构组成以下所示:微信
- 可视化:负责展现主题列表、集群健康、消费者应用等
- 采集器:数据采集的来源包含Zookeeper、Kafka JMX & 内部Topic、Kafka API(这里API针对Kafka 2.x之后的版本进行升级)
- 数据存储:目前Kafka Eagle存储采用MySQL或SQLite,数据库和表的建立均是自动完成的,按照官方文档进行配置好,启动Kafka Eagle就会自动建立,用来存储元数据和监控数据
- 监控:负责见消费者应用消费状况(是否有数据积压)、集群健康状态(集群节点是否掉线)
- 告警:对监控到的异常进行告警通知,支持邮件、微信、钉钉等方式
- 权限管理:对访问用户进行权限管理,对于管理员、开发者、访问者等不一样角色的用户,分配不用的访问权限

2.1.3 选择Kafka Eagle有哪些好处
选择Kafka Eagle有哪些好处呢?首先Kafka Eagle安装使用很是方便,这也是Kafka Eagle设计的初衷之一;其次,Kafka Eagle提供了友好的用户交互界面,以及丰富的功能支持。同时,对于使用过程当中遇到的BUG和问题,能够在QQ群中进行咨询以及在Github源代码中提issues。总计以下:架构
- 简单易用
- 功能丰富
- 专业支持(咨询渠道多,实时咨询Kafka Eagle项目做者进行解答)

2.1.4 后续工做
Kafka Eagle的后续工做,分为4个维度:运维
- 系统质量维度:持续优化Kafka Eagle系统,保证Kafka Eagle系统的使用质量
- 需求收集维度:调研并收集Kafka监控需求,同时修复Kafka Eagle在Github中issues问题
- 新功能开发维度:对于实际需求在Kafka Eagle中作新功能开发,来知足使用者的实际需求
- 文档完善维度:对Kafka Eagle的官网使用手册进行完善,保证用户可以阅读规范的的使用手册

3.新功能预览
在Kafka Eagle V1.3.4中对Flink消费者应用进行了优化,同时对历史趋势图的绘制进行了优化,以及对展现主题列表和消费列表的逻辑进行优化。工具


4.文档整理
完善了Kafka Eagle的官方使用手册(https://docs.kafka-eagle.org/),以及Kafka Eagle系统设计PDF文档(http://pdf.kafka-eagle.org/)。oop
5.总结
Kafka Eagle的安装使用很是方便,若是在使用过程当中遇到了问题,能够给笔者发邮件留言,或者直接在QQ群进行笔者。同时,也很是欢迎你们一块儿参与维护这个项目,在Github上提PR,或者issues。学习
6.结束语
这篇博客就和你们分享到这里,若是你们在研究学习的过程中有什么问题,能够加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!
另外,博主出书了《Kafka并不难学》和《Hadoop大数据挖掘从入门到进阶实战》,喜欢的朋友或同窗, 能够在公告栏那里点击购买连接购买博主的书进行学习,在此感谢你们的支持。关注下面公众号,根据提示,可免费获取书籍的教学视频。