同一VPC上的GKE和GCE连接失败?

Fel*_*ero 3 vpc google-compute-engine google-cloud-platform kubernetes google-kubernetes-engine

我是 Google Cloud Platform 的新手,并且了解以下上下文:

我有一个作为 MongoDB 服务器运行的计算引擎虚拟机和一个作为 NodeJS 服务器运行的计算引擎虚拟机(已使用 Docker)。然后NodeJS应用程序通过默认的VPC内部IP连接到Mongo。现在,我尝试将 NodeJS 应用程序迁移到 Google Kubernetes Engine,但是当我将 NodeJS 应用程序 Docker 映像部署到集群时,无法连接到 MongoDB 服务器。

GCE 和 GKE 等所有服务都位于同一区域 (us-east-1)。

我做了一个硬测试,通过 SSH 访问 kubernetes 集群节点,部署一个简单的 MongoDB Docker 镜像,并尝试通过命令行连接到远程 MongoDB 服务器,但问题是一样的,尝试连接时超时。

我还检查了 GCP 上的防火墙设置以及bindIpMongoDB 服务器上的设置,它没有对此进行阻止。

有谁知道可能会发生什么?非常感谢。

Dar*_*ski 5

在我的例子中,从 GKE 到 GCE VM 的流量被 Google 防火墙阻止,即使两者位于同一网络(默认)。

我必须将集群详细信息中列出的集群 Pod 网络列入白名单:

Pod address range 10.8.0.0/14

https://console.cloud.google.com/kubernetes/list 在此输入图像描述

https://console.cloud.google.com/networking/firewalls/list

防火墙