Spring boot ';分区具有没有匹配侦听器的引导代理';卡夫卡重启后的库伯内特斯

Spring boot ';分区具有没有匹配侦听器的引导代理';卡夫卡重启后的库伯内特斯,spring-boot,kubernetes,apache-kafka,azure-aks,Spring Boot,Kubernetes,Apache Kafka,Azure Aks,我在kubernetes集群中运行了几个通过kafka进行通信的spring boot应用程序。使用比特纳米/卡夫卡头盔图部署卡夫卡 在kafka代理(我只有一个实例)重新启动之前,一切正常。在这之后,我得到了producer'X分区的leader代理没有匹配的侦听器'。。。为了解决这个问题,我必须重新设置整个集群以使其正常工作,这意味着要关闭所有应用程序,删除kafka和卷,并将所有内容放回原处 找到了一些关于“广告听众”的东西,但没有任何效果。 例如: 对我来说,问题是,为什么它在一开始工

我在kubernetes集群中运行了几个通过kafka进行通信的spring boot应用程序。使用比特纳米/卡夫卡头盔图部署卡夫卡

在kafka代理(我只有一个实例)重新启动之前,一切正常。在这之后,我得到了producer'X分区的leader代理没有匹配的侦听器'。。。为了解决这个问题,我必须重新设置整个集群以使其正常工作,这意味着要关闭所有应用程序,删除kafka和卷,并将所有内容放回原处

找到了一些关于“广告听众”的东西,但没有任何效果。 例如:

对我来说,问题是,为什么它在一开始工作,只有在崩溃后才会停止

Thx 奥利弗

对我来说,问题是,为什么它在开始时工作,只有在崩溃后才停止

当您的Kafka代理重新启动时,它将获得一个新的IP地址。您必须确保新的IP地址反映在您的代理属性中,即它必须包含在播发的侦听器中

您可以在Kafka部署的基础上提供一个Kubernetes服务,并将其作为一种解决方法包含在您的广告侦听器中

另一种方法是设置有状态,以便代理pod始终获得相同的IP地址。关闭您的代理添加播发的
侦听器
,并将其设置为代理pod IP并启动它


一条经验法则是,您的
kafkacat
主题元数据不得返回无法访问的地址。

thx获取答案。。我还认为重启后IP发生了变化。我想知道的是,我已经有了一个服务,当我在kafka失败后查看日志文件时,spring boot应用程序会使用这个服务:java.io.IOException:无法解析地址:kafka-0.kafka-headless.xy.svc.cluster.local:9092@IEE1394您是否能够
telnet kafka-0.kafka-headless.xy.svc.cluster.local 9092
?是我可以从网络中的一个busybox进行telnetcluster@IEE1394然后,您可能需要检查您的adverted.listeners,看看它是否反映了相同的情况。您是否尝试使用
kafkacat
获取主题元数据并查看其中的IP?目前我没有kafkacat。。我将它手动添加到广告的侦听器中,并尝试一下