【问题标题】:How to specify JMX port to use in Kafka 0.9/0.10 and not run into port conflict when running any of the command line commands?如何指定要在 Kafka 0.9/0.10 中使用的 JMX 端口,并且在运行任何命令行命令时不会遇到端口冲突?
【发布时间】:2017-02-10 22:29:10
【问题描述】:

首先,我不确定标准 Kafka 包装中是否存在此问题。我正在使用由 Hortonworks 在 HDP 2.4 中打包的 Kafka

在 HDP 2.3 和 Kafka 0.8.2 中,我在 Kafka 环境 /etc/kafka/conf/kafka-env.sh 中导出 JMX_PORT=9999。 /usr/hdp/current/kafka-broker/bin/kafka-topics.sh 等所有命令行命令都可以正常工作。

在 HDP 2.4 和 Kafka 0.9 或 HDP 2.5 和 Kafka 0.10 中并非如此。无论我将 JMX_PORT 设置为哪个端口,任何命令都会引发以下错误:

错误:代理抛出异常:java.rmi.server.ExportException:端口已在使用:9999;嵌套异常是: java.net.BindException:地址已在使用中

【问题讨论】:

    标签: apache-kafka hortonworks-data-platform


    【解决方案1】:

    不要破解你的 kafka-run-class.sh 文件,它会在下次更新时被删除

    在你的kafka-env.sh 中你应该把它(基于kafka-run-class.sh

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

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-06-10
        • 2016-12-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-10
        • 1970-01-01
        相关资源
        最近更新 更多