0%

Kafka-Eagle(监控)

Kafka Eagle(EFAK)是一款用于管理Kafka的监控系统,包含的功能有数据面板、数据大屏、主题列表、消费者组、集群详情、监控中心、告警策略、系统管理等功能

一、安装

1.1、安装JDK环境

1.2、安装EFAK

1.2.1、解压

1
2
3
4
tar -zxf kafka-eagle-bin-3.0.1.tar.gz
cd kafka-eagle-bin-3.0.1
tar -zxf efak-web-3.0.1-bin.tar.gz
cd efak-web-3.0.1

1.2.2、设置环境变量

1
2
3
4
5
vi /etc/profile
export KE_HOME=/usr/local/kafka-eagle-bin-3.0.1/efak-web-3.0.1
export PATH=$PATH:$KE_HOME/bin

source /etc/profile

1.2.3、配置

1
2
cd ${KE_HOME}/conf
vi system-config.properties

1.2.3.1、zk配置

1
2
3
4
5
6
7
######################################
# multi zookeeper & kafka cluster list
# Settings prefixed with 'kafka.eagle.' will be deprecated, use 'efak.' instead
######################################
efak.zk.cluster.alias=cluster1
cluster1.zk.list=zk01:2181,zk02:2181,zk03:2181
#cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181

1.2.3.2、偏移量存储

1
2
3
4
5
######################################
# kafka offset storage
######################################
cluster1.efak.offset.storage=kafka
#cluster2.efak.offset.storage=zk

1.2.3.3、开启报表指标数据

开启此配置的同时kafka也需要开启JMS端口

1
2
3
4
5
######################################
# kafka metrics, 15 days by default
######################################
efak.metrics.charts=true
efak.metrics.retain=15

1.2.3.4、删除kafka topic所需要的token

1
2
3
4
######################################
# delete kafka topic token
######################################
efak.topic.token=keadmin

1.2.3.5、注释cluster2配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
######################################
# kafka sasl authenticate
######################################
cluster1.efak.sasl.enable=false
cluster1.efak.sasl.protocol=SASL_PLAINTEXT
cluster1.efak.sasl.mechanism=SCRAM-SHA-256
cluster1.efak.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";
cluster1.efak.sasl.client.id=
cluster1.efak.blacklist.topics=
cluster1.efak.sasl.cgroup.enable=false
cluster1.efak.sasl.cgroup.topics=
#cluster2.efak.sasl.enable=false
#cluster2.efak.sasl.protocol=SASL_PLAINTEXT
#cluster2.efak.sasl.mechanism=PLAIN
#cluster2.efak.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle";
#cluster2.efak.sasl.client.id=
#cluster2.efak.blacklist.topics=
#cluster2.efak.sasl.cgroup.enable=false
#cluster2.efak.sasl.cgroup.topics=

1.2.3.6、修改数据库配置

安装mysql,开启mysql远程访问权限,eagle启动时会自动创建数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

######################################
# kafka sqlite jdbc driver address
######################################
#efak.driver=org.sqlite.JDBC
#efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db
#efak.username=root
#efak.password=www.kafka-eagle.org

######################################
# kafka mysql jdbc driver address
######################################
efak.driver=com.mysql.cj.jdbc.Driver
efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
efak.username=root
efak.password=Root_123

1.2.3.7、修改kafka启动文件

添加export JMX_PORT="9999"

1
2
3
4
5
6
7
vi kafka-server-start.sh
...
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
export JMX_PORT="9999"
#export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
fi

停止kafka:./kafka-server-stop.sh

启动kafka:./kafka-server-start.sh -daemon ../config/server.properties

二、启动

ke.sh start

如果ke.sh文件没有权限,则需要chmod +x ke.sh进行授权

常用命令ke.sh [start|status|stop|restart|stats]

​ 启动自动创建数据库

访问:http://192.168.243.131:8048/,首次访问比较缓慢需要等待

默认账号:admin,默认密码:123456,第一次登陆仍比较缓慢需要等待