私人集區設定檔結構定義

私人集區設定檔 (私人集區設定檔) 包含讓 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 欄位,則這是必填欄位。將這個欄位的值設為與服務生產端網路對等互連的虛擬私有雲網路網路資源網址。網路資源網址必須採用 projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME 格式,其中 NETWORK_PROJECT_ID 是儲存虛擬私有雲網路的 Google Cloud 專案 ID,NETWORK_NAME 則是虛擬私有雲網路的名稱。如果您未指定值,Cloud Build 預設會使用服務供應者網路

peeredNetworkIpRange

這是選填欄位。設定這個欄位的值,指定 VM 可指派至對等網路的分配範圍內的內部 IP 範圍。如果指定的 IP 範圍無法在私人連線範圍內分配 (例如,由於大小限制或無效的起始 IP),就無法建立私人集區。

peeredNetworkIpRange 是以無類別跨網域路由 (CIDR) 標記法指定,格式為 'STARTING_IP/SUBNET_PREFIX_SIZE'。如果使用這個欄位,就必須指定 SUBNET_PREFIX_SIZESUBNET_PREFIX_SIZE 會決定 IP 範圍的大小。開頭必須為斜線 (/),且值須小於或等於 29。STARTING_IP 部分為選用,可指定範圍的起始位址。如果未指定 STARTING_IP,系統會從私人連線範圍內自動指派起始位址。如果未指定 peeredNetworkIpRange 的值,系統會使用 /24 的預設值,自動指派起始 IP,範圍為 256 個 IP。

SUBNET_PREFIX_SIZE 的值不得超過 29。數字越大,指定的子網路前置字串就越長,可用的 IP 就越少,IP 範圍也會縮小。由於 IP 位址為 32 位元,因此前置字串大小為 /24 時,範圍內可容納 256 個 IP (八位元),而前置字串大小為 /29 時,範圍內可容納八個 IP (三位元)。建構工具 VM 的數量上限為範圍內可用的 IP 數量 (範圍內可用的 IP 總數減去兩個)。

請參閱以下 peeredNetworkIpRange 欄位的範例:

  • 192.168.0.0/24 會指定 IP 範圍,起始值為 192.168.0.0,子網路前置字元大小為 24 (256 個 IP,其中 254 個可用)。
  • /29 會指定範圍,其中包含自動判斷的起始 IP 和子網路前置字串大小 29 (八個 IP,其中六個可用)。

workerConfig

這是必填欄位。其中包含私人集區的設定選項。

diskSizeGb

這是選填欄位。使用這個欄位,以 GB 為單位指定私人集區執行個體的磁碟大小。請指定大於或等於 100 且小於或等於 4000 的值。如果您未在私人資源池設定檔中加入這個欄位,或是指定 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

後續步驟