如何在kafka 0.9/0.10中指定要使用的jmx端口,并且在运行任何命令行命令时不会遇到端口冲突?

c9qzyr3d  于 2021-06-07  发布在  Kafka
关注(0)|答案(2)|浏览(273)

首先,我不确定这个问题是否存在于Kafka的标准 Package 中。我用的是hortonworks在HDP2.4中 Package 的Kafka
在hdp2.3和kafka 0.8.2中,我在kafka environment/etc/kafka/conf/kafka-env.sh中导出jmxƏu port=9999。所有命令行命令,如/usr/hdp/current/kafka broker/bin/kafka-topics.sh都可以正常工作。
HDP2.4和Kafka0.9或HDP2.5和Kafka0.10则不是这样。无论我将jmx\u port设置为哪个端口,任何命令都会引发以下错误:
错误:代理引发的异常:java.rmi.server.exportexception:端口已在使用中:9999;嵌套异常为:java.net.bindexception:地址已在使用中

c90pui9n

c90pui9n1#

更改了第112行 /usr/hdp/current/kafka-broker/bin/kafka-run-class.sh 以下内容:

if [  $JMX_PORT ] && [ -z "$ISKAFKASERVER" ]; then
bis0qfac

bis0qfac2#

不要黑你的kafka-run-class.sh文件它会在下次更新时被删除
在你的 kafka-env.sh 你应该把它(基于 kafka-run-class.sh )

if [ "x$ISKAFKASERVER" == "xtrue" ]; then
   export JMX_PORT=16667
fi

相关问题