专用池配置文件架构

私有池配置文件(私有池配置文件)中包含 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 则保留八个可能的 IP(3 位)。构建器虚拟机的最大数量限制为范围内的可用 IP 数量(范围内的可能 IP 总数减 2)。

有关 peeredNetworkIpRange 字段的示例,请参阅以下内容:

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

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-medium

后续步骤