gpt4 book ai didi

Docker 在 consul TCP 健康检查周期中重用端口

转载 作者:可可西里 更新时间:2023-11-01 02:50:42 28 4
gpt4 key购买 nike

例子:

时刻 1:Docker 运行容器 A 监听 32781(导出端口)->8000(服务端口)通过 TCP 连接(周期 10 秒)完成 Consul 健康检查。

时刻 2:Docker 重启容器 A 并在关闭时间(小于 10 秒)运行容器 B。现在32781端口是容器B(复用端口),新容器A得到了另一个端口。

但是下一个consul健康检查周期,32781端口是ok的,容器A的consul take是ok的。

如何解决问题?

最佳答案

在我看来,您必须注销一项服务,它是容器重启时的健康检查。 Consul API 提供了这样的机会,你只需要在你的微服务中使用它。如何准确地使其工作取决于您的服务构建方式。否则,Consul 无法确定某些服务是用另一个端口重新启动的。

关于Docker 在 consul TCP 健康检查周期中重用端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42922250/

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