本文說明如何設定執行個體,在停止或刪除時略過客體 OS 關機程序,藉此縮短 Compute Engine 執行個體的關機時間。
如果您將執行個體設定為在停止或刪除時略過客體 OS 關機程序,當執行個體狀態變更為 STOPPING 時,Compute Engine 會立即關閉客體 OS。加快停止或刪除執行個體的速度,以便更快釋出配額或資源。如要進一步瞭解執行個體在停止或刪除期間經歷的階段,包括清除客體 OS 關機的預設間隔,請參閱停止作業。
事前準備
-
如果尚未設定驗證,請先完成設定。
驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,可以選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI by running the following command:
gcloud initIf 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.
-
如要建立執行個體,請按照下列步驟操作:
- 專案的
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 設定 VM 執行個體中繼資料,請執行下列指令:
compute.instances.setMetadata - 如要為 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.instances.update 如果尚未停止執行個體,請停止執行個體。
如要將執行個體設定為略過客層 OS 關機程序,請使用
gcloud beta compute instances set-scheduling指令搭配--skip-guest-os-shutdown旗標:gcloud compute instances set-scheduling INSTANCE_NAME \ --skip-guest-os-shutdown \ --zone=ZONE更改下列內容:
INSTANCE_NAME:執行個體的名稱。ZONE:執行個體所在的可用區。
如果尚未停止執行個體,請停止執行個體。
如要設定執行個體略過訪客 OS 關機程序,請對
instances.setScheduling方法發出POST要求。在要求主體中加入skipGuestOsShutdown欄位,並將其設為true:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/setScheduling { "skipGuestOsShutdown": true }INSTANCE_NAME:執行個體的名稱。MACHINE_TYPE:執行個體要使用的機器類型。ZONE:要建立執行個體的可用區。PROJECT_ID:要在當中建立執行個體的專案 ID。ZONE:要建立執行個體的可用區。INSTANCE_NAME:執行個體的名稱。MACHINE_TYPE:執行個體要使用的機器類型。IMAGE_PROJECT:包含映像檔的映像檔專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE:指定下列其中一項:COUNT:要建立的執行個體數量。MACHINE_TYPE:執行個體使用的機器類型。NAME_PATTERN:執行個體的名稱模式。如要取代執行個體名稱中的一連串數字,請使用一連串井字號 (#) 字元。舉例來說,如果您使用instance-#做為名稱模式,Compute Engine 會產生名稱開頭為instance-1、instance-2的執行個體,並持續以這種遞增模式命名,直到達到您在COUNT中指定的執行個體數量為止。ZONE:要建立執行個體的可用區。PROJECT_ID:您要在當中大量建立執行個體的專案 ID。ZONE:要建立執行個體的可用區。COUNT:要建立的執行個體數量。NAME_PATTERN:執行個體的名稱模式。如要取代執行個體名稱中的一連串數字,請使用一連串井字號 (#) 字元。舉例來說,如果您使用instance-#做為名稱模式,Compute Engine 會產生名稱開頭為instance-1、instance-2的執行個體,並持續以這種遞增模式命名,直到達到您在COUNT中指定的執行個體數量為止。MACHINE_TYPE:執行個體使用的機器類型。IMAGE_PROJECT:包含映像檔的映像檔專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE:指定下列其中一項:您可以設定代管執行個體群組 (MIG) 中的執行個體,在停止或刪除時略過客層 OS 關機程序,方法如下:
INSTANCE_TEMPLATE_NAME:執行個體範本的名稱。REGION:要建立執行個體範本的區域。MACHINE_TYPE:要在執行個體範本中指定的機器類型。如要建立全域執行個體範本,請使用
instanceTemplates.insert方法。如要建立地區執行個體範本,請使用
regionInstanceTemplates.insert方法:PROJECT_ID:您要在當中建立執行個體範本的專案 ID。REGION:要建立執行個體範本的區域。INSTANCE_TEMPLATE_NAME:執行個體範本的名稱。IMAGE_PROJECT:包含映像檔的映像檔專案,例如debian-cloud。如要進一步瞭解支援的映像檔專案,請參閱「公開映像檔」。IMAGE:指定下列其中一項:MACHINE_TYPE:要在執行個體範本中指定的機器類型。INSTANCE_NAME:執行個體的名稱。ZONE:執行個體所在的可用區。PROJECT_ID:執行個體所在的專案 ID。ZONE:執行個體所在的可用區。INSTANCE_NAME:執行個體的名稱。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI by running the following command:
gcloud initIf you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」。
必要的角色
如要取得設定執行個體以略過客層 OS 關機程序所需的權限,請要求管理員授予您專案的「Compute 執行個體管理員 (v1)」(
roles/compute.instanceAdmin.v1) IAM 角色。 如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。這個預先定義的角色具備將執行個體設定為略過客體 OS 關機的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:
所需權限
如要將執行個體設為略過客層 OS 關機程序,您必須具備下列權限:
設定執行個體,略過客體 OS 關機程序
如要設定 Compute 執行個體,在停止或刪除執行個體時略過訪客作業系統關機程序,請使用下列其中一種方法:
在現有執行個體中設定客體 OS 關機
只有在執行個體已停止 (
TERMINATED) 時,才能將運算執行個體設為略過客層 OS 關機程序。如要設定執行個體略過訪客 OS 關機程序,請選取下列其中一個選項:
gcloud
REST
如要進一步瞭解如何更新執行個體,請參閱更新執行個體屬性。
在建立執行個體時設定客體 OS 關機
如要建立設定為略過訪客 OS 關機的運算執行個體,請選取下列任一選項:
gcloud
如要建立設定為略過客層 OS 關機的執行個體,請使用
gcloud compute instances create指令搭配--skip-guest-os-shutdown旗標:gcloud compute instances create INSTANCE_NAME \ --machine-type=MACHINE_TYPE \ --skip-guest-os-shutdown \ --zone=ZONE更改下列內容:
REST
如要建立設定為略過客層 OS 關機的執行個體,請對
instances.insert方法發出POST要求。在要求主體中,加入設為true的skipGuestOsShutdown欄位:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "skipGuestOsShutdown": true } }更改下列內容:
如要進一步瞭解如何建立執行個體,請參閱「建立及啟動 Compute Engine 執行個體」。
在大量建立執行個體時設定訪客 OS 關機
如要大量建立運算執行個體,並設定略過客層 OS 關機程序,請選取下列任一選項:
gcloud
如要大量建立執行個體,並設定略過客層 OS 關機程序,請使用
gcloud compute instances bulk create指令搭配--skip-guest-os-shutdown旗標。舉例來說,如要使用單一可用區中的名稱模式,大量建立執行個體,請執行下列指令:
gcloud compute instances bulk create \ --count=COUNT \ --machine-type=MACHINE_TYPE \ --name-pattern="NAME_PATTERN" \ --skip-guest-os-shutdown \ --zone=ZONE更改下列內容:
REST
如要大量建立執行個體,並設定略過客層 OS 關機程序,請對
instances.bulkInsert方法發出POST要求。在要求主體中,加入設為true的skipGuestOsShutdown欄位。舉例來說,如要在單一區域中大量建立使用名稱模式的執行個體,請發出下列
POST要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { "count": COUNT, "namePattern": "NAME_PATTERN", "instanceProperties": { "machineType": "MACHINE_TYPE", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "skipGuestOsShutdown": true } } }更改下列內容:
如要進一步瞭解如何大量建立執行個體,請參閱大量建立執行個體。
建立執行個體範本時設定客體 OS 關機
建立執行個體範本並設定為在停止或刪除運算執行個體時略過客層 OS 關機程序後,您可以使用該範本執行下列操作:
如要建立設定為略過訪客 OS 關機的執行個體範本,請選取下列任一選項:
gcloud
如要建立設定為略過客層 OS 關機的執行個體範本,請使用
gcloud compute instance-templates create指令搭配--skip-guest-os-shutdown旗標。舉例來說,如要建立區域執行個體範本,並指定略過客層 OS 關機程序,請執行下列指令。如要建立全域執行個體範本,請使用相同指令,但不要加入
--instance-template-region旗標。gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --instance-template-region=REGION \ --machine-type=MACHINE_TYPE \ --skip-guest-os-shutdown更改下列內容:
REST
如要建立設定為略過客層 OS 關機的執行個體範本,請向下列其中一種方法提出
POST要求:在要求主體中,加入設為
true的skipGuestOsShutdown欄位。舉例來說,如要建立指定略過客層 OS 關機的區域執行個體範本,請發出下列
POST要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "network": "global/networks/default" } ], "scheduling": { "skipGuestOsShutdown": true } } }更改下列內容:
如要進一步瞭解如何建立執行個體範本,請參閱建立執行個體範本。
查看客體 OS 關機設定
您可以檢查 Compute Engine 是否在停止或刪除運算執行個體時,略過訪客 OS 關機程序。
如要在執行個體中查看訪客 OS 關機時間,請選取下列任一選項:
gcloud
如要查看執行個體的詳細資料,以及是否略過客層 OS 關機程序,請使用
gcloud compute instances describe指令:gcloud compute instances describe INSTANCE_NAME \ --zone=ZONE更改下列內容:
如果您將執行個體設為略過訪客 OS 關機程序,輸出內容會包含設為
true的skipGuestOsShutdown欄位,如下列範例所示:... scheduling: automaticRestart: true skipGuestOsShutdown: true onHostMaintenance: MIGRATE preemptible: false provisioningModel: STANDARD ...否則,如果缺少
skipGuestOsShutdown欄位或設為false,客體 OS 會使用預設關機時間。REST
如要查看執行個體的詳細資料,以及是否略過客層 OS 關機程序,請向
instances.get方法發出GET要求:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME更改下列內容:
如果您將執行個體設為略過訪客 OS 關機程序,輸出內容會包含設為
true的skipGuestOsShutdown欄位,如下列範例所示:{ ... "scheduling": { "automaticRestart": true, "skipGuestOsShutdown": true, "onHostMaintenance": "MIGRATE", "preemptible": false, "provisioningModel": "STANDARD" }, ... }否則,如果缺少
skipGuestOsShutdown欄位或設為false,客體 OS 會使用預設關機時間。後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2026-03-18 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2026-03-18 (世界標準時間)。"],[],[]] -