kafka Eagle是什么
kafka Eagle是一款控制和管理Apache Kafka的完全开源系统,它提供了完善的管理页面,多方面的去管理和可视化kafka集群的一些信息,例如Broker详情,性能指标趋势,Topic集合,消费者信息等;
1.修改kafka的启动命令
修改kafka-server-start.sh命令中
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
fi
修改内容如下:
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-server -Xms1G -Xms1G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"
export JMX_PORT="9999"
fi
注意:修改之后在启动kafka之前要修改其他的节点;
2.上传kafka-eagle压缩包到集群/opt/software目录下
下载地址:https://pan.baidu.com/s/1HqcxPKF13XhCCPPzDz86tg
3.解压文件到本地
tar -zxvf kafka-eagle-bin-1.2.4.tar.gz
4.进入解压目录
[root@kafka01 software]# cd kafka-eagle-bin-1.2.4/
[root@kafka01 kafka-eagle-bin-1.2.4]# ll
总用量 74032
-rw-rw-r--. 1 root root 75808650 8月 20 2018 kafka-eagle-web-1.2.4-bin.tar.gz
5.将kafka-eagle-web-1.2.4-bin.tar.gz解压至/opt/module目录
tar -zxvf kafka-eagle-web-1.2.4-bin.tar.gz -C /opt/module/
6.修改文件名称
mv kafka-eagle-web-1.2.4/ eagle
7.修改环境变量
sudo vim /etc/profile
修改内容如下:
export KE_HOME=/opt/module/eagle
export PATH=$PATH:$KE_HOME/bin
8.给启动文件执行权限
进入eagle的【bin】目录下
chmod 777 ke.sh
9.修改system-config.properties配置文件
vim system-config.properties
修改内容如下:
######################################
# multi zookeeper&kafka cluster list
######################################
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=192.168.138.55:2181,192.168.138.66:2181,192.168.138.77:2181
######################################
# zk client thread limit
######################################
kafka.zk.limit.size=25
######################################
# kafka eagle webui port
######################################
kafka.eagle.webui.port=8048
######################################
# kafka offset storage
######################################
cluster1.kafka.eagle.offset.storage=kafka
######################################
# enable kafka metrics
######################################
kafka.eagle.metrics.charts=true
######################################
# alarm email configure
######################################
kafka.eagle.mail.username=alert_sa@163.com
kafka.eagle.mail.password=mqslimczkdqabbbh
kafka.eagle.mail.server.host=smtp.163.com
kafka.eagle.mail.server.port=25
######################################
# delete kafka topic token
######################################
kafka.eagle.topic.token=keadmin
######################################
# kafka sasl authenticate
######################################
kafka.eagle.sasl.enable=false
kafka.eagle.sasl.protocol=SASL_PLAINTEXT
kafka.eagle.sasl.mechanism=PLAIN
######################################
# kafka jdbc driver address
######################################
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://192.168.138.187:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=root
10.启动
10.1 进入bin目录下
./ke.sh start
10.2 如果在启动的时候,报如下错误:
[2020-03-12 14:45:18] INFO: Starting kafka eagle environment check ...
[2020-03-12 14:45:18] Error: The JAVA_HOME environment variable is not defined correctly.
[2020-03-12 14:45:18] Error: This environment variable is needed to run this program.
需要在/etc/profile里面添加java环境变量;
10.2.1 在Linux下,查找java的安装路径:
[root@kafka01 bin]# whereis java
java: /usr/bin/java /usr/lib/java /etc/java /usr/share/java /usr/share/man/man1/java.1.gz
[root@kafka01 bin]# ls -lrt /usr/bin/java
lrwxrwxrwx. 1 root root 22 2月 17 18:19 /usr/bin/java -> /etc/alternatives/java
[root@kafka01 bin]# ls -lrt /etc/alternatives/java
lrwxrwxrwx. 1 root root 73 2月 17 18:19 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/jre/bin/java
10.2.2 JDK配置环境变量:
sudo vim /etc/profile
10.2.3 在文件的末尾添加如下内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
10.2.4 使用如下命令让配置生效
source /etc/profile
10.2.5 查看JAVA_HOME环境变量
echo $JAVA_HOME
10.2.6 再次启动eagle
./ke.sh start
11.kafka Eagle包含哪些功能
11.1 数据面板
负责展示kafka集群的Broker数,Topic数,Consumer数,以及Topic LogSize Top10和Topic Capacity Top10数据;
11.2 主题
该模块包含主题创建,,主题管理,主题预览,KSQL查看主题,主题数据写入,主题属性配置等;
11.3 消费者组
该模块包含控制不同消费者组中的Topic被消费的详情,例如LogSize,Offsets,以及Lag等。同时,支持查看Lag的历史趋势图;
11.4 集群管理
该模块包含kafka集群和zookeeper集群的详情展示,例如kafka的IP和端口,版本号,启动时间,zookeeper的Leader和Follower。同时还支持多kafka集群切换,记忆zookeeper Client数据查看等功能;
11.5 指标控制
该模块包含监控kafka集群和zookeeper集群的核心指标,包含kafka的消息发送趋势,消息大小接收与发送趋势,zookeeper的连接数趋势等等。同时,还支持查看Broker的瞬时指标数据;
11.6 告警
该模块包含告警集群异常和消费者应用Lag异常。同时,支持多种IM告警方式,例如:邮件,钉钉,微信,Webhook等;
11.7 系统管理
该模块包含用户管理,例如创建用户,用户授权,资源管理等;
11.8 数据大屏
该模块包含展示消费者和生产者当日及最近7天趋势,kafka集群读写速度,kafka集群历史总记录等;