您可以使用執行個體時間表自動啟動和停止虛擬機器 (VM) 執行個體。如要使用執行個體排程,請建立資源政策,詳細說明啟動和停止行為,然後將政策附加至一或多個 VM 執行個體。
使用執行個體排程自動部署 VM 執行個體,有助於您降低成本並更有效率地管理 VM 執行個體。您可以使用執行個體時間表安排週期性和一次性工作負載。舉例來說,您可以使用執行個體時間表,只在工作時間執行 VM 執行個體,或是為一次性活動提供容量。
如要瞭解自動排定 VM 的其他選項,請參閱下列頁面:
依據排程進行調度:如果您在代管執行個體群組 (MIG) 上執行工作負載,可以使用調度排程,為週期性或一次性事件排定所需的虛擬機器 (VM) 執行個體數量。
限制 VM 的執行時間:如果您不想建立資源政策,可以直接設定 VM,讓系統在 VM 達到特定時間或持續時間時自動停止或刪除。
事前準備
-
如果尚未設定,請先設定驗證機制。驗證是指驗證身分,以便存取 Google Cloud 服務和 API 的程序。如要在本機開發環境中執行程式碼或範例,您可以選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
REST
To use the REST API samples on this page in a local development environment, you use the credentials you provide to the gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
For more information, see Authenticate for using REST in the Google Cloud authentication documentation.
-
必要的角色
如要使用執行個體排程,您必須向下列主體授予必要的身分與存取權管理 (IAM) 角色:
專案的 Compute Engine 服務代理程式。這項資訊是執行個體排程在 VM 上執行時所需。
如果您在建立執行個體排程後撤銷這些權限,執行個體排程可能會在未通知的情況下停止運作。如要確認執行個體排程是否順利執行,請定期查看稽核記錄。
建立、管理或使用執行個體時間表的使用者帳戶或服務帳戶。
Compute Engine 服務代理人必要角色
為確保 Compute Engine 服務代理人具備執行執行個體排程的必要權限,請要求管理員為 Compute Engine 服務代理人授予專案的 Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1
) IAM 角色。
這個預先定義的角色包含執行執行個體排程所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要執行執行個體排程,您必須具備下列權限:
-
compute.instances.start
-
compute.instances.stop
您的管理員也可能會透過自訂角色或其他預先定義的角色,將這些權限授予 Compute Engine 服務代理。
使用者或服務帳戶的必要角色
為確保您或您的服務帳戶具備建立及管理執行個體時間表的必要權限,請管理員為您或您的服務帳戶授予專案或組織的 Compute 執行個體管理員 (v1) (roles/compute.instanceAdmin.v1
) IAM 角色。
這個預先定義的角色具備建立及管理執行個體時間表所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要建立及管理執行個體排程,您必須具備下列權限:
-
建立執行個體排程:
compute.resourcePolicies.create
-
列出執行個體排程:
compute.resourcePolicies.list
-
說明例項時間表:
compute.resourcePolicies.get
-
刪除執行個體排程:
compute.resourcePolicies.delete
-
將執行個體時間表附加至新的 VM:
-
compute.instances.create
-
compute.resourcePolicies.use
-
compute.instances.addResourcePolicies
-
-
將執行個體時程表附加至現有的 VM:
-
compute.resourcePolicies.use
-
compute.instances.addResourcePolicies
-
-
從 VM 移除執行個體排程:
-
compute.resourcePolicies.use
-
compute.instances.removeResourcePolicies
-
管理員也可能會透過自訂角色或其他預先定義的角色,授予您或您的服務帳戶這些權限。
限制
- 您只能將執行個體時間表附加至與執行個體時間表位於相同地區的 VM 執行個體。
- 您無法使用執行個體排程停止具有本機 SSD 磁碟的執行個體。
- 每個 VM 執行個體只能遵循一個執行個體時間表,但您可以將每個執行個體時間表連結至最多 1,000 個 VM 執行個體。
- 執行個體排程無法保證容量,因此如果在預定時間,預定 VM 執行個體所需的資源無法使用,VM 執行個體可能無法在預定時間啟動。雖然您可以在啟動 VM 執行個體前預留 VM 執行個體,以確保在需要時有足夠的運算容量,但預留作業無法自動排程。
- 執行個體排程只會在指定時間啟動及停止 VM 執行個體,但您隨時可以手動啟動及停止 VM 執行個體。舉例來說,假設您的排程每天上午 8 點開始,下午 5 點結束。如果您在下午 4 點將該排程附加至已停止的 VM 執行個體,除非您在該時間之前手動啟動 VM 執行個體,否則該 VM 執行個體會在隔天上午 8 點才啟動。
- 預定 VM 執行個體可能會在預定時間過後的 15 分鐘內開始啟動或停止作業。如果您需要在特定時間啟動或停止 VM 執行個體,請將作業的預定時間提前 15 分鐘,並將各作業的預定時間間隔至少 15 分鐘。
- 如果開始和停止作業之間的間隔少於 15 分鐘,排程器可能會失敗。這是因為停止作業可能會在啟動作業之前發生,導致啟動作業無法發生。
- 每個執行個體的時間表最多可執行一項啟動作業,每小時最多可執行一項停止作業。
- 如要修改執行個體的排程,請在「執行個體排程」政策上使用修補操作。
管理執行個體排程
使用 Google Cloud 控制台、Google Cloud CLI 或 Compute Engine API 建立、列出、說明及刪除執行個體排程。
建立執行個體排程
建立執行個體時間表,說明 VM 執行個體應自動啟動或停止的時間。您建立的執行個體時間表是資源政策,您可以將其附加至 VM 執行個體或從中移除。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。
按一下
「建立排程」。「Create a schedule」窗格會隨即開啟。輸入名稱。
在「Region」下拉式選單中,選取這個例項排程的位置。
定義執行個體排程的啟動和停止時間,以便管理任何已連結的 VM 執行個體。如果您需要在特定時間啟動或停止 VM 執行個體,請將作業排定在所需時間的 15 分鐘前。請確保每次啟動和停止作業之間至少間隔 15 分鐘。
您可以使用預設的「Start time」(開始時間)、「Stop time」(停止時間) 和「Frequency」(頻率) 欄位,或是使用 Cron 運算式設定更複雜的排程。
預設欄位:
- 輸入開始時間和/或停止時間。
- 在「開始時間」欄位中輸入或按一下 ,選取啟動 VM 執行個體的時間。
- 在「停止時間」欄位中輸入或按一下 ,選取停止 VM 執行個體的時間。
- 在窗格底部的「頻率」下拉式選單中,選取「開始時間」和「停止時間」的重複頻率。
- 輸入開始時間和/或停止時間。
Cron 運算式:
- 如要啟用 Cron 運算式,請按一下窗格頂端的「Use CRON expression」切換鈕。
- 輸入啟動 Cron 運算式、停止 Cron 運算式,或兩者皆輸入。
- 在「Start CRON expression」欄位中,輸入說明 VM 執行個體啟動時間的 cron 運算式。
- 在「Stop CRON expression」欄位中,輸入 cron 運算式,說明何時停止 VM 執行個體。
在「時區」下拉式選單中,選取「開始時間」和「結束時間」的時區。
選用:在「啟動日期」欄位中輸入或按一下
,選取要讓這個例項時間表開始的日期和時間。如果省略,排程就會立即生效。選用:在「End date」欄位中輸入或按一下
,選取要結束這個例項時程的日期和時間。如果省略,排程就會無限期生效。按一下「提交」。
gcloud
如要使用 gcloud CLI 建立執行個體時程,請使用 gcloud compute resource-policies create instance-schedule
指令:
gcloud compute resource-policies create instance-schedule SCHEDULE_NAME \ --region=REGION \ [--vm-start-schedule='START-OPERATION_SCHEDULE'] \ [--vm-stop-schedule='STOP-OPERATION_SCHEDULE'] \ [--timezone=TIME_ZONE] \ [--initiation-date=INITIATION_DATE] \ [--end-date=END_DATE]
更改下列內容:
- SCHEDULE_NAME:新例項時間表的名稱。
- REGION:您要附加至此例項排程的 VM 執行個體所在的區域。
- 請至少指定下列其中一個項目:
- START-OPERATION_SCHEDULE:描述附加 VM 執行個體啟動時間的排程,格式為 cron 運算式。如果您需要在特定時間啟動 VM 執行個體,請將作業排程提前 15 分鐘。詳情請參閱「start-operation 排程」。
- STOP-OPERATION_SCHEDULE:描述附加 VM 執行個體何時停止的排程,格式為 Cron 運算式。如果您需要在特定時間停止 VM 執行個體,請提前 15 分鐘安排作業。詳情請參閱停止作業時間表。
- TIME_ZONE:選用:這個例項時間表的地區別 IANA 時區。如果省略此欄位,系統會使用預設值
UTC
。詳情請參閱「時區」。 - INITIATION_DATE:選用項目:例項排程生效的第一個日期,格式為 RFC 3339 時間戳記。如果省略,排程就會立即生效。詳情請參閱「啟用日期」。
- END_DATE:選用項目:例項時間表生效的最後日期,格式為 RFC 3339 時間戳記。如果省略,排程就會無限期生效。詳情請參閱「結束日期」。
REST
如要使用 Compute Engine API 建立執行個體排程,請使用 resourcePolicies.insert
方法提出要求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies { "name": "SCHEDULE_NAME", "instanceSchedulePolicy": { "vmStartSchedule": { "schedule": "START-OPERATION_SCHEDULE" }, "vmStopSchedule": { "schedule": "STOP-OPERATION_SCHEDULE" }, "timeZone": "TIME_ZONE", "startTime":"INITIATION_DATE", "expirationTime":"END_DATE" } }
更改下列內容:
- PROJECT:您的專案 ID。
- REGION:您要連結至此例項排程的 VM 執行個體所在的區域。
- SCHEDULE_NAME:新執行個體排程的名稱。
- START-OPERATION_SCHEDULE 或 STOP-OPERATION_SCHEDULE:指定下列至少一項:
- TIME_ZONE:這個例項時程的 IANA 時區。詳情請參閱「時區」。
- INITIATION_DATE:選用項目:例項排程生效的第一個日期,格式為 RFC 3339 時間戳記。如果省略,排程就會立即生效。詳情請參閱「啟用日期」。
- END_DATE:選用項目:例項時間表生效的最後日期,格式為 RFC 3339 時間戳記。如果省略,排程就會無限期生效。詳情請參閱「結束日期」。
每個例項時間表都包含下列設定:
- 開始作業時間表、停止作業時間表
排程,說明執行個體排程何時開始及停止任何已連結的 VM 執行個體。例項時間表可以包含其中一個或兩個時間表。
使用 Google Cloud 主控台建立執行個體時,您可以選取開始時間、停止時間和頻率,或是將每個排程格式化為Cron 運算式。使用 gcloud CLI 或 Compute Engine API 建立執行個體排程時,必須將每個排程格式化為 cron 運算式。
下表定義了 cron 運算式的欄位,以及每個欄位支援的值。
分鐘 小時 日 月 星期幾 0-59 0-23 1-31 其中 29-31 僅適用於相關月份
1-12 0 到 6 或 SUN-SAT
(星期日到星期六)
其中 0=
SUN
、1=MON
、… 6=SAT
特殊字元 意義 範例 *
不限 如果「日」欄位、「月」欄位和「星期幾」欄位都設為 *
,則排程會每天重複。-
range 如果星期欄位設為 MON-FRI
(或1-5
),時間表會每週重複週一至週五。,
list 如果月份欄位設為 1-6,8-12
,排程會在 7 月以外的每個月重複。編寫 cron 運算式時,請考量以下事項:
- 空格用於分隔 Cron 運算式的欄位。請注意,請勿在使用特殊字元的欄位中加入多餘的空格。
- 當您同時指定星期幾和某日 (當兩個欄位都未設為
*
時),排程會使用這些值的聯集,而非交集。舉例來說,0 8 1 * MON
排程會在每週一和每個月的第一天上午 8 點開始。該排程不會只在星期一 (也是該月的首日) 上午 8 點開始。
- 時區
開始作業和停止作業時程的地區別 IANA 時區。IANA 時區資料庫定義了可用值清單。這個時區僅用於參考開始作業和停止作業的時間表,不會用於啟動日期和結束日期。使用 gcloud CLI 或 Compute Engine API 時,時區為選用項目。如果省略此欄位,系統會使用預設值
UTC
。部分 IANA 時區會採用日光節約時間 (DST),這可能會影響執行個體的排程。日光節約時間的詳細資訊 (例如開始和結束時間、跳過和重複的時間長度) 會因時區而異。
- 開始日期、結束日期
執行個體排程生效的時間範圍。這兩個值皆為選填項目。除非您指定這些值來限制排程為一年,否則作業會每年重複執行。
使用 Google Cloud 控制台建立執行個體時間表時,請使用「開始日期」和「結束日期」欄位選取日期、時間和時區。
使用 gcloud CLI 或 Compute Engine API 建立執行個體時間表時,這些值的格式會採用 RFC 3339 時間戳記:
YYYY-MM-DDTHH:MM:SSOFFSET
更改下列內容:
- YYYY-MM-DD:日期格式為 4 位數年份、2 位數月份和 2 位數日期,以連字號分隔。
- HH:MM:SS:以 24 小時制時間格式表示的時間,以半形冒號分隔的 2 位數小時、2 位數分鐘和 2 位數秒。
- OFFSET:以世界標準時間 (UTC) 為基準的偏移值所定義的時區。舉例來說,太平洋標準時間 (PST) 比世界標準時間早 8 小時,因此會寫成
-08:00
。或者,如要使用無偏移 (世界標準時間時區),請寫入Z
。
列出執行個體排程
列出執行個體排程,查看專案的所有現有執行個體排程。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。 這會顯示這個專案的所有例項排程清單。
gcloud
如要使用 gcloud CLI 查看所有資源政策 (包括執行個體排程) 清單,請使用 gcloud compute resource-policies list
指令。如要將結果限制在特定區域,請視需要加入 --filter
旗標。
gcloud compute resource-policies list \ [--filter="region:(REGION)"]
更改下列內容:
- REGION:選用:您要列出的執行個體排程所在的地區。
REST
如要使用 Compute Engine API 查看特定地區的所有資源政策 (包括執行個體排程) 清單,請使用 resourcePolicies.list
方法提出要求:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies
更改下列內容:
- PROJECT:您的專案 ID。
- REGION:您要列出的執行個體排程所在的區域。
說明執行個體時間表
說明執行個體排程,查看其說明、時間、作業,以及連結至該執行個體的所有 VM 執行個體清單。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。 這會顯示這個專案的所有例項排程清單。
按一下要說明的例項排程名稱。系統會開啟該時間表的「執行個體時間表詳細資料」頁面。
gcloud
如要使用 gcloud CLI 說明執行個體時程,請使用 gcloud compute resource-policies describe
指令:
gcloud compute resource-policies describe SCHEDULE_NAME \ --region=REGION
更改下列內容:
- SCHEDULE_NAME:您要說明的例項排程名稱。
- REGION:執行個體排程所在的區域。
輸出結果會與下列內容相似:
... description: Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM. ... instanceSchedulePolicy: expirationTime: '2022-12-31T23:59:59Z' startTime: '2022-01-01T00:00:00Z' timeZone: UTC vmStartSchedule: schedule: 0 8 * * MON-FRI vmStopSchedule: schedule: 0 17 * * MON-FRI ... name: example-instance-schedule region: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-west1 resourceStatus: instanceSchedulePolicy: nextRunStartTime: '2022-01-03T08:00:00Z' ... status: READY
REST
如要使用 Compute Engine API 說明執行個體排程,請使用 resourcePolicies.get
方法提出要求:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME
更改下列內容:
- PROJECT:您的專案 ID。
- REGION:執行個體排程所在的區域。
- SCHEDULE_NAME:您要說明的執行個體排程名稱。
輸出結果會與下列內容相似:
{ ... "description": "Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM.", "name": "example-instance-schedule", "instanceSchedulePolicy": { "vmStartSchedule": { "schedule": "0 8 * * MON-FRI" }, "vmStopSchedule": { "schedule": "0 17 * * MON-FRI" }, "timeZone": "UTC", "startTime": "2022-01-01T00:00:00Z", "expirationTime": "2022-12-31T23:59:59Z" }, "status": "READY", "resourceStatus": { "instanceSchedulePolicy": { "nextRunStartTime": "2022-01-03T08:00:00Z" } }, ... }
刪除執行個體排程
如不再需要執行個體排程,請移除任何已連結的 VM 執行個體,並刪除資源政策。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。 這會顯示這個專案的所有例項排程清單。
找出要刪除的執行個體排程,然後勾選對應的核取方塊。
按一下頁面頂端的
「刪除」。系統會開啟新的對話方塊,請確認這項操作。在對話方塊中按一下「刪除」。
gcloud
- 如果這個執行個體時間表已附加至任何 VM 執行個體,請將其移除。
如要使用 gcloud CLI 刪除執行個體排程,請使用
gcloud compute resource-policies delete
指令:gcloud compute resource-policies delete SCHEDULE_NAME \ --region=REGION
更改下列內容:
- SCHEDULE_NAME:要刪除的執行個體排程名稱。
- REGION:執行個體排程所在的區域。
REST
- 如果這個執行個體時間表已附加至任何 VM 執行個體,請將其移除。
如要使用 Compute Engine API 刪除執行個體排程,請使用
resourcePolicies.delete
方法提出要求:DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME
更改下列內容:
- PROJECT:您的專案 ID。
- REGION:執行個體排程所在的區域。
- SCHEDULE_NAME:要刪除的執行個體排程名稱。
在 VM 執行個體中使用執行個體時間表
如要使用執行個體時間表,請將該時間表附加至一或多個要遵循該時間表的 VM 執行個體。您可以將執行個體時間表連結至現有的 VM 執行個體,也可以在建立新的 VM 執行個體時連結。如要停止 VM 執行個體依附的例項時間表,請從該 VM 執行個體中移除時間表。
建立新的 VM 執行個體時,附加執行個體時間表
如要將執行個體時間表附加至新的 VM 執行個體,您必須在與所用執行個體時間表相同的地區建立 VM 執行個體。進一步瞭解如何建立 VM 執行個體。
主控台
使用 Google Cloud 控制台建立執行個體時,無法附加執行個體時間表。如要使用 Google Cloud 控制台將執行個體時間表附加至新的 VM 執行個體,請建立 VM 執行個體,然後將時間表附加至 VM 執行個體。
gcloud
如要使用 gcloud CLI 將執行個體時程附加至 VM 執行個體,請使用 gcloud compute instances create
指令搭配 --resource-policies
標記。舉例來說,如要透過附加的執行個體時間表,從公開映像檔建立 VM 執行個體,請使用下列指令:
gcloud compute instances create VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE \ [--image IMAGE | --image-family IMAGE_FAMILY] \ [--image-project IMAGE_PROJECT]
更改下列內容:
- VM_NAME:要附加執行個體排程的 VM 執行個體名稱。
- SCHEDULE_NAME:您要附加的例項排程名稱。
- ZONE:VM 執行個體所在的區域。
- 選用:透過公開映像檔建立 VM 執行個體:
REST
如要使用 Compute Engine API 將執行個體排程附加至 VM 執行個體,請使用 instances.insert
方法提出要求,並加入 resourcePolicies
屬性。舉例來說,如要從具有附加執行個體時間表的公開映像檔建立 VM 執行個體,請提出下列要求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "VM_NAME", "disks": [ { "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true } ], "resourcePolicies": [ "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" ] }
更改下列內容:
- PROJECT_ID:建立 VM 的專案 ID。
- ZONE:建立 VM 的可用區。
- MACHINE_TYPE_ZONE:包含新 VM 所用機器類型的區域。
- MACHINE_TYPE:新 VM 的機器類型,可為預先定義或自訂。
- VM_NAME:新 VM 的名稱。
- 選用:透過公開映像檔建立 VM 執行個體:
- IMAGE_PROJECT:包含圖片的專案。例如,如果您將
family/debian-10
指定為映像檔系列,請將debian-cloud
指定為映像檔專案。 - IMAGE 或 IMAGE_FAMILY:指定下列其中一個選項:
- IMAGE:公開映像檔的必要版本。例如:
"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
- IMAGE_FAMILY:圖片群組。這會使用最新的非淘汰作業系統映像檔建立 VM。舉例來說,如果您指定
"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
,Compute Engine 會使用 Debian 10 映像檔系列中的最新 OS 映像檔版本建立 VM。
- IMAGE_PROJECT:包含圖片的專案。例如,如果您將
- REGION:執行個體排程所在的區域。
- SCHEDULE_NAME:您要附加的例項排程名稱。
您可以檢查執行個體排程資源政策和已連結的 VM 執行個體的稽核記錄,確認執行個體排程是否順利執行。您可能需要等待最多 15 分鐘,才能完成每項作業的預定時間。
將執行個體時程附加至現有的 VM 執行個體
您可以將執行個體時間表附加至與執行個體時間表位於相同地區的任何現有 VM 執行個體。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。 這會顯示這個專案的所有例項排程清單。
按一下要附加的例項排程名稱。「Instance schedule details」(執行個體時間表詳細資料) 頁面隨即開啟。
按一下「將執行個體新增至排程」。「Add instances to schedule」窗格隨即開啟。
找出要附加此排程的每個 VM 執行個體,然後勾選相對應的核取方塊。
按一下「新增」。
gcloud
如要使用 gcloud CLI 將執行個體時程附加至 VM 執行個體,請使用 gcloud compute instances add-resource-policies
指令:
gcloud compute instances add-resource-policies VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE
更改下列內容:
- VM_NAME:要附加執行個體排程的 VM 執行個體名稱。
- SCHEDULE_NAME:您要附加的例項排程名稱。
- ZONE:VM 執行個體所在的區域。
REST
如要使用 Compute Engine API 將執行個體時程附加至 VM 執行個體,請使用 instances.addResourcePolicies
方法提出要求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/addResourcePolicies { "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" }
更改下列內容:
- PROJECT:您的專案 ID。
- ZONE:VM 執行個體所在的可用區。
- VM_NAME:要附加執行個體排程的 VM 執行個體名稱。
- REGION:執行個體排程所在的區域。
- SCHEDULE_NAME:您要附加的例項排程名稱。
您可以檢查執行個體排程資源政策和已連結的 VM 執行個體的稽核記錄,確認執行個體排程是否順利執行。您可能需要等待最多 15 分鐘,才能執行每項作業。
從 VM 執行個體中移除執行個體排程
如要停止 VM 執行個體依照執行個體排程運作,請從 VM 執行個體中移除執行個體排程。
主控台
前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
按一下頁面頂端的「執行個體排程」分頁標籤。 系統會顯示這個專案的所有例項排程清單。
按一下要移除的例行工作時間表名稱。「Instance schedule details」(執行個體時間表詳細資料) 頁面隨即開啟。
在「已連結的執行個體」部分下,選取要從這個排程中移除的每個 VM 執行個體核取方塊。
按一下
「從排程中移除執行個體」。系統會開啟新的對話方塊,要求您確認這項操作。在對話方塊中按一下「移除」。
gcloud
如要使用 gcloud CLI 從 VM 執行個體移除執行個體排程,請使用 gcloud compute instances remove-resource-policies
指令:
gcloud compute instances remove-resource-policies VM_NAME \ --resource-policies=SCHEDULE_NAME \ --zone=ZONE
更改下列內容:
- VM_NAME:要移除執行個體排程的 VM 執行個體名稱。
- SCHEDULE_NAME:您要移除的執行個體排程名稱。
- ZONE:VM 執行個體所在的區域。
REST
如要使用 Compute Engine API 從 VM 執行個體中移除執行個體排程,請使用 instances.removeResourcePolicies
方法提出要求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/removeResourcePolicies { "resourcePolicies": "projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME" }
更改下列內容:
- PROJECT:您的專案 ID。
- ZONE:VM 執行個體所在的可用區。
- VM_NAME:要移除執行個體排程的 VM 執行個體名稱。
- REGION:執行個體排程所在的區域。
- SCHEDULE_NAME:您要移除的執行個體排程名稱。
後續步驟
- 瞭解其他 Compute Engine 功能,以便安排 VM 執行時間: