一、监控kafka工具有很多,但是对于运维人员来说kafka Manager 就可以了
二、编译安装地址https://github.com/yahoo/kafka-manager
三、下下来的是源码 需要在开始安装官方文档进行配置前,因为Kafka-manager使用的Play框架,为了编译的速度更快,先配置sbt的maven仓库,由于默认仓库速度较慢,因此大家可以用aliyun提供的maven仓库。(我用的不是阿里云的 我用的是默认) 反正很慢 我等了好大一会 终于出现如下信息
[info] Packaging /root/kafka-manager/target/scala-2.11/kafka-manager_2.11-1.3.3.22-sans-externalized.jar ...
[info] Done packaging.
[info]
[info] Your package is ready in /root/kafka-manager/target/universal/kafka-manager-1.3.3.22.zip
[info]
[success] Total time: 155 s, completed Jan 17, 2019 11:43:52 AM
说我编译出的版本是kafka-manager-1.3.3.22.zip目录
四、配置比较简单 1、把编译好的包上传至内网服务器
2、解压unzip kafka-manager-1.3.3.22.zip
3、修改配置conf/application.conf 文件 修改自己的zookeeper地址
4、`kafka-manager.zkhosts="9.1.10.102:2181,9.1.10.102:2182,9.1.10.102:2183"` 修改完保存
5、执行bin/kafka-manager 默认监听端口9000
6、打开访问http://ip:9000
7、添加kafka集群
8、启动
nohup /root/kafka-manager-1.3.3.22/bin/kafka-manager &
五、先看几张图(注意这里添加集群的时候要选择你的kafka版本 )
开启用户名密码验证
六、遇到2个问题
问题1、
[error] k.m.j.KafkaJMX$ - Failed to connect to service:jmx:rmi:///jndi/rmi://9.11.8.48:-1/jmxrmi java.lang.IllegalArgumentException: requirement failed: No jmx port but jmx polling enabled!
解决:
需要在每个kafka Server上的启动脚本添加
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"
export JMX_PORT="9999"
fi
然后重启kafkaServer
问题2、
[error] k.m.a.c.BrokerViewCacheActor - Failed to get broker topic segment metrics for BrokerIdentity(2,9.11.8.49,9999,false,true,Map(PLAINTEXT -> 9092)) java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.CommunicationException [Root exception is java.rmi.ConnectIOException: error during JRMP connection establishment; nested exception is: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake]
解决: 不要开启JMX with SSL功能。
kafka-manager-1.3.3.22.zip 下载地址
基于openJDK1.8
链接:https://pan.baidu.com/s/14apjqMC1rGmLnnVnIZuJww
提取码:j3o3
所有评论(0)