Kafka

Kafka后台命令报错端口JMX端口占用

2021-11-08  本文已影响0人  Alen_ab56

当你在kafka-run-class.sh中添加了export JMX_PORT=9300 开启了 jmx 后, 在使用 kafka bin/目录下的脚本时会报如下错误:

java.rmi.server.ExportException: Port already in use

可参考如下文章解决 https://github.com/apache/kafka/pull/1983/commits/2c5d40e946bcc149b1a9b2c01eced4ae47a734c5
实时生效,不需要重启节点。

但是这会引入另外一个问题,就是重启节点后无法再通过JMX监控拉取kafka节点信息指标。

image.png
重启之后
if [ JMX_PORT ] && [ -z "ISKAFKASERVER" ]; 不为true

解决办法:
替换成 if [ JMX_PORT ] && [ "ISKAFKASERVER" == "true" ]; then 即可
感兴趣的可以了解下shell语法

PS:报这个错误的根本原因是kafka-run-class.sh是个被调用脚本,当被其他脚本调用的同时,java会绑定该端口,这个时候就会报错端口占用了

上一篇 下一篇

猜你喜欢

热点阅读