我在ec2实例上以独立模式运行kafka和zookeeper。我在其上创建了一个名为dev_spark1的主题。但是当我尝试从命令行运行使用者时,为命令提供了以下错误:
./ 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 :(得分:0)
您确定可以从拥有kafka的计算机上访问zookeeper服务器吗?
通常,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