2017-03-16 177 views
0

我有一个ECAF实例上的独立模式下运行kafka和zookeeper。我有一个名为dev_spark1的主题在它上面创建。但是,当我试图运行命令行的消费,给了我下面的错误命令:kafka消费者无法连接到其动物园管理员

./bin/kafka-console-consumer.sh --zookeeper 172.31.8.226:9092 --topic dev_spark1

Exception in thread "main" org.I0Itec.zkclient.exception.ZkTimeoutException: Unable to connect to zookeeper server within timeout: 6000 
     at org.I0Itec.zkclient.ZkClient.connect(ZkClient.java:880) 
     at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:98) 
     at org.I0Itec.zkclient.ZkClient.<init>(ZkClient.java:84) 
     at kafka.consumer.ZookeeperConsumerConnector.connectZk(ZookeeperConsumerConnector.scala:171) 
     at kafka.consumer.ZookeeperConsumerConnector.<init>(ZookeeperConsumerConnector.scala:126) 
     at kafka.consumer.ZookeeperConsumerConnector.<init>(ZookeeperConsumerConnector.scala:143) 
     at kafka.consumer.Consumer$.create(ConsumerConnector.scala:94) 
     at kafka.tools.ConsoleConsumer$.main(ConsoleConsumer.scala:145) 
     at kafka.tools.ConsoleConsumer.main(ConsoleConsumer.scala) 
+0

尝试增加饲养员连接超时属性,并检查 – mbaxi

+0

你使用哪种版本的卡夫卡?您还可以为日志添加DEBUG级别吗? –

+0

我有kafka_2.10-0.8.2.1。而且我已经将属性文件中的动物园管理员连接超时从6000增加到60000,但它并不反映。 –

回答

0

你确定动物园管理员服务器可以从你有卡夫卡的机器上访问吗?

通常zookeeper侦听端口2181,kafka侦听端口9092.在你的命令中,你试图通过端口9092连接到172.31.8.226上的zookeeper,这是正确的。

其他的方法是,先在你的zookeeper机器上运行这个命令,然后在kafka机器上运行这个命令,并检查你是否可以连接并尝试zookeeper。

bin/zookeeper-shell.sh --zookeeper 172.31.8.226:9092 

如果您有运行UI的能力,你可以使用ZooInspector

+0

zookeeper和kafka都在同一台机器上运行。 –

+0

我可以连接到zookeeper shell并列出所有代理及其主题。但只有卡夫卡无法连接到它的动物园管理员。 –