Kafka Eagle V2.0.0新版预览
1.概述
Kafka Eagle是一款用于管理Kafka的监控系统,且完全开源。当前Kafka Eagle发布了2.0.0版本。今天笔者就为大家来介绍一下2.0.0更新了哪些功能。
2.内容
Kafka Eagle所包含的功能有数据面板、数据大屏、主题列表、消费者组、集群详情、监控中心、告警策略、系统管理等功能。那在Kafka Eagle V2.0.0中又升级了哪些功能呢?
2.1 支持Zookeeper ACL
在V2.0.0版本中,修复了对Zookeeper ACL的支持。比如,我们的Zookeeper的集群开启了DigestLoginModule。
在Zookeeper集群中的zoo.cfg中添加如下配置:
# add acl
authProvider.=org.apache.zookeeper.server.auth.SASLAuthenticationProvider
然后,在$ZK_HOME/conf目录中添加服务端认证文件zk_server.conf
Server{
org.apache.zookeeper.server.auth.DigestLoginModule required
user_admin="admin123"
user_test="test123";
};
接着,在$ZK_HOME/conf目录中添加客户端认证文件zk_client.conf
Client {
org.apache.zookeeper.server.auth.DigestLoginModule required
username="test"
password="test123";
};
修改Zookeeper中zkEnv.sh脚本,添加如下内容:
###
SERVER_JVMFLAGS="-Djava.security.auth.login.config=/Users/dengjie/workspace/zookeeper-3.4.6-acl/conf/zk_server.conf"
CLIENT_JVMFLAGS="${CLIENT_JVMFLAGS} -Djava.security.auth.login.config=/Users/dengjie/workspace/zookeeper-3.4.6-acl/conf/zk_client.conf" export SERVER_JVMFLAGS="$SERVER_JVMFLAGS"
export CLIENT_JVMFLAGS="$CLIENT_JVMFLAGS"
###
这里需要注意的时,其中Zookeeper服务进程后,创建的znode默认是有所有权限的,需要我们额外授权。比如我们创建一个/znode01

然后,我们开始创建一个test用户,并授权所有权限,执行命令和结果如下:
[zk: 127.0.0.1:(CONNECTED) ] addauth digest test:test123
[zk: 127.0.0.1:(CONNECTED) ] setAcl /znode01 auth:test:cdrwa
cZxid = 0x100
ctime = Sun Jul :: CST
mZxid = 0x100
mtime = Sun Jul :: CST
pZxid = 0x100
cversion =
dataVersion =
aclVersion =
ephemeralOwner = 0x0
dataLength =
numChildren =
[zk: 127.0.0.1:(CONNECTED) ] getAcl /znode01
'sasl,'test
: cdrwa
'digest,'test:4kLbCbLRytYsfNQkaDbMuExRDDs=
: cdrwa
接着,我们用一个没有授权的zkCli去访问znode01,会出现没有权限:

而我们用授权的zkCli去访问,是可以正常访问的

Zookeeper ACL集群部署好后,那么Kafka Eagle中如何进行配置呢?
2.2 Kafka Eagle中配置Zookeeper ACL
在Kafka Eagle V2.0.0中,对Zookeeper ACL配置进行了简化,只需在$KE_HOME/conf/system-config.properties中添加如下内容:
######################################
# multi zookeeper & kafka cluster list
######################################
kafka.eagle.zk.cluster.alias=cluster4
cluster4.zk.list=127.0.0.1:
######################################
# zookeeper enable acl
######################################
cluster4.zk.acl.enable=true
cluster4.zk.acl.schema=digest
cluster4.zk.acl.username=test
cluster4.zk.acl.password=test123
最后,我们执行 ke.sh start 启动Kafka Eagle服务。如下图所示:

2.3 KSQL解析和查询优化
在V2.0.0中,对KSQL查询Topic中的数据,从解析到查询进行了优化。比如:
# 旧版本
select * from "ke_topic" where "partition" in (,,) limit # 新版本
# 这里partition是SQL关键字,不能直接写,需要用``进行转义
select * from ke_topic where `partition` in (,,) limit
同时,支持JSON解析数据,LIKE模糊查询等功能,具体用法参考官网[KSQL]
底层查询逻辑也做了大量优化,统一采用calcite来做解析引擎和执行引擎。预览截图如下:

2.4 调试小技巧
在安装Kafka Eagle的过程中,有同学可能会遇到一些问题,比如服务地址无法打开、页面显示不完整、页面数据无法显示等问题。
2.4.1 服务地址无法打开
这里,针对服务地址无法打开的问题,我们先去看看Kafka Eagle的启动日志($KE_HOME/logs/ke_console.out),可能是部署失败了,导致服务没有启动,所有服务地址无法打开。
2.4.2 页面显示不完整
页面显示不完整,比如KSQL查询输入框显示异常、Kafka监控日期选择控件异常等,这些可能是由于服务限制了静态资源的加载。可以看看部署Kafka Eagle的服务器上,是否配置了Nginx限制。
2.4.3 页面数据无法显示
可能是浏览器存在缓存,可以在浏览器中右键对浏览器进行检查,如下图所示:

然后,切换到Network,找到Disable cache进行勾选,最后在刷新浏览器,对缓存进行更新

如果,重试了这些方法后,还是无法解决使用Kafka Eagle的问题,可以在博客下面进行留言,或者添加下面的QQ群,进行咨询作者。
3.总结
Kafka Eagle提供了简单易用的操作界面,支持Kafka和Zookeeper的ACL认证监控,满足常规的消费者组、集群性能、消息容量、多集群管理、多IM告警(微信、钉钉、邮件、WebHook)等多功能。Github Star超过1300+,处理大家提交的Issue 300+多个,如果你Kafka集群缺少监控,不妨可以试试Kafka Eagle。如果觉得对你有所帮助,可以在Github上给个Star,最后感谢大家对Kafka Eagle的支持,Kafka Eagle社区会对大家提供的建议和留言,进行考虑,为大家提供更加好用的Kafka监控。
4.结束语
这篇博客就和大家分享到这里,如果大家在研究学习的过程当中有什么问题,可以加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!
另外,博主出书了《Kafka并不难学》和《Hadoop大数据挖掘从入门到进阶实战》,喜欢的朋友或同学, 可以在公告栏那里点击购买链接购买博主的书进行学习,在此感谢大家的支持。关注下面公众号,根据提示,可免费获取书籍的教学视频。
Kafka Eagle V2.0.0新版预览的更多相关文章
- Kafka Eagle V1.3.4更新预览
1.概述 Kafka Eagle是一款开源的Kafka集群监控系统,源代码托管在Github.目前Kafka Eagle已更新到V1.3.4版本,域名已经统一更新为http://www.kafka-e ...
- C# 9.0 新特性预览 - 类型推导的 new
C# 9.0 新特性预览 - 类型推导的 new 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章将向大 ...
- C# 9.0 新特性预览 - 空参数校验
C# 9.0 新特性预览 - 空参数校验 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章将向大家展示它 ...
- C# 9.0 新特性预览 - 顶级语句
C# 9.0 新特性预览 - 顶级语句 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章将向大家展示它们 ...
- C# 9.0 新特性预览 - init-only 属性
C# 9.0 新特性预览 - init-only 属性 前言 随着 .NET 5 发布日期的日益临近,其对应的 C# 新版本已确定为 C# 9.0,其中新增加的特性(或语法糖)也已基本锁定,本系列文章 ...
- Kafka Eagle 3.0.1功能预览
1.概述 最近有同学留言,关于Kafka Eagle的一些使用问题.今天笔者就为大家来详细介绍Kafka Eagle 3.0.1的功能以及使用方法. 2.内容 在3.0.1版本中,EFAK优化了分布式 ...
- 【纯技术贴】.NETStandard FreeSql v0.0.9 功能预览
年关将至,首页技术含量文章真是越来越少,理解大家盼着放假过年,哥们我何尝不是,先给大家拜个早年. 兄弟我从11月底发了神经,开启了 ORM 功能库的开发之旅,历时两个月编码和文档整理,目前预览版本更新 ...
- Android 7.0终极开发者预览版全攻略!
近日,Google的工程部副总裁Dave Burke在官方博客上正式发布开发者预览版5,此预览版是android 7.0 “牛轧糖”正式发布前最后一个预览版,同时也是在性能.功能上等多方面的表现上最接 ...
- 怎样改动 VC6.0 4.0 2010 打印预览界面上的文字
前言:尽管早已下决心不再碰微软的东西,但手头的项目还得须要维护. 遇到问题还能解决. 问题由来: 之前的软件开发是基于中文环境开发的,建立项目的时候,选择了中文,为了方便客户使用.我们使用了静态编译的 ...
随机推荐
- Docker学习 ,超全文档!
我们的口号是:再小的帆也能远航,人生不设限!! 一.学习规划: Docker概述 Docker安装 Docker命令 Docker镜像 镜像命令 容器命令 操作命令 容器数据卷 Doc ...
- (五)使用logback进行日志记录
原文:https://www.cnblogs.com/taiyonghai/p/9290641.html 引入jar包 此处如果是引用了spring boot则不需要再引一下的jar包了,spring ...
- animation 动画 与 transition
animation: name duration timing-function delay iteration-count direction; 值 描述 animation-name 规定需要绑定 ...
- drf之框架基础
(一)drf基础 全称:django-rest framework 接口:什么是接口.restful接口规范(协议) CBV(基于FBV的基础上形成).CBV生命周期源码----基于restful规范 ...
- 计算机网络之DNS协议
DNS( Domain Name System)是“域名系统”的英文缩写,是一种组织成域层次结构的计算机和网络服务命名系统,它用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工 ...
- Riccati方程迭代法求解
根据上述迭代法求解P,P为Riccati方程的解,然而用LQR需要计算K,再将K算出. (迭代过程中 ,我们可以将此算法和dlqr函数求解的参数进行对比,当误差小于我们设置的允许误差我们就可以把此算法 ...
- git和github入门指南(3.2)
3.3.解决多人协作开发过程中的代码冲突问题 1.在多人协作开发的项目中,每次开发之前每个人最好先同步更新一下github上最新的代码,可以减少冲突的概率 git pull 2.产生冲突 目前咱们演示 ...
- 如何完美获得一个double值的整数部分
如果是java有float类型的向上取整:Math.ceil() //只要有小数都+1向下取整:Math.floor() //不取小数四舍五入:Math.round() //四舍五入 如果是C++:方 ...
- javamelody对Java Application进行监控
前面写过对于webapp,用javamelody来监控.分析性能是挺方便的:那要对普通的java应用进行监控,只需要在应用上启动一个嵌入式web容器就可以了. javamelody里面的war包就用了 ...
- Redis系列(六):数据结构QuickList(快速列表)源码解析
1.介绍 Redis在3.2版本之前List的底层编码是ZipList和LinkedList实现的 在3.2版本之后,重新引入了QuickList的数据结构,列表的底层都是QuickList实现 当L ...