将kafka-console-producer.sh运行到另一台服务器

问题描述 投票:0回答:3

我在我的centos服务器上安装了Apache Kafka。我只是想在另一台服务器上写一个主题的消息。所以在安装之后,我没有启动zookeeper或Kafka服务器,只需输入命令:

echo testing | ./kafka-console-producer.sh --broker-list xxx.yyy.com:2181 --topic topicx

我可以从我的服务器ping xxx.yyy.com。当我运行它时,我收到此错误:

ERROR使用key发送消息到主题cds_organization时出错:null,值:7个字节,带错误: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback) org.apache.kafka.common.errors.TimeoutException:60000 ms后元数据中不存在主题topicx。

所以在这种情况下,我还需要启动zookeeper和/或kafka服务器吗?

apache-kafka kafka-producer-api
3个回答
1
投票

“./kafka-console-producer.sh --broker-list xxx.yyy.com:2181 --topic topicx”,你的同志,错过了这部分,是你的经纪人在PORT 2181上听,通常是9092。 更改commad为“./kafka-console-producer.sh --broker列表xxx.yyy.com:9092 --topic topicx”,然后再试一次


0
投票

我没有启动zookeeper或Kafka服务器,只需输入命令:

如果两者都没有运行,那么您列出的命令不应该起作用。

我还需要启动zookeeper和/或kafka服务器吗?

是的,你需要两个都运行,但不需要在同一台机器上。


如上所述,Kafka的默认端口是9092. Zookeeper是2181.看起来你已经把它们混合了。

描述主题(kafka-topics)命令仅通过Zookeeper(up until Kafka 2.2)完成。

要生产,你应该使用Kafka主机和端口(截至Kafka 0.9)。


0
投票

我终于搞定了这个。问题是,我试图写的主题的Kafka服务器是0.8.2.1版,我安装了最新版本。当我安装相同的版本时,kafka-console-producer.sh工作正常,无需启动zookeeper或本地Kafka服务器。

© www.soinside.com 2019 - 2024. All rights reserved.