搭配 Vertex AI Workbench 執行個體使用預留項目

本文說明如何使用 Compute Engine 預留資源,確保 Vertex AI Workbench 執行個體有足夠的虛擬機器 (VM) 資源可供執行。

預訂是 Compute Engine 的功能。這類項目可確保您在需要時,有資源可建立具有相同硬體 (記憶體和 vCPU) 和選用資源 (GPU 和本機 SSD 磁碟) 的 VM。

建立預訂時,Compute Engine 會驗證指定區域是否提供要求的容量。如果是,Compute Engine 會預留資源、建立預留項目,並發生下列情況:

  • 您可立即使用預留資源,且這些資源會一直保留,直到您刪除預留項目為止。

  • 系統會根據執行中 VM 的隨選費率 (包括任何適用折扣),向您收取預留資源的費用,直到刪除預留項目為止。使用預留項目時,VM 不會產生重複的資源費用,因為預留項目已計入預留資源的費用。詳情請參閱「Compute Engine 可用區資源的預留項目」。

限制與需求

Vertex AI Workbench 執行個體使用預留項目時,須遵守所有 Compute Engine 預留項目的限制。請參閱「預留的運作方式」。

此外,將預留項目用於 Vertex AI Workbench 執行個體時,須遵守下列限制和規定:

  • 預訂必須符合下列條件:

    • 與 Vertex AI Workbench 執行個體位於同一個專案。
    • 與 Vertex AI Workbench 執行個體共用同一個專案。
  • 如要使用預留項目,預留項目的 VM 屬性必須與 Vertex AI Workbench 執行個體完全相符。舉例來說,如果預留項目指定 e2-standard-8 機型,則 Vertex AI Workbench 執行個體也必須使用 e2-standard-8 機型,才能使用預留項目。請參閱「需求條件」一文。

事前準備

  1. 請參閱 預訂規定 限制
  2. 請參閱共用預訂的配額規定 限制
  3. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Enable the Compute Engine and Notebooks APIs.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Enable the Compute Engine and Notebooks APIs.

    Enable the APIs

  8. 必要的角色

    如要取得必要權限,以便搭配 Vertex AI Workbench 執行個體使用預留資源,請要求管理員授予您專案的下列 IAM 角色:

    如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

    您或許還可透過自訂角色或其他預先定義的角色取得必要權限。

    建立保留項目

    建立 Compute Engine 預留項目。可以是單一專案預留項目或共用預留項目。詳情請參閱下列文件:

    保留項目可包含 GPU 加速器。

    在新執行個體中使用預留項目

    使用 REST API 建立新的 Vertex AI Workbench 執行個體時,可以新增預留項目。

    使用任何要求資料之前,請先替換以下項目:

    • PROJECT_ID:您的專案 ID
    • LOCATION:執行個體所在的區域
    • INSTANCE_NAME:執行個體名稱
    • MACHINE_TYPE:執行個體的機器類型
    • RESERVATION_TYPE:預訂類型,必須是 RESERVATION_ANYRESERVATION_SPECIFIC
    • RESERVATION_NAME:使用 RESERVATION_SPECIFIC 型別時的預留名稱
      • 如為同一專案中的預留項目,則可使用預留項目 ID。
      • 如要使用其他專案中的預留項目,請務必提供完整路徑。

    HTTP 方法和網址:

    POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME

    JSON 要求主體:

    {
      "gce_setup": {
        "machine_type": "MACHINE_TYPE",
        "reservation_affinity": {
          "consume_reservation_type": "RESERVATION_TYPE",
          "key": "compute.googleapis.com/reservation-name",
          "values": ["RESERVATION_NAME"]
        }
      }
    }
    

    如要傳送要求,請選擇以下其中一個選項:

    curl

    將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME"

    PowerShell

    將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME" | Select-Object -Expand Content
    如果成功,回應主體會包含 Operation 的執行個體。

    停止使用預留項目

    如要停止使用預訂,可以刪除預訂

    如要繼續將預留項目用於其他資源,但不想讓現有的 Vertex AI Workbench 執行個體使用,請刪除該執行個體。

    帳單

    使用 Compute Engine 預留項目時,系統會針對下列項目向您收費:

    • Compute Engine 資源,包括任何適用的承諾使用折扣 (CUD),均以 Compute Engine 定價計費。這類費用在 SKU 上會標示 goog-vertex-ai-product: workbench-instances。請參閱 Compute Engine 定價

    • 除了基礎架構使用費,您還必須支付 Vertex AI Workbench 管理費。請參閱 Vertex AI Workbench 定價

    疑難排解

    如要瞭解如何診斷及解決與 Vertex AI Workbench 執行個體搭配使用預留資源時發生的錯誤,請參閱「排解 Vertex AI Workbench 執行個體問題」。

    後續步驟