Kafka jmx监控端口问题

风yu水 2015-08-11 11:12:47
各位大神,求解~~

为什么指定了jmx_port之后,kafka会再随机启一个端口监听,然后client访问jmx_port建立连接之后,通讯却用的那个随机端口?

能否指定那个随机端口?
...全文
1460 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Suntoma 2018-08-30
  • 打赏
  • 举报
回复
由于测试环境的kafka集群是在私有云的资源池上开的三台虚拟机,而且很多端口都没有开发,所以在搭建kafka服务的时候需要指定开放哪些端口,zk用的是kafka自带的zk启动的,我们在正常开放了2181、9092以及我们指定了JMX_PORT的9999三个端口外,发现远程监控程序无法连接kafka的JMX进行监控,于是我们看了一下kafka占用的端口:

ss -ltnp | grep ${kafka_process_pid}

发现除了9092和9999之外,kafka又开了两个端口.....

我们尝试去打开了其中一个,发现JMX可以正常连接了.....

然后我们又重启了服务,发现新开的端口变了,是随机指定的.......

于是,由于必须要指定端口开放,所以我们想办法去更改配置指定这个端口:

操作如下:

修改${KAFKA_HOME}/bin/kafka-server-start.sh中的内容:

在 export KAFKA_HEAP_OPTS = "-Xmx1G -Xms1G"里面添加

-Dcom.sun.management.jmxremote.rmi.port=9999

修改后的内容为:

export KAFKA_HEAP_OPTS="-Xmx4G -Xms4G

-Dcom.sun.management.jmxremote.rmi.port=9999"



这样就指定了jmxremote.rmi.port=9999和JMX_PORT指定为一个,这样就开一个端口可以使用了,但是启动服务的时候发现,之前随机产生的两个端口,确实有一个不见了,也就是指向了9999,但是依然还有另外一个端口随机产生,但是却并不影响远程连接JMX,于是查了一些资料,发现了这是JAVA的一个bug,为JDK-8035404:

https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8035404

因为暂时不影响JMX使用,所以也就看了一下说明,没有管它。
风yu水 2015-08-11
  • 打赏
  • 举报
回复
已经解决^_^ 指定这个com.sun.management.jmxremote.rmi.port

18,777

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧