Google Cloud:共享 VPC 和 App Engine

Google Cloud:共享 VPC 和 App Engine

我正在使用 Google Cloud,其设置如下:

共享 VPC 主机项目:有一个名为“production”的网络和一个名为“app1”的子网,与所有其他项目共享。

App1 项目:有一个 VM 实例和一个在 Node 上运行的 App Engine。VM 实例直接连接到共享 VPC 网络的子网。

问题是,似乎无法将 App Engine 连接到同一网络。当我在文件中插入参数时,app.yaml它说找不到网络(它仅在当前项目上搜索)。

那么,如何将 App Engine 实例连接到 VM?我尝试创建网络对等,但没有成功。

答案1

最后,使用 AppEngine Flex 可以实现这一点:https://cloud.google.com/appengine/docs/flexible/nodejs/using-shared-vpc

在 app.yaml 文件中,使用网络设置名称字段指定共享 VPC 网络的完全限定名称:

网络:名称:项目/HOST_PROJECT_ID/global/networks/NETWORK_NAME

在哪里

HOST_PROJECT_ID 是共享 VPC 宿主项目的 GCP 项目 ID。NETWORK_NAME 是共享 VPC 网络的名称。

要将服务配置为名为 SUBNETWORK_NAME 的子网的一部分,还需设置 >subnetwork_name 字段:

网络:名称:项目/HOST_PROJECT_ID/global/networks/NETWORK_NAME 子网络名称:SUBNETWORK_NAME

答案2

在对您想要实现的目标进行一些调查之后,您可以检查以下几点:

  • 首先,我想请你确认应用程序1子网与 App Engine 应用程序位于同一区域您正在尝试部署。请记住,如上所述在文档中,子网必须与尝试连接的应用程序位于同一区域。否则,可能会出现错误。您可以按照以下方式在子网中subnet not found指定区域(例如)us-central这些步骤;它必须us-central与运行 App Engine 应用程序的区域相同(在本例中)。创建应用程序时设置应用程序的区域后,您无法更改应用程序的区域,因此您可以转到App Engine 仪表板或运行命令gcloud app describe
  • 你也可以尝试VPC 对等连接,适用于将 Compute Engine 实例连接到 App Engine 应用。为此,您可以按照此设置指南

答案3

遗憾的是,您无法将 Google App Engine (GAE) 连接到通过共享 VPC 共享的网络。从共享 VPC文档:

  • 与共享 VPC 网络关联的服务项目中的 GAE Flexible 不受支持。

按照建议,你可以使用VPC 对等连接或者你可以设置VPN 连接将 GAE 连接到您的 VM 之间的项目

相关内容