kafka 监控工具 eagle 的安装(内附高速下载地址)

简介

1594603342355

如图 kafka eagle 是可视化的 kafka 监视系统,用于监控 kafka 集群

环境准备:

  • 需要的内存:1.5G+
  • 支持的 kafka 版本:0.8.2.x,0.9.x,0.10.x,0.11.x,1.x,2.x
  • 支持的操作系统: Mac OS X,Linux,Windows
  • 支持的 JDK 版本:JDK8+

下载地址

下载监控软件,官方 GITHUB 下载,非常非常慢,但是可以下载任意版本,只需要修改最后的 v1.3.7 到想要的版本

//codeload.github.com/smartloli/kafka-eagle-bin/tar.gz/v1.3.7

蓝奏云极速下载(v1.3.7):

//keats.lanzous.com/iPuztehkbpc

配置 kafka

更改 kafka 安装目录 /bin 目录 下 kafka-server-start.sh 的这一段 $KAFKA_HEAP_OPTS 里面的内容,提供 jmx 连接端口。KAFKA_HEAP_OPTS JVM的参数可以根据自己服务器的性能进行调大(不建议调小,再小就起不来了)

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
 export KAFKA_HEAP_OPTS="-server -Xms1G -Xmx1G -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

安装 eagle

解压安装文件

复制下载好的 kafka-eagle-bin-1.3.7.tar.gz/home/kafka 目录,解压

tar -zxvf kafka-eagle-bin-1.3.7.tar.gz

将解压出来的压缩包继续解压

tar -zxvf kafka-eagle-web-1.3.7-bin.tar.gz

移动文件

mv kafka-eagle-web-1.3.7 /home/kafka/eagle

配置环境变量

sudo vi /etc/profile
  1. 确定 JAVA_HOME 环境变量已经配置
  2. 在最后面加上以下两行 kafka eagle 的环境变量
export KE_HOME=/home/kafka/eagle
export PATH=$PATH:$KE_HOME/bin

刷新 profile

如果很不幸,环境变量没写对导致 path 变量无效,大部分命令都失效的话,参考这里:关于错误修改了/etc/profile文件(环境变量错误)

source /etc/profile

切换到 bin 目录,为 eagle 的启动脚本添加可执行权限

chmod 777 ke.sh

修改 eagle 的配置文件

切换到 conf 目录,修改配置文件 system-config.properties

首先可以看出 eagle 兼容多套 kafka 集群,可以按需进行增加 / 删除

######################################
# multi zookeeper&kafka cluster list
######################################
kafka.eagle.zk.cluster.alias=cluster1,cluster2
cluster1.zk.list=tdn1:2181,tdn2:2181,tdn3:2181
cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181

我这边是单个集群、集群中只有单节点 kafka 和 zk。这里需要注意:当 eagle 和 zk 在一个局域网的不同阿里云服务器时建议使用局域网IP来配置 zk 地址,如果配公网地址会报域名解析异常导致页面没数据

kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=localhost:2181

端口号,如果端口被占用可以修改

######################################
# kafka eagle webui port
######################################
kafka.eagle.webui.port=8094

0.9 版本之前消费者偏移量存储在 zk、之后存储在 kafka。依据 kafka 版本来配置 value 。如果是低版本 kafka 值取 zookeeper 而非提供的 zk

######################################
# kafka offset storage
######################################
cluster1.kafka.eagle.offset.storage=kafka

kafka.eagle.metrics.charts 是否生成图表展示在页面,默认关闭,建议开启

######################################
# enable kafka metrics
######################################
kafka.eagle.metrics.charts=true

配置数据库,以 MySQL 为例。配置好库名之后,表结构会自动创建,数据库我是自己创建的空库,不知道会不会自动创建库。后续可以通过页面 / 直接修改 ke_user 表来修改管理员的账号和密码

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

启动

需要注意:启动 eagle 需要服务器至少 1.5 G 的可用内存。如果可用内存不足,虽然会显示启动成功的页面。但是输入 ./ke.sh status 会发现服务状态为未启动。此时 ke 会生成如下图的错误日志

1594374187549

别的启动错误,可以查看 kms/logs 下面的 catalina.out,java 的错误大家应该都很熟悉我就不多说了

1594374287027

启动之后访问 host:port/ke 即可访问 eagle 控制台,登录账号 admin,密码 123456

1594375372091

Tags: