遵循《apache kafka快速入门指南》,我完成了以下步骤:
下载和解压 kafka_2.11-2.1.0.tgz
cd kafka_2.11-2.1.0 bin/zookeeper-server-start.sh config/zookeeper.properties
在同一方向的另一个终端,
bin/kafka-server-start.sh config/server.properties bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
. 跑步 echo $?
之后显示此命令以状态退出 0
现在是关键时刻。导游说:
如果运行list topic命令,现在可以看到该主题:
bin/kafka-topics.sh --list --zookeeper localhost:2181
> test
但是,这个命令没有输出,我正在测试一个软件,它试图在服务器上发送消息 "test"
主题崩溃,因为它为该主题找到0个分区。
我还有一个ruby程序,可以向kafka发送关于主题的消息 "test"
. 它失败并重试,我在kafka日志中看到了当时创建的主题,可以向它发送消息。但即使这样,列出主题的命令也不会返回任何结果。
为什么我不能显式地创建一个主题?为什么我不能列出按需创建的主题?如何排除故障?
日志
以下是我在日志中看到的:https://gist.github.com/nathanl/bea7a45a056b2d44146947ec88c29185
4条答案
按热度按时间6yjfywim1#
在mac10.13.6上,我遵循了相同的步骤,这里有一些故障排除步骤供您检查。
当您启动zookeeper时,您应该在标准输出中看到:
当你开始Kafka你应该看到在标准:
这个
kafka-topics
命令应该返回输出(您没有提到任何输出,这可能是某个东西在这个阶段不起作用的迹象):当你这么做的时候,在Kafka标准中你会看到
Created log for partition test-0
在日志信息中:主题将显示在列表中:
kr98yfug2#
我也面临同样的问题。但是,我发现脚本bin/kafka-topics.sh的内容在untar命令之后是空的。
所以,我再次下载了kafka,untar并检查脚本文件的内容,直到我在那里看到它,然后它就工作了。
hvvq6cgz3#
我在运行vpn时在mac上遇到了同样的问题,这导致了主机名解析失败。
我通过编辑解决了这个问题
server.properties
,添加行:pbpqsu0x4#
我也遇到了同样的问题。
首先检查
bin/kafka-topics.sh
里面有任何内容。然后继续清除zookeeper和kafka的所有tmp数据
rm -r /tmp/zookeeper
rm -r /tmp/kafka-log
然后再开始你的Zookeeper和Kafka。