我们在 GCP 上有一堆具有静态外部 IP 地址的计算引擎虚拟机。我们观察到外部 IP 地址一次又一次地变得不可用。不接受 http、ssh 或 ICMP 连接。通常,事实是通过 SSH 连接尝试发现(或可能触发?)。服务器还活着。我可以通过串行控制台连接并验证这一点。来自 VM 的出站连接仍然有效(我们有 cron 作业检查来自 Internet 的文件,并且在这些中断期间它们确实运行并正常完成),所以这不是 VM nic 问题。
一段时间后(大约 10 分钟),外部 ip 本身再次可用。
关于如何进一步调查问题根本原因的任何想法?
事实证明,这根本不是 GCP 问题。我们的虚拟机运行 Ubuntu,它默认安装sshguard。如果 Sshguard 检测到连接失败的突发,它将阻止 IP。
每次我必须运行 Ansible 来更新 VM 配置并忘记将我的私有 SSH 密钥添加到身份验证代理时,都会出现“中断”。Ansible 多次尝试连接,但每次都失败。Sshguard 不喜欢这样,并阻止了所有端口和协议的 IP。