我试着用卡夫卡。 所有配置都正确完成,但当我试图从控制台产生消息时,我一直得到以下错误

WARN Error while fetching metadata with correlation id 39 : 
     {4-3-16-topic1=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)

Kafka版本:2.11-0.9.0.0


当前回答

我让kafka作为Docker容器运行,类似的消息充斥在日志中。 KAFKA_ADVERTISED_HOST_NAME被设置为'kafka'。

在我的例子中,错误的原因是在“kafka”容器本身中缺少“kafka”的/etc/hosts记录。 因此,例如,在'kafka'容器中运行ping kafka将失败,使用ping: bad address 'kafka'

在Docker中,这个问题可以通过指定容器的主机名来解决。

实现它的选项:

Docker run——hostname… Docker运行-add-host… docker-compose中的主机名 AWS EC2任务定义中的主机名

其他回答

试试这个监听器=PLAINTEXT://localhost:9092 一定很有帮助

非常感谢

在服务器上添加侦听器设置后,问题得到解决。属性文件位于配置目录。 listener =PLAINTEXT://localhost(或您的服务器):9092 修改完成后重新启动kafka。使用版本2.11

对我来说,这是由于配置失误造成的 Docker端口(9093) Kafka命令端口"bin/ Kafka -console-producer.sh——broker-list localhost:9092——topic TopicName" 我检查了我的配置匹配端口,现在一切正常

如果你得到这样重复的错误消息:

Error while fetching metadata with correlation id 3991 : {your.topic=LEADER_NOT_AVAILABLE}

Or

Discovered group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:677)
(Re-)joining group (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:509)
Group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) is unavailable or invalid, will attempt rediscovery (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:729)
Discovered group coordinator 172.25.40.219:9092 (id: 2147483645 rack: null) (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:677)
Group coordinator 172.25.1.2:9092 (id: 2147483645 rack: null) is unavailable or invalid, will attempt rediscovery (org.apache.kafka.clients.consumer.internals.AbstractCoordinator:729)

然后,你需要像这样在kafka server.properties中配置监听器:

 listeners=PLAINTEXT://your.server.ip:9092

这是在Kafka 2.5.0和confluent 5.4.1平台上尝试的解决方案。

这可能与server.properties中的advertised.host.name设置有关。

可能发生的情况是,您的生产者试图找出谁是给定分区的领导者,找出它的advertised.host.name和advertised。端口并尝试连接。 如果这些设置没有正确配置,那么可能会认为领导者不可用。