And*_*nov 5 apache-kafka kafka-python
尝试使用CentOS上的Python客户端本地连接到Kafka 0.10.0.0时,我遇到了一个非常奇怪的问题.
我的连接选项非常简单且默认:
kafka_consumer = kafka.KafkaConsumer(
bootstrap_servers=['localhost:9092'],
client_id="python-test-consumer"
)
Run Code Online (Sandbox Code Playgroud)
当我在Kafka的server.properties文件中手动设置监听器选项时,如:
listeners=PLAINTEXT://localhost:9092
Run Code Online (Sandbox Code Playgroud)
我得到了kafka.errors.NoBrokersAvailable,尽管我仍然可以使用curl或其他linux东西轻松连接到Kafka代理服务器.
没有advertised.listeners或其他已弃用的广告选项有助于解决问题.因此,唯一正在工作的配置状态是没有监听器的状态.这当然是不可接受的,因为我们需要以某种方式设置本地集群.
似乎这个愚蠢问题的解决方案很简单并且在想,但我们自己无法想象.
这可能听起来很愚蠢,但由于这个原因,完全相同的问题也发生在我身上:
我通过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
Run Code Online (Sandbox Code Playgroud)
而不是我之前执行的方式:
$ zkServer start
$ kafka-server-start /usr/local/etc/kafka/server.properties
Run Code Online (Sandbox Code Playgroud)
建议的方法不断地在客户端中抛出“没有可用的经纪人”错误。然后我将命令分成两行:
$ zookeeper-server-start /usr/local/etc/kafka/zookeeper.properties
$ kafka-server-start /usr/local/etc/kafka/server.properties
Run Code Online (Sandbox Code Playgroud)
一切都像以前一样!
很抱歉,如果这对您不起作用,但我认为值得一提。
| 归档时间: |
|
| 查看次数: |
6406 次 |
| 最近记录: |