我有一个带有 2 个带有 openconnect vpn 代理容器的 nginx 副本的部署(一个 pod 只有一个容器)。
它们开始时没有任何问题并且一切正常,但是一旦连接崩溃并且我的活性探测失败,nginx 容器将重新启动,最终以 CrashLoopbackoff 结束,因为 openconnect 和 nginx 重新启动失败
nginx:
host not found in upstream "example.server.org" in /etc/nginx/nginx.conf:11
打开连接:
getaddrinfo failed for host 'vpn.server.com': Temporary failure in name resolution
似乎 /etc/resolv.conf 是由 openconnect 编辑的,并且在 pod 重新启动时它保持不变(尽管它不是持久卷的一部分),我相信整个容器应该从一个干净的 docker 映像运行, /etc/resolv.conf 没有被修改,对吧?
修复 CrashLoopback 的唯一方法是删除 pod,然后部署 rc 运行一个可以工作的新 pod。
创建一个新的 pod 与当 pod 中的容器被 liveness 探针 restartPolicy: Always 重启时有什么不同?容器是否以干净的图像重新启动?