- 前言
- 一、kafka-eagle功能介绍
- 二、环境和安装
- 1、安装JDK1.8
- 2、启动zk和kafka的服务
- 3、wget下载安装包
- 4、解压
- 5、设置环境变量
- 6、创建数据库
- 7、修改配置文件
- 三、测试
- 1、启动
- 2、登录页面
- 总结
- Kafka Eagle是一款用于监控和管理Apache Kafka的完全开源系统,目前托管在Github,由笔者和一些开源爱好者共同维护。它提供了完善的管理页面,很方面的去管理和可视化Kafka集群的一些信息,例如Broker详情、性能指标趋势、Topic集合、消费者信息等。
一、kafka-eagle功能介绍
- 1.展示Kafka集群的Broker数、Topic数、Consumer数、以及Topic LogSize Top10和Topic Capacity Top10数据。
- 2.主题创建、主题管理、主题预览、KSQL查询主题、主题数据写入、主题属性配置等
- 3.监控不同消费者组中的Topic被消费的详情,例如LogSize、Offsets、以及Lag等。同时,支持查看Lag的历史趋势图。
- 4.Kafka集群和Zookeeper集群的详情展示,例如Kafka的IP和端口、版本号、启动时间、Zookeeper的Leader和Follower。同时,还支持多Kafka集群切换,以及Zookeeper Client数据查看等功能。
- 5.监控Kafka集群和Zookeeper集群的核心指标,包含Kafka的消息发送趋势、消息大小接收与发送趋势、Zookeeper的连接数趋势等。同时,还支持查看Broker的瞬时指标数据。
- 6.告警集群异常和消费者应用Lag异常。同时,支持多种IM告警方式,例如邮件、钉钉、微信、Webhook等。
- 7.包含用户管理,例如创建用户、用户授权、资源管理等。
- 8.展示消费者和生产者当日及最近7天趋势、Kafka集群读写速度、Kafka集群历史总记录等
- kafka的安装和使用
wget https://github.com/smartloli/kafka-eagle-bin/archive/v2.1.0.tar.gz4、解压
tar -zxvf v2.1.0.tar.gz cd kafka-eagle-bin-2.1.0/ tar -zxvf efak-web-2.1.0-bin.tar.gz mkdir -p /data/software/kafka-eagle mv kafka-eagle-bin-2.1.0/efak-web-2.1.0/* kafka-eagle/5、设置环境变量
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64 export KE_HOME=/data/software/kafka-eagle export PATH=$PATH:$KE_HOME/bin #使其生效 source /etc/profile6、创建数据库
- CentOS7安装MySQL8
修改conf目录下的system-config.properties文件
###################################### # multi zookeeper & kafka cluster list ###################################### ##我这里只安装了一个zk,多个可以按照参考资料中官网设置 kafka.eagle.zk.cluster.alias=cluster1 cluster1.zk.list=localhost:2181 ###################################### # zookeeper enable acl ##需要zk acl可以开启修改此处的配置 ###################################### cluster1.zk.acl.enable=false cluster1.zk.acl.schema=digest cluster1.zk.acl.username=test cluster1.zk.acl.password=test123 ###################################### # broker size online list ###################################### cluster1.kafka.eagle.broker.size=20 ###################################### # zk client thread limit ###################################### kafka.zk.limit.size=25 ###################################### # kafka eagle webui port ###################################### kafka.eagle.webui.port=8048 ###################################### # kafka jmx acl and ssl authenticate ###################################### cluster1.kafka.eagle.jmx.acl=false cluster1.kafka.eagle.jmx.user=keadmin cluster1.kafka.eagle.jmx.password=keadmin123 cluster1.kafka.eagle.jmx.ssl=false cluster1.kafka.eagle.jmx.truststore.location=/Users/dengjie/workspace/ssl/certificates/kafka.truststore cluster1.kafka.eagle.jmx.truststore.password=ke123456 ###################################### # kafka offset storage ###################################### cluster1.kafka.eagle.offset.storage=kafka cluster2.kafka.eagle.offset.storage=zk ###################################### # kafka metrics, 15 days by default ###################################### kafka.eagle.metrics.charts=true kafka.eagle.metrics.retain=15 ###################################### # kafka sql topic records max ###################################### kafka.eagle.sql.topic.records.max=5000 ###################################### # delete kafka topic token ###################################### kafka.eagle.topic.token=keadmin ###################################### # kafka sasl authenticate #权限安全相关配置,这里是虚拟机安装的测试环境,所以没有进行配置 ###################################### cluster1.kafka.eagle.sasl.enable=false cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256 cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle"; cluster1.kafka.eagle.sasl.client.id= cluster1.kafka.eagle.blacklist.topics= cluster1.kafka.eagle.sasl.cgroup.enable=false cluster1.kafka.eagle.sasl.cgroup.topics= cluster2.kafka.eagle.sasl.enable=false cluster2.kafka.eagle.sasl.protocol=SASL_PLAINTEXT cluster2.kafka.eagle.sasl.mechanism=PLAIN cluster2.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle"; cluster2.kafka.eagle.sasl.client.id= cluster2.kafka.eagle.blacklist.topics= cluster2.kafka.eagle.sasl.cgroup.enable=false cluster2.kafka.eagle.sasl.cgroup.topics= ###################################### # kafka ssl authenticate ###################################### cluster3.kafka.eagle.ssl.enable=false cluster3.kafka.eagle.ssl.protocol=SSL cluster3.kafka.eagle.ssl.truststore.location= cluster3.kafka.eagle.ssl.truststore.password= cluster3.kafka.eagle.ssl.keystore.location= cluster3.kafka.eagle.ssl.keystore.password= cluster3.kafka.eagle.ssl.key.password= cluster3.kafka.eagle.blacklist.topics= cluster3.kafka.eagle.ssl.cgroup.enable=false cluster3.kafka.eagle.ssl.cgroup.topics= ###################################### # kafka sqlite jdbc driver address ###################################### #kafka.eagle.driver=org.sqlite.JDBC #kafka.eagle.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db #kafka.eagle.username=root #kafka.eagle.password=www.kafka-eagle.org ###################################### # kafka mysql jdbc driver address #启用MySQL数据库,在链接配置正确的情况下,程序运行后自动建库建表 ###################################### kafka.eagle.driver=com.mysql.jdbc.Driver kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull kafka.eagle.username=root kafka.eagle.password=123456三、测试 1、启动
./bin/ke.sh start
见到如上图内容即可认为是成功了。
- 启动成功有显示 账号密码 Account:admin ,Password:123456
在命令行输入jps可以看到KafkaEagle的进程,bin目录下会生成ke.pid(存有KafkaEagle的进程ID)的文件。
2、登录页面
总结
官方地址 :
源码: https://github.com/smartloli/kafka-eagle/
官网:https://www.kafka-eagle.org/
下载: http://download.kafka-eagle.org/
安装文档: https://docs.kafka-eagle.org/2.env-and-instal



