預留工作站容量

Compute Engine 預留項目可確保您取得 Compute Engine 虛擬機器 (VM) 執行個體的容量。預留項目可確保專案能預留特定屬性 (例如機器類型) 的 VM 容量。

建立預留項目後,有助於保護工作負載,避免因容量不足而發生錯誤。詳情請參閱 Compute Engine 的預留資源總覽

本文說明如何設定工作站設定,方法是設定預訂項目關聯性,以使用預留容量。在 API 中,這些親和性參數統稱為 ReservationAffinity

事前準備

  • 建立 Compute Engine 預留項目。預留項目必須與工作站叢集位於相同專案和區域,並以相同可用區為目標。
  • 保留項目的機器屬性 (例如機器類型)必須與您要在工作站設定中使用的屬性相符。

預留項目相依性的運作方式

您可以指定工作站設定的預留項目相依性,控管工作站設定耗用預留容量的方式。共有三種模式:

  • 特定預留項目:設定使用特定相符預留項目的容量。使用 --reservation-affinity 旗標和 consume-reservation-type=specific-reservation,即可指定這個預訂項目。
  • 沒有預留項目:設定無法使用任何預留項目的容量。您可以使用 --reservation-affinity 旗標搭配 consume-reservation-type=no-reservation 設定此項目。
  • 任何相符的預留項目 (預設):預設情況下,如果您未指定預留項目相依性,Cloud Workstations 會使用專案中任何相符預留項目的容量。發生這種情況的原因是,底層的 Compute Engine 執行個體預設會使用任何相符的預留資源。

設定預留項目相依性

如要控管預訂項目用量,請在建立或更新工作站設定時指定 --reservation-affinity 標記。

使用特定預留項目

如要建立工作站設定,只從特定具名預留項目消耗容量,請執行下列 gcloud CLI 指令:

gcloud beta workstations configs create WORKSTATION_CONFIG_ID \
    --cluster=WORKSTATION_CLUSTER_ID \
    --region=REGION \
    --project=PROJECT_ID \
    --machine-type=MACHINE_TYPE \
    --reservation-affinity=consume-reservation-type=specific-reservation,key=compute.googleapis.com/reservation-name,values=RESERVATION_NAME

更改下列內容:

  • WORKSTATION_CONFIG_ID:工作站設定的 ID。
  • WORKSTATION_CLUSTER_ID:工作站叢集的 ID。
  • REGION:工作站叢集所在的區域。
  • PROJECT_ID:專案 ID。
  • MACHINE_TYPE:工作站設定中 VM 的機器類型,例如 e2-standard-4。這個機器類型必須與預留項目的機器類型相符。
  • RESERVATION_NAME:要從中取用容量的特定 Compute Engine 預留項目名稱。

如果您將工作站設定為使用特定預留項目,以這項設定啟動的工作站只會從該預留項目提取容量。如果預留項目運算資源用盡,設定就會降級,直到預留項目有可用運算資源為止。

禁止使用任何預留項目

如要建立不使用任何保留項目容量的工作站設定,請使用 --reservation-affinity=consume-reservation-type=no-reservation

gcloud beta workstations configs create WORKSTATION_CONFIG_ID \
    --cluster=WORKSTATION_CLUSTER_ID \
    --region=REGION \
    --project=PROJECT_ID \
    --machine-type=MACHINE_TYPE \
    --reservation-affinity=consume-reservation-type=no-reservation

您可以使用前一節列出的相同變數替代項目。