带boostrap服务器的cloudera kafka命令行不工作

wooyq4lh  于 2021-06-07  发布在  Kafka
关注(0)|答案(1)|浏览(402)

看看说明书——https://www.cloudera.com/documentation/kafka/latest/topics/kafka_command_line.html
我正在运行这些测试命令行,其中一组可以工作,但另一组不行。
按照说明,它可以工作,但注意到它有“zookeeper”作为一个参数,我想它已经停止了。
制作人:

/usr/bin/kafka-console-producer --broker-list local-ip:9092 --topic test

消费者:

/usr/bin/kafka-console-consumer --bootstrap-server local-ip:9092 --topic test --from-beginning

上面的内容在cloudera版本上不起作用,但在我的独立kafka安装上起作用。
这适用于cloudera:

/usr/bin/kafka-console-consumer --zookeeper local-ip:2181 --topic test --from-beginning

试图理解cloudera的kakfa版本(3.0.0-1.3.0.0.p0.40?)和我的(2.11-0.11.0.1)之间有什么区别,或者必须有什么东西打开或关闭。
我看到了一些类似的主题,试着跟着他们,但都没有用。我想这和cloudera有关。

oogrdqng

oogrdqng1#

最新答案:
在我的例子中,我配置了两个代理,并为 offsets.topic.replication.factor 设置为3。因此,当kafka试图构建一个具有比可用代理更多副本的主题时,会抛出一个异常,而不会创建该主题。
解决办法是 offsets.topic.replication.factor = 2 再试一次。也许您需要再次删除并部署代理。
我不知道为什么,也许是cloudera的kafka版本中的一个bug,但是我通过本地的kafka测试解决了它。
我从网上下载了Kafka的最新版本https://kafka.apache.org/downloads 并更新了代理配置文件 config\server.properties 使用远程zookeeper服务器。有了这个,我就有了一个混合配置代理集群:
在我的笔记本电脑里
cloudera集群中的Zookeeper
使用此配置,我创建了一个主题,并在笔记本电脑上运行kafka控制台使用者和kafka控制台生产者,但要针对远程zookeeper:

$ kafka-topics --create --zookeeper zookeeper.cloudera-cluster:2181 --replication-factor 1 --partitions 1 --topic test
$ kafka-console-consumer --broker-list localhost:9092 --topic test
$ kafka-console-producer --broker-list localhost:9092 --topic test

这很有效。此外,使用这个主题 __consumer_offsets 已经自动创建,现在新的消费者版本完美地工作。此时,您可以删除创建的主题,停止本地代理并开始正常使用kafka集群。
这是cloudera发布的bug吗?也许cloudera的版本无法构建 __consumer_offsets 自动地?
Kafka版本下载:kafka_2.11-1.0.0.tgz
cloudera的Kafka版本:3.0.0-1.3.0.0.p0.40

相关问题