增加建構作業的 vCPU

Cloud Build 可讓您在高 CPU 虛擬機器 (VM) 類型上執行建構作業,藉此提高建構速度,而非使用預設的標準 VM。雖然高 vCPU 機器能加快建構作業的執行速度,但由於 Cloud Build 只會在需要時啟動非標準機器,因此可能會增加預設集區的啟動時間。

如果預設集區提供的 vCPU 選項不敷使用,您可以改用私人集區執行建構作業, 私人集區提供更多高 CPU 機器類型。

如要進一步瞭解所有可用的機器類型,請參閱定價頁面。

事前準備

如要使用本指南中的指令列範例,請安裝及設定 Google Cloud CLI。

  • 如果您先前已安裝 gcloud CLI,請執行 gcloud components update,確保您使用的是最新版本。

增加預設集區的 vCPU

如要增加預設集區中執行建構作業的 vCPU,可以直接將值傳遞至 gcloud builds submit 指令,或在建構設定檔中指定值。

直接將值傳遞至 gcloud builds submit 指令:

如要直接在 gcloud builds submit 指令中指定自訂 VM 大小,請在指令中新增 --machine-type 引數:

    gcloud builds submit --config=cloudbuild.yaml \
        --machine-type=E2_HIGHCPU_8

在建構設定檔中指定值:

YAML

  1. 開啟建構設定檔。

  2. 將 machineType 欄位更新為與預設集區支援的其中一種機器類型對應的列舉值。以下範例說明如何在建構設定檔中新增 machineType 選項:

    steps:
    - name: 'gcr.io/cloud-builders/docker'
      args: ['build', '-t', 'gcr.io/my-project/image1', '.']
    options:
      machineType: 'E2_HIGHCPU_8'
    
  3. 使用 gcloud CLI 或建構觸發條件啟動建構作業。

JSON

  1. 開啟建構設定檔。

  2. 將 machineType 欄位更新為與預設集區支援的其中一種機器類型對應的列舉值。以下範例說明如何在建構設定檔中新增 machineType 選項:

    {
        "steps": [
        {
            "name": "gcr.io/cloud-builders/docker",
            "args": ["build", "-t", "gcr.io/my-project/image1", "."]
        },
        "options": {
            "machineType": "E2_HIGHCPU_8"
        }
    }
    
  3. 使用 gcloud CLI 或建構觸發條件啟動建構作業。

如要確保用於建構 Cloud Run 服務容器的機型符合特定條件,請按照下列步驟操作:

  1. 使用專屬的 Cloud Build 建構作業建構及推送容器映像檔,並在 cloudbuild.yaml 中設定所需的 machineType。

  2. 在 Artifact Registry 中參照映像檔網址,將服務部署至 Cloud Run:

    gcloud run deploy SERVICE_NAME --image IMAGE_URL
    

增加私人集區的 vCPU

控制台

  1. 在 Google Cloud 控制台中開啟「Worker pool」(工作站集區) 頁面:

    開啟 Cloud Build worker 集區頁面

  2. 選取您建立私人集區的專案。

  3. 按一下私人集區名稱。

  4. 在「編輯私人集區」側邊面板中,使用「機型」下拉式選單選取較大的機型。

  5. 按一下 [儲存]。

gcloud

如要增加私有集區中執行建構作業的 vCPU,可以將值直接傳遞至 gcloud builds worker-pools update 指令,或在私有集區設定檔中指定值。

在私有集區設定檔中指定值:

  1. 開啟私人集區設定檔。

  2. 將 machineType 欄位的值更新為支援的機型。

  3. 執行下列指令,其中 PRIVATEPOOL_ID 是私人集區的專屬 ID,REGION 是私人集區所在的區域,PRIVATEPOOL_CONFIG_FILE 則是私人集區設定檔的名稱:

    gcloud builds worker-pools update PRIVATEPOOL_ID \
        --region=REGION \
        --config-from-file=PRIVATEPOOL_CONFIG_FILE
    

直接將值傳遞至 gcloud builds worker-pools update 指令:

   gcloud builds worker-pools update PRIVATEPOOL_ID  \
       --region=REGION \
       --worker-machine-type=PRIVATEPOOL_MACHINE_TYPE

將上述指令中的預留位置值替換為下列值:

  • PRIVATEPOOL_ID:現有私人集區的 ID。您無法更新這個值,必須指定現有的私人集區 ID。
  • REGION:您建立私人集區的區域。
  • PRIVATEPOOL_DISK_SIZE:更新後的磁碟大小。
  • PRIVATEPOOL_MACHINE_TYPE 是更新後的機型。

    每當您使用對應的私人集區執行建構作業時,Cloud Build 都會使用更新後的機型。

後續步驟