远程找出Kafka版本

时间:2018-12-04 13:10:57

标签: apache-kafka

是否有办法从集群外部找出Kafka版本? (也许使用telnet或其他工具)

为澄清起见,我既没有向Kafka也没有向动物园管理员请教。

2 个答案:

答案 0 :(得分:0)

可以通过telnet,ssh ...从计算机连接到服务器吗?如果可以,可以检查远程服务器上的kafka日志。

例如,我正在Linux Centos服务器上工作,kafka-logs位于/ var / logs / kafka中,那么我可以这样做:

$ head -n 50  /var/log/kafka/kafka-broker-quickstart.cloudera.log 

检查输出并查找类似kafka-clients-2.1.0

的内容

答案 1 :(得分:0)

检索kafka Cluster版本的最简单的解决方案是使用每个代理公开的JMX指标。通常,JMX是在经纪人上激活以进行监视的。

每个经纪人都可以通过度量名称公开该版本:

kafka.server:type=app-info,version=<([-.\w]+)>

为此,您可以使用 jconsole 或Apache / Confluent Kafka发行版中的JmxTool

这里是一个示例:

$> ./bin/kafka-run-class kafka.tools.JmxTool --jmx-url service:jmx:rmi:///jndi/rmi://:9999/jmxrmi --object-name kafka.server:type=app-info --attributes version 

这将为您提供输出:

Trying to connect to JMX url: service:jmx:rmi:///jndi/rmi://:9999/jmxrmi.
"time","kafka.server:type=app-info:version"
1556186760721,2.1.0-cp1
1556186762728,2.1.0-cp1
1556186764727,2.1.0-cp1

请注意,您应该使用自己的环境信息配置属性--jmx-url