本文說明如何在 Compute Engine 中使用預留項目。如要瞭解如何在支援預訂的其他 Google Cloud產品中使用預訂,請參閱下列文件:
建立預留項目後,或 Compute Engine 自動建立預留項目,以履行未來預留項目或日曆模式中的未來預留項目後,Compute Engine 會為您的專案和共用預留項目的任何專案保留預留資源。建立符合預留項目屬性的 Compute Engine 執行個體時,您會「使用」預留項目,也就是使用預留資源建立運算執行個體,而非使用運算執行個體可用區中的可用資源。在完全用完預訂項目之前,您都可以使用預訂項目建立運算執行個體。
限制
您無法使用預留項目建立下列 Compute Engine 資源:
彈性啟動型 VM
Spot VM 或先占執行個體
單一租戶節點
事前準備
-
如果尚未設定驗證,請先完成設定。驗證程序會確認您的身分,以便授予 Google Cloud 服務和 API 的存取權。如要從本機開發環境執行程式碼或範例,您可以選取下列其中一個選項,向 Compute Engine 進行驗證:
請根據您打算如何使用本頁範例,選取對應的分頁標籤:
控制台
使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,您不需要設定驗證機制。
gcloud
-
安裝 Google Cloud CLI。 安裝完成後,請執行下列指令,初始化 Google Cloud CLI:
gcloud init若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
- 設定預設區域和可用區。
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
如果您使用的是本機殼層,請為使用者帳戶建立本機驗證憑證:
gcloud auth application-default login
如果您使用的是 Cloud Shell,則不必執行這項操作。
如果系統傳回驗證錯誤,且您使用的是外部識別資訊提供者 (IdP),請確認您已 使用聯合身分登入 gcloud CLI。
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
如果您使用的是本機殼層,請為使用者帳戶建立本機驗證憑證:
gcloud auth application-default login
如果您使用 Cloud Shell,則不需要執行這項操作。
如果系統傳回驗證錯誤,且您使用外部識別資訊提供者 (IdP),請確認您已 使用聯合身分登入 gcloud CLI。
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
如果您使用的是本機殼層,請為使用者帳戶建立本機驗證憑證:
gcloud auth application-default login
如果您使用 Cloud Shell,則不需要執行這項操作。
如果系統傳回驗證錯誤,且您使用的是外部識別資訊提供者 (IdP),請確認您已 使用聯合身分登入 gcloud CLI。
-
安裝 Google Cloud CLI。
-
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
-
如果您使用本機殼層,請為使用者帳戶建立本機驗證憑證:
gcloud auth application-default login
如果您使用的是 Cloud Shell,則不必執行這項操作。
如果系統傳回驗證錯誤,且您使用的是外部識別資訊提供者 (IdP),請確認您已 使用聯合身分登入 gcloud CLI。
Go
如要在本機開發環境中使用本頁的 Go 範例,請安裝並初始化 gcloud CLI,然後使用使用者憑證設定應用程式預設憑證。
詳情請參閱「 設定本機開發環境的驗證機制」。
Java
如要在本機開發環境中使用本頁的 Java 範例,請安裝並初始化 gcloud CLI,然後使用使用者憑證設定應用程式預設憑證。
詳情請參閱「 設定本機開發環境的驗證機制」。
Node.js
如要在本機開發環境中使用本頁的 Node.js 範例,請安裝並初始化 gcloud CLI,然後使用使用者憑證設定應用程式預設憑證。
詳情請參閱「 為本機開發環境設定驗證機制」。
Python
如要在本機開發環境中使用本頁的 Python 範例,請安裝並初始化 gcloud CLI,然後使用使用者憑證設定應用程式預設憑證。
詳情請參閱「 為本機開發環境設定驗證機制」。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。
若您採用的是外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」一節。
必要的角色
如要取得使用預留資源所需的權限,請要求管理員授予您下列 IAM 角色:
-
如要使用預留項目:專案的 Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1) -
如要從用戶專案使用共用預留項目:擁有者專案和用戶專案的 Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
這些預先定義的角色具備使用預留項目所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
必須具備下列權限,才能使用預留項目:
-
如要建立預留項目:
compute.reservations.create專案 -
如要建立運算執行個體,請按照下列步驟操作:
- 專案的
compute.instances.create權限 - 如要使用自訂映像檔建立 VM,請在映像檔上執行
compute.images.useReadOnly - 如要使用快照建立 VM,請在快照上
compute.snapshots.useReadOnly - 如要使用執行個體範本建立 VM,請按一下執行個體範本上的
compute.instanceTemplates.useReadOnly - 如要將舊版網路指派給 VM,請在專案中執行
compute.networks.use - 如要為 VM 指定靜態 IP 位址,請在專案中執行下列步驟:
compute.addresses.use - 使用舊版網路時,將外部 IP 位址指派給 VM:
compute.networks.useExternalIp專案 - 如要為 VM 指定子網路,請在專案或所選子網路上執行
compute.subnetworks.use - 使用虛擬私有雲網路時,將外部 IP 位址指派給 VM:
compute.subnetworks.useExternalIp在專案或所選子網路上 - 如要為專案中的 VM
compute.instances.setMetadata設定 VM 執行個體中繼資料,請按照下列步驟操作: - 如要為 VM 設定標記,請在 VM 上執行下列步驟:
compute.instances.setTags - 如要設定 VM 的標籤,請在 VM 上執行
compute.instances.setLabels - 如要設定 VM 使用的服務帳戶,請在 VM 上執行
compute.instances.setServiceAccount - 為 VM 建立新磁碟:在專案中按一下
compute.disks.create - 如要以唯讀或讀寫模式掛接現有磁碟,請按一下磁碟上的
compute.disks.use - 如要以唯讀模式連接現有磁碟:在磁碟上
compute.disks.useReadOnly
- 專案的
-
如要建立執行個體範本,請在專案中執行
compute.instanceTemplates.create
使用預留項目
以下各節的範例說明如何建立單一運算執行個體,藉此使用預留項目。您也可以使用其他部署選項,建立符合預留項目屬性的運算執行個體,或更新現有運算執行個體的屬性,使其符合自動使用的預留項目,藉此使用預留項目。
如要使用預留項目,請採取下列其中一種方法:
如要建立運算執行個體,並耗用您建立的自動預留項目,或 Compute Engine 為滿足未來預留項目而自動建立的預留項目,請參閱「耗用自動耗用的預留項目」。
如要建立耗用您建立的特定預留項目,或 Compute Engine 自動建立的預留項目 (用於滿足未來預留項目要求) 的運算執行個體,請參閱「耗用明確指定的預留項目」。
如要建立運算執行個體,以使用 Compute Engine 自動建立的特定預留項目,滿足日曆模式中的未來預留項目,請參閱「使用日曆模式中自動建立的要求預留項目」。
使用自動耗用的預留項目
如果預留項目可自動使用,任何符合預留項目屬性的運算執行個體都能自動使用。這項消耗行為適用於新的和現有執行中的運算執行個體。建立隨需預留項目時,或 Compute Engine 自動建立預留項目來滿足未來預留項目要求時,系統會預設使用這類預留項目。
如果單一專案自動預留項目和共用自動預留項目的屬性相符,專案中的運算執行個體會先使用單一專案預留項目,再使用共用預留項目。詳情請參閱「預留項目的用量順序」。
如要建立及使用範例自動預留項目,請選取下列任一選項:
控制台
以下範例說明如何在可用區 us-central1-a 中,為三個具有 32 個 vCPU 的 N2 執行個體建立自動預留項目,並將 Intel Cascade Lake 設為最低 CPU 平台。以及如何建立單一運算執行個體來使用預留項目。
如要建立範例自動預留項目並使用,請按照下列步驟操作:
如要建立範例預留項目,請完成下列步驟:
前往 Google Cloud 控制台的「Reservations」(預留項目) 頁面。
其餘步驟會自動顯示在Google Cloud 控制台。
在「On-demand reservation」(隨需預留項目) 分頁,按一下 「Create reservation」(建立預留項目)。「Create a reservation」(建立預留項目) 頁面隨即顯示。
在「Name」(名稱) 欄位,輸入預留項目的名稱,例如:
reservation-01。選取要預留資源的「Region」(區域) 和「Zone」(可用區)。例如,分別選取「us-central1」和「us-central1-a」。
在「Share type」(共用類型) 部分,執行下列其中一項操作:
如要建立單一專案預留項目,請選取「本機」。
如要建立共用預留項目,請選取「Shared」(共用),然後指定要共用預留項目的專案。
在「Use with VM instance」(用於 VM 執行個體) 區段中,選取「Use reservation automatically」(自動使用預留項目) (若尚未選取)。
在「Number of VM instances」(VM 執行個體數量) 欄位,輸入
3。在「一般用途」分頁中,選取「N2」。
在「Machine type」(機型) 區段的「Preset」(預設) 分頁 (預設) 中,選取「n2-standard-32」。
展開「CPU platform and GPU」(CPU 平台和 GPU),然後在「CPU platform」(CPU 平台) 欄位中選取「Intel Cascade Lake or later」(Intel Cascade Lake 以上版本)。
點選「建立」。
如要建立使用範例預留項目的運算執行個體,請完成下列步驟:
前往 Google Cloud 控制台的「建立執行個體」頁面。
前往「Create an instance」(建立執行個體)
「建立執行個體」頁面隨即顯示,並顯示「機器設定」窗格。
在「機器設定」窗格中,執行下列操作:
在「Name」(名稱) 欄位中,輸入運算執行個體的名稱。在本例中,請輸入
instance-01。指定要預留資源的「Region」(區域) 和「Zone」(可用區)。在本範例中,請分別選取「us-central1」和「us-central1-a」。
在「一般用途」分頁中,選取「N2」。
在「機型」部分,選取「預設」分頁 (預設),然後選取「n2-standard-32」。
展開「進階選項」部分,然後在「CPU 平台」欄位中選取「Intel Cascade Lake 以上版本」。
選用:預設設定是自動使用相符的預留項目。不過,如要指定這項設定,請按照下列步驟操作:
在導覽選單中,按一下「Advanced」(進階)。系統隨即會顯示「Advanced」(進階) 窗格。
在「Reservations」(預留項目) 部分,選取「Use automatic selection」(使用自動選取功能)。
點選「建立」。
gcloud
以下範例說明如何在區域 us-central1-a 中,為三個具有 32 個 vCPU 的 N2 執行個體建立自動預留項目,並將 Intel Cascade Lake 設為最低 CPU 平台。以及如何建立單一運算執行個體來使用預留項目。
如要建立範例自動預留項目並使用,請按照下列步驟操作:
如要建立範例預留項目,請使用
gcloud compute reservations create指令:gcloud compute reservations create reservation-01 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --vm-count=3 \ --zone=us-central1-a如要建立使用範例預留項目的運算執行個體,請使用
gcloud compute instances create指令,並將--reservation-affinity旗標設為any。由於any是預設設定,因此您也可以省略這個標記。gcloud compute instances create instance-01 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --reservation-affinity=any \ --zone=us-central1-a
Go
如要使用執行個體範本建立範例自動預留項目,並使用相同範本建立要使用預留項目的執行個體,請使用下列程式碼範例:
Java
以下範例說明如何建立 N1 執行個體,其中包含四個 vCPU,並以 Intel Skylake 做為可用區 us-central1-a 的最低 CPU 平台。執行個體會自動耗用相符的預留項目。
如要建立範例執行個體,請使用下列程式碼範例:
Node.js
以下範例說明如何建立 N1 執行個體,並在可用區 us-central1-a 中使用四個 vCPU 和 Intel Skylake 做為最低 CPU 平台。執行個體會自動耗用相符的預留項目。
如要建立範例執行個體,請使用下列程式碼範例:
Python
以下範例說明如何在可用區 us-central1-a 中建立自動預留項目,用於三個 N1 執行個體,每個執行個體有一個 vCPU,並以 Intel Ivy 做為最低 CPU 平台。以及如何建立單一執行個體來使用預留項目。
如要建立範例自動預留項目並使用,請按照下列步驟操作:
REST
以下範例說明如何在區域 us-central1-a 中,為三個具有 32 個 vCPU 的 N2 執行個體建立自動預留項目,並將 Intel Cascade Lake 設為最低 CPU 平台。此外,也會說明如何建立單一執行個體來使用預留項目。
如要建立範例自動預留項目並使用,請按照下列步驟操作:
如要建立範例預留項目,請向
reservations.insert方法發出POST要求:POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "reservation-01", "specificReservation": { "count": "3", "instanceProperties": { "machineType": "n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", } } }如要建立使用範例預留項目的執行個體,請向
instances.insert方法發出POST要求。在要求主體中,加入設為ANY_RESERVATION的consumeReservationType欄位。不過,由於ANY_RESERVATION是預設設定,您也可以省略這個欄位。POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances { "name": "instance-01", "machineType": "zones/us-central1-a/machineTypes/n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-12" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "ANY_RESERVATION" } }
使用明確指定的預留項目
明確指定的預留項目允許符合預留項目屬性,且指定預留項目的新運算執行個體耗用該項目。只有在屬性與預留項目屬性相符時,才能成功建立運算執行個體。否則建立要求會失敗。
根據您要使用的建立方法,建立特定預留項目和指定這些預留項目的運算執行個體,如下所示:
| 建立方式 | 建立預留項目時 | 建立要使用預留項目的運算執行個體時 |
|---|---|---|
| Google Cloud 控制台 | 在「Use with VM instance」(用於 VM 執行個體) 區段中,選取「Select specific reservation」(選取特定預留項目)。 | 在「Advanced」(進階) 窗格的「Reservations」(預留項目) 部分,選取「Choose a reservation」(選取預留項目)。然後按照提示選取預留項目。 |
| Google Cloud CLI | 加上 --require-specific-reservation 旗標。 |
加入下列旗標:
|
| Go | 加入設為 true 的 SpecificReservationRequired 欄位。 |
在 ReservationAffinity 欄位中,加入下列欄位:
|
| Java | 加入設為 true 的 setSpecificReservationRequired 欄位。 |
在 ReservationAffinity 欄位中,加入下列欄位:
|
| Node.js 和 REST API | 加入設為 true 的 specificReservationRequired 欄位。 |
在 reservationAffinity 欄位中,加入下列欄位:
|
| Python | 加入設為 true 的 specific_reservation_required 欄位。 |
在 reservation_affinity 欄位中,加入下列欄位:
|
| Terraform | 加入設為 true 的 specific_reservation_required 欄位。 |
在 reservation_affinity 欄位中,加入下列欄位:
|
如要建立範例特定預留項目和運算執行個體來耗用該項目,請選取下列其中一個選項:
控制台
以下範例說明如何在可用區 us-central1-a 中,為三個具有 32 個 vCPU 的 N2 執行個體建立特定預留項目,並將 Intel Cascade Lake 設為最低 CPU 平台。以及如何建立單一運算執行個體來使用預留項目。
如要建立並使用範例特定預留項目,請按照下列步驟操作:
如要建立範例預留項目,請完成下列步驟:
前往 Google Cloud 控制台的「Reservations」(預留項目) 頁面。
其餘步驟會自動顯示在Google Cloud 控制台。
在「隨需預留項目」分頁 (預設),按一下 「建立預留項目」。 「Create a reservation」(建立預留項目) 頁面隨即顯示。
在「Name」(名稱) 欄位,輸入預留項目的名稱,例如:
reservation-02。指定要預留資源的「Region」(區域) 和「Zone」(可用區)。在本範例中,請分別選取「us-central1」和「us-central1-a」。
在「分享類型」部分,執行下列其中一項操作:
如要建立單一專案預留項目,請選取「本機」。
如要建立共用預留項目,請選取「Shared」(共用),然後指定要共用預留項目的專案。
在「Use with VM instance」(用於 VM 執行個體) 區段中,選取「Select specific reservation」(選取特定預留項目)。
在「Number of VM instances」(VM 執行個體數量) 欄位,輸入
3。在「一般用途」分頁中,選取「N2」。
在「Machine type」(機型) 區段的「Preset」(預設) 分頁 (預設) 中,選取「n2-standard-32」。
展開「CPU platform and GPU」(CPU 平台和 GPU),然後在「CPU platform」(CPU 平台) 欄位中選取「Intel Cascade Lake or later」(Intel Cascade Lake 以上版本)。
點選「建立」。
如要建立使用範例預留項目的運算執行個體,請完成下列步驟:
前往 Google Cloud 控制台的「Create an instance」(建立執行個體) 頁面。
前往「Create an instance」(建立執行個體)
「建立執行個體」頁面隨即顯示,並顯示「機器設定」窗格。
在「機器設定」窗格中,執行下列操作:
在「Name」(名稱) 欄位中,輸入運算執行個體的名稱。在本例中,請輸入
instance-02。指定要預留資源的「Region」(區域) 和「Zone」(可用區)。在本範例中,請分別選取「us-central1」和「us-central1-a」。
在「一般用途」分頁中,選取「N2」。
在「機型」部分,選取「預設」分頁 (預設),然後選取「n2-standard-32」。
展開「Advanced options」(進階選項) 區段,然後在「CPU platform」(CPU 平台) 欄位中選取「Intel Cascade Lake or later」(Intel Cascade Lake 以上版本)。
在導覽選單中,按一下「進階」。系統會顯示「Advanced」(進階) 窗格。
在「Reservations」(預留項目) 部分,選取「Choose a reservation」(選取預留項目),然後點選「Choose reservation」(選取預留項目)。
在隨即顯示的「Choose a reservation」(選擇預留項目) 窗格中,執行下列操作:
選取您在前述步驟中建立的特定預留項目。如要使用其他專案中的共用預留項目,請在「Project」(專案) 清單中選取預留項目所在的專案。
按一下「選擇」。
點選「建立」。
gcloud
以下範例說明如何在可用區 us-central1-a 中,為三個 N2 執行個體建立特定預留項目,這些執行個體有 32 個 vCPU,且最低 CPU 平台為 Intel Cascade Lake。此外,也說明如何建立單一運算執行個體來使用預留項目。
如要建立並使用範例特定預留項目,請按照下列步驟操作:
如要建立範例預留項目,請使用
gcloud compute reservations create指令和--require-specific-reservation旗標:gcloud compute reservations create reservation-02 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --require-specific-reservation \ --vm-count=3 \ --zone=us-central1-a如要建立使用範例預留項目的運算執行個體,請使用
gcloud compute instances create指令,並加上--reservation和--reservation-affinity=specific旗標:gcloud compute instances create instance-02 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --reservation-affinity=specific \ --reservation=RESERVATION_URL \ --zone=us-central1-a將
RESERVATION_URL替換為預留項目的網址。請指定下列其中一個值:如果您在同一個專案中建立預留項目:
reservation-02如果預留項目位於其他專案:
projects/PROJECT_ID/reservations/reservation-02
Go
下列範例說明如何在可用區 us-central1-a 建立 N2 執行個體,並指定 32 個 vCPU 和 Intel Cascade Lake 做為最低 CPU 平台,以使用特定相符預留項目:
如要建立範例運算執行個體,以使用單一專案的特定預留項目,請使用下列程式碼範例:
如要建立範例運算執行個體,以使用共用的特定預留項目,請使用下列程式碼範例:
Java
以下範例說明如何在 us-central1-a 區域中建立 N1 執行個體,並使用四個虛擬 CPU 和 Intel Skylake 做為最低 CPU 平台,以使用相符的特定預訂:
如要建立範例預留項目做為單一專案預留項目,並建立運算執行個體來使用該項目,請使用下列程式碼範例:
如要建立範例預留項目做為共用預留項目,並建立運算執行個體來使用該預留項目,請使用下列程式碼範例:
Node.js
以下範例說明如何在 us-central1-a 地區建立具有 4 個虛擬 CPU 的 N1 執行個體,並將 Intel Skylake 設為最低 CPU 平台,以使用相符的特定預訂:
Python
下列範例說明如何在區域 us-central1-a 中建立 N2 執行個體,並將 Intel Cascade Lake 設為最低 CPU 平台,以使用相符的特定預留項目:
如要建立並使用範例專屬預留項目,請按照下列步驟操作:
如要建立並使用範例預留項目做為單一專案預留項目,請使用下列程式碼範例:
如要建立並使用範例預留項目做為共用預留項目,請使用下列程式碼範例:
REST
以下範例說明如何在可用區 us-central1-a 中,為三個 N2 執行個體建立特定預留項目,這些執行個體有 32 個 vCPU,且最低 CPU 平台為 Intel Cascade Lake。此外,也會說明如何建立單一執行個體來使用預留項目。
如要建立並使用範例專屬預留項目,請按照下列步驟操作:
如要建立範例預留項目,請向
instances.insert方法發出POST要求。在要求主體中,加入設為true的specificReservationRequired欄位:POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "reservation-02", "specificReservation": { "count": "3", "instanceProperties": { "machineType": "n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", } }, "specificReservationRequired": true }如要建立使用範例預留項目的運算執行個體,請對
instances.insert方法發出POST要求。在要求主體的reservationAffinity欄位中,加入下列內容:consumeReservationType欄位設為SPECIFIC_RESERVATION。key欄位設為compute.googleapis.com/reservation-name。「
values」欄位設為預訂網址。
要求大致如下:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances { "name": "instance-02", "machineType": "zones/us-central1-a/machineTypes/n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-12" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "SPECIFIC_RESERVATION", "key": "compute.googleapis.com/reservation-name", "values": [ "RESERVATION_URL" ] } }將
RESERVATION_URL替換為預訂的網址。請指定下列其中一個值:如果您在同一個專案中建立預留項目:
reservation-02如果預留項目位於其他專案:
projects/PROJECT_ID/reservations/reservation-02
在日曆模式中,針對要求耗用自動建立的預留項目
這類預留項目可供新的運算執行個體耗用,而 Compute Engine 會自動建立預留項目,以滿足日曆模式中的未來預留項目。
如要使用這類預留項目,您必須按照下列步驟建立運算執行個體:
運算執行個體必須明確指定預留項目。
運算執行個體必須在預留項目結束時間停止或刪除。
運算執行個體必須使用取決於預留項目佈建模式。建立運算執行個體時,您可以按照下列方式指定這個模型:
在 Google Cloud 控制台中,如果您在日曆模式中為未來預留項目指定支援的機器類型,系統會自動選取與預留項目綁定的模型。
在 gcloud CLI 中,加入設為
reservation-bound的--provisioning-model旗標。在 REST API 中,加入設為
RESERVATION_BOUND的provisioningModel欄位。
以下範例會在日曆模式中,為 A3 Ultra 執行個體建立未來預留項目要求。這個範例也顯示建立獨立 A3 Ultra 執行個體時要指定的欄位,以便使用系統為要求自動建立的預留項目。
如要使用範例自動建立的預留項目,請選取下列其中一個選項:
控制台
建立五個 A3 Ultra 執行個體的要求範例,並提交審查:
前往 Google Cloud 控制台的「Reservations」(預留項目) 頁面。
點選「Future reservations」(未來預留項目) 分頁標籤。
按一下 「Create future reservation」(建立未來預留項目)。「Create a future reservation」(建立未來預留項目) 頁面隨即顯示。
按一下「GPU」分頁標籤,然後在「GPU type」(GPU 類型) 清單中選取「NVIDIA H200 141GB」。這項操作會指定 A3 Ultra 執行個體。
在「Total capacity needed」(所需總容量) 欄位中輸入
5。在「Reservation period」(預留期間) 部分,指定預留期間的開始時間和時間長度。
按一下「搜尋容量」,然後在「可用容量」部分,選取其中一部可用機器。
點選「建立」。
在要求開始時間,如要建立 A3 Ultra 執行個體來耗用範例自動建立的預留項目,請按照下列步驟操作:
前往 Google Cloud 控制台的「Create an instance」(建立執行個體) 頁面。
在「Name」(名稱) 欄位中,輸入運算執行個體的名稱。在本範例中,請輸入
example-instance。指定自動建立預留資源的「Region」(區域) 和「Zone」(可用區)。在本例中,請分別選取「us-central1」和「us-central1-b」。
按一下「GPU」分頁標籤,然後在「GPU type」(GPU 類型) 清單中選取「NVIDIA H200 141GB」。這項動作會指定 A3 Ultra 執行個體,並將佈建模式設為「取決於預留項目」。
按一下導覽選單中的「進階」。
在「Reservations」(預留項目) 部分,選取「Choose a reservation」(選取預留項目),然後點選「Choose a reservation」(選取預留項目)。
在「選擇預留項目」窗格中,執行下列操作:
選取自動建立的範例預留項目。
按一下「選擇」。
在「Provisioning model」(佈建模式) 部分,展開「VM provisioning model advanced settings」(VM 佈建模式進階設定) 部分。
在「On VM termination」(在 VM 終止時) 清單中,選取「Stop」(停止) (預設) 或「Delete」(刪除)。
點選「建立」。
gcloud
如要建立五個 A3 Ultra VM 的範例要求並提交審查,請使用
gcloud compute future-reservations create指令:gcloud compute future-reservations create example-fr \ --auto-delete-auto-created-reservations \ --deployment-type=DENSE \ --planning-status=SUBMITTED \ --require-specific-reservation \ --reservation-mode=CALENDAR \ --reservation-name=example-reservation \ --share-setting=local \ --start-time=2026-03-05T00:00:00Z \ --end-time=2026-03-19T00:00:00Z \ --machine-type=a3-ultragpu-8g \ --total-count=5 \ --zone=us-central1-b假設 Google Cloud 核准要求,且 Compute Engine 自動建立空白預留項目。在要求開始時間 (2026 年 3 月 5 日),Compute Engine 會增加預留項目中預留的 GPU VM 數量。接著即可使用預留項目。
在要求開始時間,如要建立 A3 Ultra 執行個體來使用自動建立的範例預留項目,請使用
gcloud compute instances create指令搭配下列旗標:--instance-termination-action標記。--provisioning-model旗標設為RESERVATION_BOUND。--reservation標記。--reservation-affinity旗標設為specific。
指令大致如下。如要瞭解建立 A3 Ultra 執行個體的完整規定,請參閱「建立 A3 Ultra 或 A4 執行個體」。
gcloud compute instance create example-a3ultra-instance \ --machine-type=a3-ultragpu-8g \ --instance-termination-action=TERMINATION_ACTION \ --provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=RESERVATION_URL \ --zone=us-central1-b \ ...指令包含下列值:
TERMINATION_ACTION:Compute Engine 是否會在預留期限結束時停止 (STOP) 或刪除 (DELETE) VM。RESERVATION_URL:預訂網址,格式如下:如果專案中已有自動建立的預留項目:
example-reservation。如果自動建立的預留項目位於其他專案:
projects/PROJECT_ID/reservations/example-reservation。
REST
如要建立五個 A3 Ultra 執行個體的範例要求,並提交審查,請向
futureReservations.insert方法提出POST要求:POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-b/futureReservations { "name": "example-request-calendar-mode", "autoDeleteAutoCreatedReservations": true, "deploymentType": "DENSE", "planningStatus": "SUBMITTED", "reservationMode": "CALENDAR", "reservationName": "example-reservation", "shareSettings": { "shareType": "LOCAL" }, "specificReservationRequired": true, "specificSkuProperties": { "machineType": "a3-ultragpu-8g", "totalCount": 5 }, "timeWindow": { "startTime": "2026-03-05T00:00:00Z", "endTime": "2026-03-19T00:00:00Z" } }假設 Google Cloud 核准要求,Compute Engine 會自動建立空白預留項目。在 2026 年 3 月 5 日的請求開始時間,Compute Engine 會增加預留項目中的預留 GPU VM 數量。接著即可使用預留項目。
在要求開始時間,如要建立 A3 Ultra 執行個體,以使用範例自動建立的預留項目,請向
instances.insert方法提出POST要求。在要求主體中,加入下列欄位:reservationAffinity.consumeReservationType欄位設為SPECIFIC_RESERVATION。reservationAffinity.key欄位設為compute.googleapis.com/reservation-name。「
reservationAffinity.values」欄位設為預訂的網址。scheduling.instanceTerminationAction欄位。scheduling.provisioningModel欄位設為RESERVATION_BOUND。
要求大致如下。如要瞭解建立 A3 Ultra 執行個體的完整規定,請參閱「建立 A3 Ultra 或 A4 執行個體」。
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-b/ { { "machineType": "projects/example-project/zones/us-central1-b/machineTypes/a3-ultragpu-8g", "name": "example-a3ultra-instance", "reservationAffinity": { "consumeReservationType": "SPECIFIC_RESERVATION", "key": "compute.googleapis.com/reservation-name", "values":[ "RESERVATION_URL" ], }, "scheduling": { "instanceTerminationAction": "TERMINATION_ACTION", "provisioningModel": "RESERVATION_BOUND" }, ... } }要求主體包含下列值:
RESERVATION_URL:預留項目的網址,格式如下:如果專案中已有自動建立的預留項目:
example-reservation。如果自動建立的預留項目位於其他專案:
projects/PROJECT_ID/reservations/example-reservation。
TERMINATION_ACTION:預訂期結束時,Compute Engine 是要停止 (STOP) 還是刪除 (DELETE) VM。
測試運算執行個體屬性是否與自動耗用的預留項目相符
與指定目標預留項目不同,如果運算執行個體屬性不符,自動使用的預留項目不會傳回錯誤。而是 Compute Engine 嘗試使用隨選容量建立運算執行個體。啟動工作負載前,如要確認運算執行個體屬性與自動使用的預留項目相符,請針對具有相同屬性的測試專用預留項目測試屬性。
如要測試運算執行個體的屬性是否與自動使用的預訂項目相符,請完成下列步驟:
建立測試預留項目:建立明確指定的預留項目,其運算執行個體屬性與要測試的自動耗用預留項目相同。將預留運算執行個體數量設為
1。建立測試運算執行個體:嘗試指定測試預留項目,建立運算執行個體。這個步驟的結果會是下列其中一項:
如果成功建立運算執行個體,代表運算執行個體和測試預留項目的屬性相符。
如果無法建立運算執行個體並收到錯誤訊息,可能是因為屬性不符。如要排解錯誤,請參閱「排解預留項目消耗問題」。
清除資源:如果您成功建立運算執行個體,並指定測試預留項目,請刪除測試資源,以免產生不必要的費用:
確認預留項目使用情形
如要確認預留項目使用情形,請採用下列其中一種方法:
如要查看運算執行個體使用的預留項目,請查看運算執行個體使用的預留項目。
如要查看哪些運算執行個體正在使用特定預留項目,請查看使用預留項目的運算執行個體清單。
如要查看目前的預留項目用量,以及使用預留項目的運算執行個體數量,以及還能使用預留項目的運算執行個體數量,請查看預留項目。
如要監控預留項目用量資料 (每 30 分鐘更新一次),並在預留項目用完時收到快訊,請監控預留項目用量。
如要使用匯出至 BigQuery 的 Cloud Billing 資料分析預留項目用量,請參閱下列範例:
如要查看每 24 小時更新一次的預留項目用量資料,請執行下列任一操作:
- 如要在 Cloud Storage bucket 中接收用量報表,以便分析用量趨勢及找出未使用的預留項目,請查看預留項目用量報表。
- 如要查看過去和預測的預留項目用量,藉此分析用量趨勢並規劃未來的容量需求,請使用 Capacity Planner。