连接到 VPC 网络

本页面介绍了如何使用无服务器 VPC 访问通道将 Cloud Functions 直接连接到 VPC 网络,从而允许访问 Compute Engine 虚拟机实例、Memorystore 实例以及具有内部 IP 地址的任何其他资源。

如需使用无服务器 VPC 访问通道,您首先必须创建一个无服务器 VPC 访问通道连接器来处理与 VPC 网络的通信。创建连接器后,您可以将 Cloud Functions 配置为使用该连接器。

创建无服务器 VPC 访问通道连接器

如需了解有关创建无服务器 VPC 访问通道连接器的详细说明,请参阅创建连接器

将函数配置为使用连接器

您可以通过 Google Cloud Console 或 gcloud 命令行工具将函数配置为使用连接器:

控制台

  1. 在 Cloud Console 中转到 Cloud Functions 概览页面:

    转到 Cloud Functions

  2. 点击创建函数。或者,点击现有函数以转至其详情页面,然后点击修改

  3. 点击变量、网络和高级设置以展开高级设置。

  4. 连接标签页的 VPC 连接器字段中输入连接器的名称,或清除该字段以断开服务与 VPC 网络的连接。

gcloud

使用 gcloud functions deploy 命令部署该函数并指定 --vpc-connector 标志:

gcloud functions deploy FUNCTION_NAME \
--vpc-connector CONNECTOR_NAME \
FLAGS...

其中:

  • FUNCTION_NAME 是函数的名称。
  • CONNECTOR_NAME 是连接器的名称。
  • FLAGS... 是指在函数部署期间传递的其他标志。

使用 --clear-vpc-connector 标志断开函数与 VPC 网络的连接:

gcloud functions deploy FUNCTION_NAME \
--clear-vpc-connector \
FLAGS...

如需更好地控制通过连接器路由哪些请求,请参阅出站流量设置

连接到共享 VPC 网络

如果您的组织使用共享 VPC,则共享 VPC 服务项目中的 Cloud Functions 函数可以在对共享 VPC 宿主项目进行一些配置后连接到共享 VPC 网络。

  1. 确保宿主项目的管理员完成使用共享 VPC 网络中所述的设置。此设置包括在宿主项目中创建无服务器 VPC 访问通道连接器并将其连接到共享 VPC 网络。
  2. 在服务项目中启用 Serverless VPC Access API:

    启用 API

  3. 完成宿主项目设置后,如果您在服务项目中部署函数,则可以使用连接器的完全限定名称来指定宿主项目的连接器:

    gcloud functions deploy FUNCTION_NAME \
    --vpc-connector projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME \
    FLAGS...
    

    这会将您的函数连接到共享 VPC 网络。

后续步骤