如果工作負載的資源需求可預測,您可以透過依資源計算的承諾使用折扣 (CUD) 降低費用。只要購買 1 年或 3 年期的依資源計算承諾使用合約,即可享有依資源計算的 CUD。根據預設,依資源計算的承諾使用合約會在約期結束時到期。合約到期後,您必須購買新的合約,才能繼續享有 CUD。自動續約資源型承諾使用合約,就不必在每次到期時手動重新購買。自動續約承諾使用合約,即可無限期延長現有合約,並繼續享有承諾資源的 CUD。
本文說明自動續約的運作方式,以及如何啟用和停用承諾使用合約的自動續約設定。
自動續訂的運作方式
如果啟用依資源計算的承諾使用合約自動續約功能,每當合約到期時,Compute Engine 就會自動續約。啟用承諾使用合約的自動續約功能後,這項設定會保持啟用狀態,直到您手動停用為止。
如要自動續約專案中的承諾使用合約,必須分別為每項合約啟用自動續約功能。您可以為新的和現有的承諾使用合約啟用自動續約功能,步驟如下:
- 如果是新承諾使用合約,您可以在購買時指定是否要自動續約。
- 對於已生效且未啟用自動續約的現有承諾使用合約,您可以修改合約屬性並啟用自動續約。您無法為已到期的承諾使用合約啟用自動續約功能。
啟用承諾使用合約的自動續約功能後,合約現行約期的結束日期和時間就會成為續約日期和時間。承諾使用合約的所有其他屬性則維持不變。在續約日期的美國和加拿大太平洋時間凌晨 12 點 (UTC-8,日光節約時間實行期間則為 UTC-7),承諾使用合約的續約效期會自動開始。舉例來說,假設承諾使用合約現行效期的結束時間是 2026 年 1 月 1 日凌晨 12:00 (美國和加拿大太平洋時間)。如果啟用自動續約,新約期將於 2026 年 1 月 1 日凌晨 12:00 (美加太平洋時間) 自動開始。
自動續約承諾使用合約的續約期長度,一律與承諾使用合約方案定義的預設期長度相符,也就是 1 年或 3 年。折扣百分比也相同。即使承諾使用合約有 自訂約期,Compute Engine 也只會以預設的 1 年或 3 年約期續約。自訂約期承諾使用合約自動續約時,續約期限不會是自訂長度,如需範例,請參閱下列內容:
- 如果承諾使用合約的自訂約期為 1.5 年,則只會續約 1 年。
- 如果承諾使用合約的自訂約期為 5.5 年,則續約期限僅為 3 年。
如果希望自訂約期承諾在續約後保持有效狀態的時間長於續約期限,可以在續約後再次申請延長約期。續約期開始時,延長約期的資格期限也會重新計算。如果是 1 年約期,續約後的資格審查期最長為 4 個月。如果是 3 年承諾使用合約,則續約後最多可有 1 年的時間。
續約期結束時,Compute Engine 會再次續約承諾使用合約,除非您在合約期間手動停用自動續約功能。
在承諾使用合約到期前,您隨時可以啟用自動續約功能。同樣地,您也可以在續約日期前,隨時停用承諾使用合約的自動續約功能。舉例來說,如果 1 年期承諾使用合約將於 2024 年 1 月 1 日凌晨 12 點 (世界標準時間 -8) 到期,您可以在 2024 年 1 月 1 日凌晨 12 點 (世界標準時間 -8) 前,隨時啟用該合約的自動續約功能。啟用自動續約後,合約會在 2024 年 1 月 1 日凌晨 12 點 (UTC-8) 自動續約一年。如果之後想停用自動續約,可以在 2025 年 1 月 1 日凌晨 12 點 (UTC-8) 前隨時停用。
啟用承諾使用合約的自動續約功能,即代表您同意下列事項:
- 承諾使用合約會在現有約期結束時,自動續約新的約期。
- 您會繼續支付新約期內的承諾資源費用。
自動續約範例
假設 1 年期承諾使用合約 my-commitment-1 不會自動續約。假設您在 2020 年 1 月 1 日購買這項承諾使用合約,承諾使用 100 個 N2 vCPU。您的合約約期將於 2021 年 1 月 1 日結束。
假設您對這項承諾使用合約執行下列一系列作業:
您在結束日期前啟用這項承諾使用合約的自動續約功能。
承諾使用合約續約兩次後,您停用合約的自動續約功能,並讓合約在新的結束日期到期。
下表說明承諾使用合約屬性在合約效期內的行為:
| 原始約期 (啟用自動續約前) |
原始約期 (啟用自動續約後) |
首次自動續約期 (自動續約功能仍啟用) |
第二次自動續約期 (停用自動續約前) |
第二次自動續約期 (停用自動續約後) |
|
|---|---|---|---|---|---|
| 約期長度 | 1 年 | 1 年 | 1 年 | 1 年 | 1 年 |
| 折扣 | 37% | 37% | 37% | 37%3 | 37%3 |
| 原始承諾使用合約開始日期1 | 2020 年 1 月 1 日 | 2020 年 1 月 1 日 | 2020 年 1 月 1 日 | 2020 年 1 月 1 日 | 2020 年 1 月 1 日 |
| 約期開始日期1 | 2020 年 1 月 1 日 | 2020 年 1 月 1 日 | 2021 年 1 月 1 日 | 2022 年 1 月 1 日 | 2022 年 1 月 1 日 |
| 結束日期或續約日期2 | 2021 年 1 月 1 日 | 2021 年 1 月 1 日 | 2022 年 1 月 1 日 | 2023 年 1 月 1 日 | 2023 年 1 月 1 日 |
| 在結束或續訂日期執行的動作 | 承諾使用合約即將到期 | 已排定續約 | 已排定續約 | 已排定續約 | 承諾使用合約即將到期 |
| 延長期限申請截止日期 | 2020 年 5 月 1 日 | 2021 年 5 月 1 日 | 2021 年 5 月 1 日 | 2022 年 5 月 1 日 | 2022 年 5 月 1 日 |
1 在這個範例中,每個 1 年期合約都是從指定開始日期的美國和加拿大太平洋時間 (UTC-8 或 UTC-7) 凌晨 12 點開始。
2在本例中,每個 1 年期合約都會在指定結束日期的美國和加拿大太平洋時間 (UTC-8 或 UTC-7) 凌晨 12 點結束。
3即使您的承諾期總時長達到 3 年以上,自動續約的承諾使用合約 CUD 費率仍維持不變,因為每期時長仍為 1 年。
配額注意事項
續約承諾使用與原始承諾相同的配額,因此您不需要要求額外配額。如要進一步瞭解承諾使用合約的配額,請參閱「承諾使用合約和承諾資源的配額」。
定價影響
承諾使用費用是所有承諾資源折扣價格的總和。續約時,系統會重新計算所有承諾資源的折扣價格,因此價格可能會變動。Compute Engine 會依據續約生效當天的主要隨選價格,重新計算資源價格。即使隨選價格有所變動,您在新的合約期間仍可享有這些資源價格。
限制
- 只有依據資源計算的承諾使用合約,才能啟用自動續約功能。
- 您只能為有效的承諾使用合約啟用自動續約功能。
- 如果承諾使用合約是透過 AI Hypercomputer 的未來預留項目或 Cloud TPU 的未來預留項目購買,則無法啟用自動續約功能。
啟用承諾使用合約自動續約功能
如要在承諾使用合約到期時自動續約,請透過下列任一方式啟用自動續約功能:
- 購買新承諾使用合約時啟用自動續約功能。
- 為現有承諾使用合約啟用自動續約功能。
購買新承諾使用合約時啟用自動續約功能
您可以使用Cloud de Confiance 控制台、gcloud CLI 或 REST,在購買新承諾使用合約時啟用自動續約功能。
這項工作需要的權限
如要執行這項工作,您必須具備下列權限:
- 專案的
compute.commitments.create權限
如要購買已啟用自動續約功能的承諾使用合約,請按照下列步驟操作:
控制台
前往 Cloud de Confiance 控制台的「Committed use discounts」(承諾使用折扣) 頁面。
按一下「 購買承諾」。「Purchase a commitment」(購買承諾使用合約) 頁面隨即顯示。
在「Purchase a commitment」(購買承諾使用合約) 頁面中,指定承諾使用合約的屬性,如下所示:
如要設定承諾使用合約的自動續約設定,請在「Term」(效期) 區段中,勾選「Auto-renew commitment」(自動續約承諾使用合約) 核取方塊。
如要瞭解如何設定承諾使用合約的其他屬性,請根據您的用途參閱下列其中一個頁面:
在「Summary」(摘要) 窗格中,查看承諾使用合約詳細資料和任何潛在配額限制。
如要完成購買承諾使用合約,請按照下列步驟操作:
gcloud
如要購買自動續約的承諾使用合約,請執行 gcloud compute commitments create 指令,並加入 --auto-renew 旗標。
舉例來說,下列 gcloud CLI 指令會建立自動續約的 3 年承諾使用合約。
gcloud compute commitments create COMMITMENT_NAME \
--auto-renew \
--plan=36-month \
--region=us-west1 \
--project=PROJECT_ID \
--resources=vcpu=4,memory=9GB
更改下列內容:
COMMITMENT_NAME:要啟用自動續約功能的新承諾使用合約名稱。PROJECT_ID:要購買承諾使用合約的專案 ID。
REST
如要購買自動續約的使用承諾,請向 regionCommitments.insert 方法發出 POST 要求,並將 autoRenew 欄位設為 true。
舉例來說,下列 Compute Engine API 要求會建立自動續約的 3 年承諾使用合約。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/commitments
{
"name": "COMMITMENT_NAME",
"plan": "THIRTY_SIX_MONTH",
"resources": [
{
"type": "VCPU",
"amount": 4
},
{
"type": "MEMORY",
"amount": 9
}
],
"autoRenew": true
}
更改下列內容:
COMMITMENT_NAME:要啟用自動續約功能的新承諾使用合約名稱。PROJECT_ID:要購買承諾使用合約的專案 ID。
為現有承諾使用合約啟用自動續約功能
您可以使用Cloud de Confiance 控制台、gcloud CLI 或 REST,為現有承諾使用合約啟用自動續約功能。
這項工作需要的權限
如要執行這項工作,您必須具備下列權限:
- 專案或機構的
compute.commitments.update權限
控制台
前往 Cloud de Confiance 控制台的「Committed use discounts」(承諾使用折扣) 頁面。
在「Commitment list」(承諾使用合約清單) 的「Hardware commitments」(硬體承諾使用合約) 下方,按一下承諾使用合約的「Name」(名稱)。
在「Hardware commitment details」(硬體承諾使用合約詳細資料) 頁面中,按一下「Auto renew」(自動續約) 切換鈕。
gcloud
如要為現有承諾使用合約啟用自動續約功能,請執行 gcloud compute commitments update 指令,並加入 --auto-renew 旗標。
gcloud compute commitments update COMMITMENT_NAME \
--auto-renew
將 COMMITMENT_NAME 替換為要啟用自動續約功能的承諾使用合約名稱。
REST
如要為現有承諾使用合約啟用自動續約功能,請向 regionCommitments.update 方法提出 PATCH 要求,並將 autoRenew 欄位設為 true。
舉例來說,下列 Compute Engine API 要求會啟用 us-west1 區域中承諾使用合約的自動續約功能。
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/commitments/COMMITMENT_NAME
{
"name": "COMMITMENT_NAME",
"autoRenew": true
}
更改下列內容:
COMMITMENT_NAME:要啟用自動續約功能的承諾使用合約名稱。PROJECT_ID:您購買承諾使用合約的專案 ID。
停用承諾使用合約自動續約功能
購買新的承諾使用合約時,除非您特別啟用,否則自動續約功能預設為停用。如果不想在約期結束時自動續約,可以採取下列任一做法:
- 購買新的承諾使用合約時,請勿啟用自動續約功能。
- 停用現有承諾使用合約的自動續約功能。
購買新承諾使用合約時停用自動續約功能
如要瞭解如何購買預設停用自動續約功能的新承諾使用合約,請參閱下列頁面。選取與用途相關的選項。
停用現有承諾使用合約的自動續約功能
您可以使用Cloud de Confiance 控制台、gcloud CLI 或 REST,停用現有承諾使用合約的自動續約功能。
這項工作需要的權限
如要執行這項工作,您必須具備下列權限:
- 專案或機構的
compute.commitments.update權限
控制台
前往 Cloud de Confiance 控制台的「Committed use discounts」(承諾使用折扣) 頁面。
在「Commitment list」(承諾使用合約清單) 的「Hardware commitments」(硬體承諾使用合約) 下方,按一下承諾使用合約的「Name」(名稱)。
在「Hardware commitment details」(硬體承諾使用合約詳細資料) 頁面中,按一下「Auto renew」(自動續約) 切換鈕。
gcloud
使用 gcloud compute commitments update 指令,停用現有承諾使用合約的自動續約功能。
gcloud compute commitments update COMMITMENT_NAME --no-auto-renew
將 COMMITMENT_NAME 替換為要停用自動續約功能的承諾使用合約名稱。
REST
使用 regionCommitments.update 方法,停用現有承諾使用合約的自動續約功能。
舉例來說,下列 Compute Engine API 要求會停用 us-west1 區域中承諾使用合約的自動續約功能。
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/us-west1/commitments/COMMITMENT_NAME
{
"name": "COMMITMENT_NAME",
"autoRenew": false
}
更改下列內容:
COMMITMENT_NAME:要停用自動續約功能的承諾使用合約名稱。PROJECT_ID:您購買承諾使用合約的專案 ID。
後續步驟
- 瞭解如何排解依資源計算的承諾使用合約自動續約問題。
- 瞭解如何延長依資源計算的承諾使用合約期限。
- 瞭解如何升級依資源計算的承諾使用合約。
- 瞭解如何合併及拆分依資源計算的承諾使用合約。
- 瞭解如何分析 CUD 的成效。