2017-03-16 131 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並列出所有代理及其主題。但只有卡夫卡無法連接到它的動物園管理員。 –