专用池配置文件架构

私有池配置文件(私有池配置文件)中包含 Cloud Build 在根据您的规范创建专用池时需要遵循的说明。专用池配置文件包含您要用于专用池的磁盘大小和机器类型等信息。当您使用 gcloud 工具或 Cloud Build API 创建和管理专用池时,需要专用池配置文件。

专用池配置文件的结构

您可以使用 YAML 或 JSON 语法编写专用池配置文件。如需使用 curl 创建和管理专用池,请编写 JSON 格式的专用池配置文件。如需使用 gcloud 工具创建和管理专用池,请编写 YAML 或 JSON 格式的专用池配置文件。

专用池配置文件具有以下结构:

YAML

privatePoolV1Config:
  networkConfig:
    egressOption: NO_PUBLIC_EGRESS
    peeredNetwork: 'PEERED_NETWORK'
    peeredNetworkIpRange: 'PEERED_NETWORK_IP_RANGE'
  workerConfig:
    diskSizeGb: 'PRIVATE_POOL_DISK_SIZE'
    machineType: PRIVATE_POOL_MACHINE_TYPE

JSON

{
  "privatePoolV1Config": {
    "networkConfig": {
      "egressOption": "NO_PUBLIC_EGRESS",
      "peeredNetwork": "PEERED_NETWORK",
      "peeredNetworkIpRange": "PEERED_NETWORK_IP_RANGE"
    },
    "workerConfig": {
      "diskSizeGb": "PRIVATE_POOL_DISK_SIZE",
      "machineType": "PRIVATE_POOL_MACHINE_TYPE"
    }
  }
}

下面介绍了专用池配置文件中的字段:

networkConfig

这是一个可选字段。仅当您要将您的 VPC 网络与服务提供方网络对等互连时,才指定 networkConfig

egressOption

这是一个可选字段。如果要在 VPC Service Controls 边界内创建专用池,请将此字段的值设置为 NO_PUBLIC_EGRESS。如果您不在专用池配置文件中添加此字段,系统会启用公共出站流量。如需了解如何为专用池设置 VPC Service Controls,请参阅使用 VPC Service Controls

peeredNetwork

如果您的专用池配置文件包含 networkConfig 字段,则此字段为必填字段。将此字段的值设置为与服务提供方网络对等互连的 VPC 网络的网络资源网址。网络资源网址必须采用格式 projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME,其中 NETWORK_PROJECT_ID 是 VPC 网络所在的 Google Cloud 项目的 ID,NETWORK_NAME 是 VPC 网络的名称。如果未指定值,则 Cloud Build 默认使用服务提供方网络

peeredNetworkIpRange

这是一个可选字段。设置此字段的值,以指定可在对等网络的分配范围内分配给虚拟机的内部 IP 地址范围。如果指定的 IP 地址范围无法在专用连接的范围内分配(例如,由于大小限制或起始 IP 地址无效),则无法创建专用池。

peeredNetworkIpRange 使用无类别域间路由 (CIDR) 表示法指定,格式为 'STARTING_IP/SUBNET_PREFIX_SIZE'。如果使用此字段,则必须指定 SUBNET_PREFIX_SIZESUBNET_PREFIX_SIZE 决定 IP 地址范围的大小。此值必须以斜杠 (/) 开头,且值小于或等于 29。STARTING_IP 部分是可选的,用于指定范围的起始地址。如果未指定 STARTING_IP,系统会从专用连接范围内自动分配一个起始地址。如果未为 peeredNetworkIpRange 指定任何值,系统将使用默认值 /24,该值会自动分配一个范围为 256 个 IP 地址的起始 IP 地址。

SUBNET_PREFIX_SIZE 的值不得超过 29。数字越大,指定的子网前缀就越大,可用的 IP 就越少,IP 范围就越小。由于 IP 地址为 32 位,因此前缀大小为 /24 时,范围内允许 256 个可能的 IP 地址(8 位),而前缀大小为 /29 时,范围内允许 8 个可能的 IP 地址(3 位)。构建器虚拟机的数量上限为该范围内可用 IP 的数量(该范围内可能的 IP 总数减去 2)。

请参阅以下 peeredNetworkIpRange 字段示例:

  • 192.168.0.0/24 指定了从 192.168.0.0 开始且子网前缀大小为 24 的 IP 地址范围(256 个 IP 地址,其中 254 个 IP 地址可用)。
  • /29 指定一个范围,其中包含自动确定的起始 IP 地址,并且子网前缀大小为 29(8 个 IP 地址,其中 6 个可用)。

workerConfig

这是必填字段。它包含专用池的配置选项。

diskSizeGb

这是一个可选字段。使用此字段指定专用池实例的磁盘大小(以 GB 为单位)。指定一个大于或等于 100 且小于或等于 2000 的值。如果未在专用池配置文件中添加此字段,或者将 0 指定为此字段的值,则 Cloud Build 会使用默认值 100。

machineType

这是一个可选字段。使用此字段为专用池实例指定 Compute Engine 机器类型。请指定以下机器类型之一:

  • e2-medium
  • e2-standard-2
  • e2-standard-4
  • e2-standard-8
  • e2-standard-16
  • e2-standard-32
  • e2-highmem-2
  • e2-highmem-4
  • e2-highmem-8
  • e2-highmem-16
  • e2-highcpu-2
  • e2-highcpu-4
  • e2-highcpu-8
  • e2-highcpu-16
  • e2-highcpu-32

如果您未指定值,则 Cloud Build 将使用默认值 e2-standard-2

后续步骤