Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 卡夫卡消费者无法连接到其zookeeper_Apache Kafka_Apache Zookeeper_Kafka Consumer Api - Fatal编程技术网

Apache kafka 卡夫卡消费者无法连接到其zookeeper

Apache kafka 卡夫卡消费者无法连接到其zookeeper,apache-kafka,apache-zookeeper,kafka-consumer-api,Apache Kafka,Apache Zookeeper,Kafka Consumer Api,我让kafka和zookeeper在ec2实例上以独立模式运行。我在上面创建了一个名为dev_spark1的主题。但是,当我试图从命令行运行consumer时,命令出现以下错误: ./bin/kafka-console-consumer.sh--zookeeper 172.31.8.226:9092--topic dev_spark1 Exception in thread "main" org.I0Itec.zkclient.exception.ZkTimeoutException: Un

我让kafka和zookeeper在ec2实例上以独立模式运行。我在上面创建了一个名为dev_spark1的主题。但是,当我试图从命令行运行consumer时,命令出现以下错误:

./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)
线程“main”org.I0Itec.zkclient.Exception.ZkTimeoutException中的异常:无法在超时时间内连接到zookeeper服务器:6000 位于org.I0Itec.zkclient.zkclient.connect(zkclient.java:880) 在org.I0Itec.zkclient.zkclient.(zkclient.java:98) 位于org.I0Itec.zkclient.zkclient.(zkclient.java:84) 在kafka.consumer.ZookeeperConsumerConnector.connectZk(ZookeeperConsumerConnector.scala:171) 在卡夫卡。消费者。ZookeeperConsumerConnector。(ZookeeperConsumerConnector.scala:126) 在卡夫卡。消费者。ZookeeperConsumerConnector。(ZookeeperConsumerConnector.scala:143) 位于kafka.consumer.consumer$.create(ConsumerConnector.scala:94) 位于kafka.tools.ConsoleConsumer$.main(ConsoleConsumer.scala:145) 位于kafka.tools.ConsoleConsumer.main(ConsoleConsumer.scala)
您确定可以从卡夫卡所在的机器访问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,可以使用

尝试增加zookeeper连接超时属性,并检查您使用的是哪个版本的kafka?还可以为日志添加调试级别吗?我有kafka_2.10-0.8.2.1。我在属性文件中将zookeeper连接超时从6000增加到60000,但这并不反映。zookeeper和kafka都在同一台机器上运行。我可以连接到zookeeper外壳并列出所有代理及其主题。但只有卡夫卡无法连接到它的动物园管理员。