EFAK的前身就是Kafka-eagle,新版本的Kafka-eagle都称之为EFAK(Eagle For Apache Kafka)。
EFAK是开源可视化和管理软件。它允许您查询、可视化、提醒和探索您的指标,无论它们存储在哪里。用简单的英语,它为您提供了将您的 Kafka集群数据转换为漂亮的图形和可视化的工具。
EFAK可以通过KSQL直接查询或者动态方式读取Kafka中Topic的消息数据。
EFAK官方文档地址:https://www.kafka-eagle.org/articles/docs/introduce/what-is-kafka-eagle.html
EFAK依赖于JAVA环境。
[root@kafka-1 ~]# tar xf jdk-8u211-linux-x64.tar.gz -C /data/
[root@kafka-1 ~]# vim /etc/profile
JAVA_HOME=/usr/local/jdk1.8.0_211
PATH=$JAVA_HOME/bin:$PATH
[root@kafka-1 ~]# source /etc/profile
[root@kafka-1 ~]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
1.安装mysql服务
[root@mysql ~]# yum -y install mariadb-server
2.启动mysql
[root@mysql ~]# systemctl start mariadb
3.设置root用户密码
[root@mysql ~]# mysqladmin -uroot password '123456'
1.下载安装包
[root@kafka-1 ~]# wget https://github.com/smartloli/kafka-eagle-bin/archive/v2.1.0.tar.gz
2.解压即可使用
[root@kafka-1 ~]# tar xf kafka-eagle-bin-2.1.0.tar.gz
[root@kafka-1 ~]# tar xf kafka-eagle-bin-2.1.0/efak-web-2.1.0-bin.tar.gz -C /data
3.修改目录名称
[root@kafka-1 ~]# mv /data/efak-web-2.1.0/ /data/kafka-efak
[root@kafka-1 ~]# ll /data/kafka-efak
总用量 0
drwxr-xr-x 2 root root 52 3月 21 09:51 bin
drwxr-xr-x 2 root root 75 3月 21 09:51 conf
drwxr-xr-x 2 root root 6 9月 13 2021 db
drwxr-xr-x 2 root root 23 3月 21 09:51 font
drwxr-xr-x 9 root root 91 2月 23 11:13 kms
drwxr-xr-x 2 root root 6 2月 19 19:45 logs
4.配置系统环境变量
[root@kafka-1 ~]# vim /etc/profile
KE_HOME=/data/kafka-efak
PATH=$KE_HOME/bin:$PATH
[root@kafka-1 ~]# source /etc/profile
EFAK只要能连接上ZOokeeper就可以获取到Kafka集群的信息,无需在配置连接Kafka。
[root@kafka-1 ~]# vim /data/kafka-efak/conf/system-config.properties
efak.zk.cluster.alias=cluster1 #zk集群,我们只有一套kafka集群,连接了一个zk集群,因此只保留了clustrer1,如果我们希望通过这一个eagle平台管理多个kakfa集群,在这里可以以逗号形式隔开,添加多个zk集群
cluster1.zk.list=192.168.20.10:2181,192.168.20.11:2181,192.168.20.12:2181 #zk集群各节点的地址
#cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181 #没有其他kafka集群注释掉cluster2
#eagle平台的数据是要存储在数据库的,需要配置数据库连接信息
efak.driver=com.mysql.cj.jdbc.Driver
efak.url=jdbc:mysql://192.168.20.13:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
efak.username=root
efak.password=123456
在Eagle启动文件中增加上KE_HOME
、JAVA_HOME
两个变量,否则启动时会报错找不到这两个变量的定义信息。
[root@kafka-1 ~]# vim /data/kafka-efak/bin/ke.sh
KE_HOME=/data/kafka-efak
JAVA_HOME=/usr/local/jdk1.8.0_211
[root@kafka-1 ~]# /data/kafka-efak/bin/ke.sh start
启动成功后会提示平台的登陆账号和密码。
访问本机IP+8048端口,账号:admin
,密码:123456
。
在系统首页可以看到Kafaka集群中Broker的数量、Topic的数量、ZK集群的数量以及消费者组的数量。
在下面还可以看到Topic中消息的堆积情况,可以看到my-rc-topic中有5条堆积消息。
点击左侧的BScreen跳转至动态监控视图。
在右上角可以切换不同的Cluster来选择不同的Kafka集群,Cluster是在配置文件中定义的ZK集群信息。
点击Topics—>Create—>输入Topic的名称—>创建
点击Topics—>List,可以看到集群中所有的Topic信息。
点击Topic的名称可以跳转至详情页面。
点击CLuster—>ZK&Kafka,在这里可以看到ZK集群和Kafka集群的信息。
在Multi-CLusters中可以看到我们在配置文件中配置的CLuster1集群信息。
点击CLuster—>ZkCli即可执行Zookeeper的命令。
在Metrics中可以看到Brokers、Kafka、Zookeeper等节点的监控信息。