Kafka Eagle V2.0.0新版预览

摘要:
目前,KafkaEagle已经发布了2.0.0版本。KafkaEagle V2.0.0中升级了哪些功能?预览截图如下:2.4调试提示在安装KafkaEagle的过程中,一些学生可能会遇到一些问题,例如服务地址无法打开、页面显示不完整、页面数据无法显示等。您可以检查是否在部署KafkaEagle的服务器上配置了Nginx限制。
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.1=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

Kafka Eagle V2.0.0新版预览第1张

 然后,我们开始创建一个test用户,并授权所有权限,执行命令和结果如下:

[zk: 127.0.0.1:2182(CONNECTED) 3] addauth digest test:test123
[zk: 127.0.0.1:2182(CONNECTED) 4] setAcl /znode01 auth:test:cdrwa
cZxid = 0x100
ctime = Sun Jul 12 11:54:24 CST 2020
mZxid = 0x100
mtime = Sun Jul 12 11:54:24 CST 2020
pZxid = 0x100
cversion = 0
dataVersion = 0
aclVersion = 1
ephemeralOwner = 0x0
dataLength = 2
numChildren = 0
[zk: 127.0.0.1:2182(CONNECTED) 5] getAcl /znode01                
'sasl,'test
: cdrwa
'digest,'test:4kLbCbLRytYsfNQkaDbMuExRDDs=
: cdrwa

接着,我们用一个没有授权的zkCli去访问znode01,会出现没有权限:

Kafka Eagle V2.0.0新版预览第2张

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

Kafka Eagle V2.0.0新版预览第3张

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:2182
######################################
# 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服务。如下图所示:

Kafka Eagle V2.0.0新版预览第4张

2.3 KSQL解析和查询优化

在V2.0.0中,对KSQL查询Topic中的数据,从解析到查询进行了优化。比如:

# 旧版本
select * from "ke_topic" where "partition" in (0,1,2) limit 10

# 新版本
# 这里partition是SQL关键字,不能直接写,需要用``进行转义
select * from ke_topic where `partition` in (0,1,2) limit 10

同时,支持JSON解析数据,LIKE模糊查询等功能,具体用法参考官网[KSQL]

底层查询逻辑也做了大量优化,统一采用calcite来做解析引擎和执行引擎。预览截图如下:

Kafka Eagle V2.0.0新版预览第5张

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 页面数据无法显示

可能是浏览器存在缓存,可以在浏览器中右键对浏览器进行检查,如下图所示:

Kafka Eagle V2.0.0新版预览第6张

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

Kafka Eagle V2.0.0新版预览第7张

如果,重试了这些方法后,还是无法解决使用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新版预览》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Flink学习(十三) Flink 常见核心概念分析ASP.NET SignalR 与 LayIM2.0 配合轻松实现Web聊天室(十二) 代码重构使用反射工厂解耦(一)缓存切换下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Kafka — 高吞吐量的分布式发布订阅消息系统【转】

1.Kafka独特设计在什么地方?2.Kafka如何搭建及创建topic、发送消息、消费消息?3.如何书写Kafka程序?4.数据传输的事务定义有哪三种?5.Kafka判断一个节点是否活着有哪两个条件?6.producer是否直接将数据发送到broker的leader(主节点)?7.Kafa consumer是否可以消费指定分区消息?8.Kafka消息是采...

kafka一个broker挂掉无法写入

Kafka日志: broker 133 received LeaderAndIsrRequest with correlation id 1 from controller 132 epoch 35 fro partition [__consumer_offsets,13] but cannot become follower since the new...

docker-compose 搭建 kafka 集群

环境准备 kafka依赖zookeeper,所以搭建kafka需要先配置zookeeper。网格信息如下: zookeeper 192.168.56.101:2181 kafka1 192.168.56.101:9092 kafka2 192.168.56.101:9093 kafka3 192.168.56.101:9094 开始搭建...

kafka shell简单使用

将kafka添加到环境变量中 vim /etc/profile export KAFKA_HOME=/opt/iDataFusion/kafka export PATH=$PATH:$KAFKA_HOME/bin source /etc/profile 创建topic: --create: 指定创建topic动作 --topic:指定新建topic的名称...

zookeeper的安装以及启动jps进程

2.7.1安装   将下载好的安装包,解压到指定位置,这里为直接解压到当前位置,命令如下: tar -zxvf zk-{version}.tar.gz   修改zk配置,将zk安装目录下conf/zoo_sample.cfg重命名zoo.cfg,修改其中的内容: # The number of milliseconds of each tick # 服...

【原创】HBase集群变更zookeeper问题

在用华为的hindex-0.94.8时,出现HMaster启动后很短时间内自动关闭的情况,网上查询说是zookeeper的原因,在万般整修无果舍弃了其内部自带的zookeeper集群,自己安装了zookeeper-3.4.6重启后可以正常使用集群。但是出现一个问题,之前的HBase数据库中的表可以显示但是其中的数据在客户端查询的时候出现org.apache...