gpt4 book ai didi

kubernetes - 代理重启后java kafka-client无法重新连接

转载 作者:行者123 更新时间:2023-12-02 03:43:20 30 4
gpt4 key购买 nike

我在使用 kafka-streams 和 spring-kafka 应用程序时遇到同样的问题。第一个使用 kafka-clients:1.0.0 库,而另一个版本 1.0.2

kubernetes 中只有一个代理实例在运行 (KAFKA_ADVERTISED_LISTENERS="PLAINTEXT://${POD_IP}:9092")。它是有状态的集,并且可以通过 headless 服务内部端点从客户端应用程序访问(尽管我已经尝试过集群 ip 并且问题是相同的)

一旦我删除这个 kafka pod 并重新创建它,我的客户端应用程序就无法重新连接。 Pod 确实是使用另一个 IP 地址重新创建的,但由于我是通过服务内部端点访问它,所以我希望我的客户端应用程序能够解析这个新地址,但它没有发生。

kafka-clients 库正在记录“找到最少加载的节点 [old_ip]:9092 (id: 0rack: null)”,而该地址上不再运行任何内容

JVM TTL 缓存不是问题,因为我已将其设置为定期刷新。

重新启动客户端应用程序可以解决问题

如果在 KAFKA_ADVERTISED_LISTENERS 中提供 {POD_IP} 会导致此问题,那么提供 pod 的主机名是否可以解决此问题?或者有没有办法指导我的客户解析这个新地址?

最佳答案

好像和KAFKA-7755有关系。将客户端版本更新到 2.2.0/2.1.1 应该会有所帮助。

关于kubernetes - 代理重启后java kafka-client无法重新连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52611812/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com