仅在 GCP 中无法在 www.googleapis.com 上找到服务器

问题描述

我知道有几个与此问题类似的问题。但就我而言,这个问题只发生在 GCP 上。我们已经在 AKS (Azure) 中运行我们的服务将近一年,没有发生过一次。在我们迁移到 GCP GKE 之后,我们的 Python 应用程序的一些请求陷入了错误Unable to find the server at www.googleapis.com。在大多数情况下,请求有效,所以它似乎是随机的。我已经尝试增加 TCP 超时以及 Cloud Nat 中每个 VM 实例的最小最小端口数。我们正在使用 GKE 运行服务,并为网络设置了 Cloud Nat 网关。

GCP 上是否有任何可能导致此问题的专有设置?

解决方法

我想出了问题所在。 kube-dns 服务被调度到遭受高内存压力的节点,导致 kube-dns 被驱逐并重新启动。在此期间,某些请求将无法解决。为了解决这个问题,我创建了一个专用于 kube-system 服务的节点池,然后编辑了 kube-system 部署并设置了一个 nodeSelector,以便它们始终被安排到安全节点。之后,问题就停止了。