1、Kafka Eagle是什么?
Kafka Eagle是一款用于监控和管理Apache Kafka的开源系统,它提供了完善的管理页面,例如Broker详情、性能指标趋势、Topic集合、消费者信息等。
源代码地址:https://github.com/smartloli/kafka-eagle
2、Kafka Eagle包含哪些功能?
Kafka Eagle监控管理系统,提供了一个可视化页面,使用者可以拥有不同的角色,例如管理员、开发者、游客等。不同的角色对应不同的使用权限,核心功能如下所示:
3.Kafka Eagle如何安装?
Kafka Eagle安装部署,可以从官网下载最新版本,按如下命令操作即可:
# 解压安装包
tar -zxvf kafka-eagle-v1.4.2-bin.tar.gz
然后,配置环境变量KE_HOME和JAVA_HOME。需要注意的是,程序依赖jdk环境,需要安装jdk1.8以上版本,配置/etc/profile
如下:
vim /etc/profile
export JAVA_HOME=/opt/jdk8
export KE_HOME=/opt/kafka-eagle
export PATH=$PATH:$JAVA_HOME/bin:$KE_HOME/bin
接下来,配置Kafka Eagle的系统文件,内容如下:
vim system-config.properties
######################################
# kafka多集群配置,设置zookeeper信息,自动识别kafka broker
######################################
efak.zk.cluster.alias=cluster1
cluster1.zk.list=localhost:2181
######################################
# zookeeper acl安全策略配置
######################################
cluster1.zk.acl.enable=false
cluster1.zk.acl.schema=digest
cluster1.zk.acl.username=test
cluster1.zk.acl.password=test123
######################################
# kafka jmx acl认证配置
######################################
cluster1.efak.jmx.acl=false
cluster1.efak.jmx.user=keadmin
cluster1.efak.jmx.password=keadmin123
cluster1.efak.jmx.ssl=false
cluster1.efak.jmx.truststore.location=/data/ssl/certificates/kafka.truststore
cluster1.efak.jmx.truststore.password=ke123456
######################################
#kafka存储消费信息的类型,0.9版本之前,默认配置zk,在0.10版本之后,默认配置Kafka
######################################
cluster1.efak.offset.storage=kafka
######################################
# 删除Kafka Topic的验证token
######################################
efak.topic.token=keadmin
######################################
# kafka sasl认证策略,参照kafka配置
######################################
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=
######################################
# Kafka Eagle元数据信息的数据库,默认使用Sqlite
######################################
efak.driver=org.sqlite.JDBC
efak.url=jdbc:sqlite:/opt/eagle-3.0.1/db/ke.db
efak.username=root
efak.password=www.kafka-eagle.org
4、开启kafka集群Broker节点JMX_PORT
配置eagle监控kafka集群JMX,需要开启Kafka集群的各个Broker节点JMX_PORT(Kafka默认不开启),连接失败会报空指针异常。
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"
# 开启JMX_PORT端口,端口开启后,Kafka Eagle系统会自动感知获取
export JMX_PORT="9999"
fi
5、启动Kafka Eagle系统
执行如下命令:
ke.sh start
待提示启动成功后,浏览器访问:http://节点IP:7766 输入账户admin/123456登录。
6、附录
kafka-console-ui: 一款快捷易用的轻量级kafka可视化管理平台
kafkaUI-lite: kafka 可视化工具,同时也是zookeeper 、redis的图形工具