执行Kafka主题命令时出错:等待节点分配超时。操作系统赢10

时间:2019-10-14 12:18:11

标签: apache-kafka

我已经在Windows 10上配置了kafka_2.11-2.3.0和apache-zookeeper-3.5.5-bin,但是在运行主题创建命令时,出现以下错误:

C:\kafka_2.11-2.3.0>.\bin\windows\kafka-topics.bat --create --bootstrap-server 127.0.0.1:2181 --partitions 1 --replication-factor 1 --topic testD1
Error while executing topic command : org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
[2019-10-14 16:42:40,603] ERROR java.util.concurrent.ExecutionException: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.
        at org.apache.kafka.common.internals.KafkaFutureImpl.wrapAndThrow(KafkaFutureImpl.java:45)
        at org.apache.kafka.common.internals.KafkaFutureImpl.access$000(KafkaFutureImpl.java:32)
        at org.apache.kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89)
        at org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:260)
        at kafka.admin.TopicCommand$AdminClientTopicService.createTopic(TopicCommand.scala:178)
        at kafka.admin.TopicCommand$TopicService$class.createTopic(TopicCommand.scala:149)
        at kafka.admin.TopicCommand$AdminClientTopicService.createTopic(TopicCommand.scala:172)
        at kafka.admin.TopicCommand$.main(TopicCommand.scala:60)
        at kafka.admin.TopicCommand.main(TopicCommand.scala)
Caused by: org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignment.

在stackoverflow中的某处读取内容以在server.properties文件中添加listeners = PLAINTEXT://127.0.0.1:9092,但未能按预期进行。

3 个答案:

答案 0 :(得分:2)

我在Linux上遇到了同样的问题。推荐的创建主题的方法仍然是通过代理,您不需要直接连接到zookeeper。

事实证明,连接到TLS端点时,shell脚本需要更多配置:

  1. 将您的jdk链接的证书复制到一个临时位置:
cp /usr/lib/jvm/java-11-openjdk-amd64/lib/security/cacerts /tmp/kafka.client.truststore.jks
  1. 制作属性文件(例如client.properties)
security.protocol=SSL
ssl.truststore.location=/tmp/kafka.client.truststore.jks

然后尝试再次运行脚本,同时在属性文件中传递选项--command-config,例如:

./kafka-topics.sh --bootstrap-server <server>:<port> --list --command-config client.properties

请注意,不同脚本之间的选项不一致,对于控制台使用者/生产者,您需要: --consumer.config--producer.config

答案 1 :(得分:1)

从 Kafka 2.2 开始,使用 bootstrap-server 127.0.0.1:9092 如下

kafka-topics --bootstrap-server 127.0.0.1:9092 --topic first_topic --create --partitions 3 --replication-factor 1

答案 2 :(得分:0)

enter image description here 用Zookeeper替换bootstrap-server可以解决此问题。