到目前为止,更新 Pod 的镜像并没有破坏任何东西。然而,最后一次,pod 本身在集群中获得了一个新的 IP,并且我的服务变得无法访问(502 Bad Gateway)。我调试了请求的每一步以找到问题,从浏览器到容器。在 ingress-nginx-controller pod 的日志中,我发现了这一行可疑的行:
2024/05/15 15:36:27 [error] 7032#7032: *230837456 connect() failed (113: Host is unreachable) while connecting to upstream, client: <client-ip>, server: mysubdomain.mydomain.com, request: "GET / HTTP/2.0", upstream: "http://10.244.0.24:<port>/", host: "mysubdomain.mydomain.com"
上游IP(10.244.0.24)对应于我更新之前的旧Pod IP。更新后,pod IP 变为 10.244.0.61。
我的集群第一次出现这种情况。通常情况下,pod IP 可能不会随着更新而改变,或者当上游 ip 发生变化时,ingress-nginx-controller 可能会更新。或者也许是别的东西,我不知道它是如何工作的,但我看到它是这样的。到现在为止。
重启节点没有解决。 ingress-nginx-controller pod 不会启动。一直重启。
预先感谢您分享您的知识。深表赞赏。