用kafka命令发送消息时候,一直报WARN Error while fetching metadata with correlation id 0 : {test=UNKNOWN_TOPIC_OR_PARTITION}?

小蕊 发表于: 2016-10-08   最后更新时间: 2016-10-08 18:25:58   56,080 游览

使用发送命令

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

然后随便打入一条消息,就一直刷警告 WARN Error while fetching metadata with correlation id 0 : {test=UNKNOWN_TOPIC_OR_PARTITION},请问有人遇到过吗?

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
nihao
[2016-10-08 17:58:54,821] WARN Error while fetching metadata with correlation id 0 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2016-10-08 17:58:55,026] WARN Error while fetching metadata with correlation id 1 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2016-10-08 17:58:55,128] WARN Error while fetching metadata with correlation id 2 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2016-10-08 17:58:55,230] WARN Error while fetching metadata with correlation id 3 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
[2016-10-08 17:58:55,332] WARN Error while fetching metadata with correlation id 4 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)
发表于 2016-10-08
添加评论

你看下kafka集群的配置文件,是否设置了auto.create.topics.enable=false

如果有,就设置为ture,当topic不存在,导致的,允许它自动创建。

或者你也可以手动创建topic:

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 2 --partitions 4 --topic test
小蕊 -> 半兽人 8年前

谢谢,是由于主题没创建导致的,生产是禁止自动创建的。我用命令就好啦

漂泊的美好 -> 小蕊 8年前

这个topic可能是没有leader,我曾经遇到过这个问题。

你好,没有leader是什么意思?要怎么让topic产生一个leader呢?

邱响 -> 漂泊的美好 6年前

我的也是没有leader,这种情况是怎么解决的??

./bin/kafka-topics.sh --zookeeper zk1.node:12181,zk2.node:12181,zk3.node:12181  --describe --topic test05
Topic:test05 PartitionCount:3 ReplicationFactor:3 Configs:
Topic: test05 Partition: 0 Leader: none Replicas: 2,1,0 Isr:
Topic: test05 Partition: 1 Leader: none Replicas: 0,2,1 Isr:
Topic: test05 Partition: 2 Leader: none Replicas: 1,0,2 Isr:
邱响 -> 邱响 6年前

问题解决了:

无法与kafka集群建立连接,无法获取meta信息导致的;通常需要修改kafka中的server.properties文件,调整“listeners”、“host.name”配置项;其中“listeners”中明确指定绑定到本机的内网IP,"host.name"保持默认或者不声明

解决:增加一行配置host.name=zk1.node解决

半兽人 -> 邱响 6年前

哥们,那你这个错误应该是timeout吧。

花开那年 -> 半兽人 3年前

replication-factor partitions是什么意思?

半兽人 -> 花开那年 3年前

partitions:分区的数量。
replication-factor:分区的副本数。

看到这个情况,也曾出现过,经过是这样的,上午topic还是好好的,下午突然就用不了了,所有的topic的producer都报这个错误。然后删除topic,重建,授权错误仍然出现。查看原码,发现会导致这个错误的地方还是蛮多的,有producer端、consumer端、transaction。最后自已好了。原因一直没找到

半兽人 -> 飞鸽 6年前

还有一个引起的原因,你的数据不要放到/tmp中。

飞鸽 -> 半兽人 6年前

数据是放在 /opt/kafka-log 下面 , 安装路径 /opt/kafka/

你的 --topic 到底 是test  还是  nihao ? 只能跟一个参数的

你的答案

查看kafka相关的其他问题或提一个您自己的问题