配置共享 VPC

本页面介绍了 Cloud Composer 的共享 VPC 网络和宿主项目要求。

通过共享 VPC,组织可以在项目级层建立预算和访问权限控制边界,并使用专用 IP 跨这些边界进行安全高效的通信。在共享 VPC 配置中,Cloud Composer 可以调用同一组织中其他 Google Cloud 项目中托管的服务,而无需将服务公开给公共互联网。

共享 VPC 的准则

  • 共享 VPC 要求您指定网络和子网所属的宿主项目以及与该宿主项目关联的服务项目。当 Cloud Composer 参与共享 VPC 时,Cloud Composer 环境位于服务项目中。

    适用于 Cloud Composer 的服务和宿主项目
  • 如需设置共享 VPC,请在宿主项目中选择以下 IP 范围:

    • Cloud Composer 用作其计算层的 GKE 节点所用子网的主要 IP 范围
    • GKE Service的次要 IP 范围
    • GKE pod 的次要 IP 范围
  • 次要 IP 范围不能与此 VPC 中的任何其他次要范围重叠。

  • 确保次要范围足以满足集群大小和预期增长的需求。

    次要范围的网络前缀不能超过以下值。指定等于或小于这些值的网络前缀。指定的值越小,CIDR 范围就越大。

    • Pod:/21
    • 服务:/27

    请参阅创建 VPC 原生集群,了解有关配置 pod 的次要范围服务的准则。

  • 子网的主要地址范围应当能够适应预期增长的需求,并且必须考虑预留 IP 地址

    子网主要地址范围的网络前缀不能超过 /29。指定等于或小于此值的网络前缀。指定的值越小,CIDR 范围就越大。

准备工作

  1. 找到以下项目 ID 和项目编号
    • 宿主项目:共享 VPC 网络所属的项目。
    • 服务项目:包含 Cloud Composer 环境的项目。
  2. 让您的组织做好准备
  3. 在宿主项目和服务项目中启用 GKE API

宿主项目配置

  1. 选择以下任一选项以分配和配置网络资源。

    对于每个选项,您必须为 pod 和服务的次要 IP 地址范围命名。

  2. 设置共享 VPC 并关联一个服务项目,您将使用该项目来托管 Cloud Composer 环境。

    • 如果已存在共享 VPC,请从关联服务项目步骤开始。
    • 关联项目时,保留默认的 VPC 网络权限。
  3. 在宿主项目中:

    1. 拥有 Google API 服务帐号 SERVICE_PROJECT_NUMBER@cloudservices.gserviceaccount.com 的修改权限。

    2. 对于此帐号,请在项目级层添加其他角色 compute.networkUser。这是与共享 VPC 一起使用的代管式实例组的一项要求,因为此类型的服务帐号会执行创建实例等任务。

  4. 在宿主项目中:

    1. 可以修改 GKE 服务帐号 service-SERVICE_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com 的权限。
    2. 对于每个服务帐号,请添加其他角色 compute.networkUser。为此,请转到 VPC 网络列表并选择目标网络。此权限必须在网络级层授予,才能允许服务帐号设置 Cloud Composer 所需的 VPC 对等互连架构
  5. 在宿主项目中:

    1. 修改服务项目的 GKE 服务帐号的权限。
    2. 对于此帐号,请添加其他角色 Host Service Agent User。这样,服务项目的 GKE 服务帐号便可使用宿主项目的 GKE 服务帐号来配置共享网络资源。
  6. 在宿主项目中:

    1. 确保 DNS *.pkg.dev 解析为 199.36.153.4/30。为此,按以下方式创建新区域:CNAME *.pkg.dev -> pkg.dev。 pp.dev -> 199.36.153.4、199.36.153.5、199.36.153.6、199.36.153.7
  7. 在宿主项目中,如果这是第一个 Cloud Composer 环境,则预配 Composer Agent 服务帐号:gcloud beta services identity create --service=composer.googleapis.com

  8. 在宿主项目中:

    1. 拥有 Composer Agent 服务帐号 (service-SERVICE_PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com) 的修改权限
    2. 对于此帐号,请添加其他角色:
      • 对于专用 IP 环境,请添加 Composer Shared VPC Agent 角色。
      • 对于公共 IP 环境,请添加 Compute Network User 角色。

您已完成宿主项目的共享 VPC 网络配置。

后续步骤

使用 Cloud SDK 创建 Cloud Composer 环境,并以配置参数的形式提供宿主项目的网络和子网。