我创建了一个有4个节点的Kafka集群,一个有3个节点的Zookeeper集群。Kafka的版本是v2.4.0,Zookeeper的版本是v3.5.6。Kafka集群成功启动,并可以成功地与Zookeeper集群中的一个节点建立连接(已检查Kafka日志(,以便在使用--bootstrap-server
选项时创建/列出主题,从该集群中生成/消费消息。但是,一旦使用--zookeeper
选项,事情就会开始失败。
我还尝试使用独立zookeeper安装附带的zkCli.sh
实用程序列出kafka代理,但是,我得到了一个空列表[]
。
使用的命令:
./zkCli.sh -server localhost:2181
ls /brokers/ids
尽管如此,在使用echo stat | nc localhost 2181
时,我可以看到控制台上打印的kafka代理列表。
我在这里有点困惑,关于我的kafka集群是如何操作的,即使指向我的zookeeper集群的查询失败了&事实上,我无法使用zkCli
实用程序列出活动的kafka代理。
对此有任何见解,我们将不胜感激。
检查Zookeeper chroot路径的值。如果已设置,则应使用以下命令:
./zkCli.sh -server localhost:2181/zookeeper_chroot_path
ls /brokers/ids
localhost:2181和zookeeper_chroot_path 之间不应有空格
使用zookeeper命令行处理程序时,由于命令行中有多余的空间,因此经常会出现此问题。只是要注意这一点。