尝试连接到Kafka时没有可用的错误

kcwpcxri  于 2021-06-08  发布在  Kafka
关注(0)|答案(1)|浏览(371)

在centos上使用python客户端本地连接到kafka 0.10.0.0时,我遇到了一个非常奇怪的问题。
我的连接选项非常简单,默认为:

kafka_consumer = kafka.KafkaConsumer(
        bootstrap_servers=['localhost:9092'],
        client_id="python-test-consumer"
    )

当我在kafka的server.properties文件中手动设置listeners选项时,例如:

listeners=PLAINTEXT://localhost:9092

我可以使用kafka.errors.nobrokers,尽管我仍然可以使用curl或其他linux工具轻松地连接到kafka代理服务器。
没有播发的侦听器或其他不推荐使用的播发选项有助于解决问题。因此,配置的唯一工作状态是没有侦听器的状态。这当然是不可接受的,因为我们需要以某种方式设置本地集群。
似乎这个愚蠢问题的解决办法很简单,而且还在四处寻找,但我们自己却想不出来。

4c8rllxm

4c8rllxm1#

这听起来可能很愚蠢,但同样的问题也发生在我身上,因为:
我通过brew(mac软件包管理器)升级到kafka 0.10.0.0。brew建议像这样运行:

$ zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties; kafka-server-start /usr/local/etc/kafka/server.properties

而不是我以前的执行方式:

$ zkServer start
$ kafka-server-start /usr/local/etc/kafka/server.properties

该方法建议继续在客户中抛出那些“没有经纪人可用”的错误。然后我把命令分成两行:

$ zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties
$ kafka-server-start /usr/local/etc/kafka/server.properties

一切都像以前一样!
抱歉,如果这对你不起作用,但我觉得值得一提。

相关问题