建立修補程式作業後,即可使用下列程序查看及管理修補程式:
- 列出修補工作:查看所有有效和已完成的工作清單。
- 列出 VM 執行個體詳細資料:查看 VM 執行個體的修補程式狀態。
- 說明修補工作:取得特定修補工作的詳細資料。
- 取消修補工作:取消特定修補工作。
您可以使用 Google Cloud 控制台、Google Cloud CLI 或 REST 管理修補程式工作。
事前準備
- 查看 OS 設定配額。
-
如果尚未設定驗證,請先完成設定。
「驗證」是指驗證身分的程序,確認您有權存取 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.
roles/osconfig.patchJobExecutor
:包含執行、取消、取得及列出修補工作的權限。此外,這個角色也包含查看修補工作執行個體詳細資料的權限。roles/osconfig.patchJobViewer
:包含權限,可取得及列出修補程式作業,但只能讀取。此外,也包含查看修補工作執行個體詳細資料的權限。- 在 Google Cloud 控制台中,依序前往「Compute Engine」 >「VM Manager」 >「Patch」(修補程式) 頁面。
- 選取「修補程式作業」分頁標籤。
- 在 Google Cloud 控制台中,依序前往「Compute Engine」 >「VM Manager」 >「Patch」(修補程式) 頁面。
- 選取「修補程式作業」分頁標籤。
- 按一下要查看的修補程式作業名稱。
- 向下捲動至「已更新的 VM 執行個體」。
project-id
:您的專案 ID。patch-job-id
:修補作業 ID。- 在 Google Cloud 控制台中,依序前往「Compute Engine」 >「VM Manager」 >「Patch」(修補程式) 頁面。
- 選取「修補程式作業」分頁標籤。
- 按一下要查看的修補程式作業名稱。
- 查看「更新資訊」部分。
project-id
:您的專案 ID。patch-job-id
:修補作業 ID。- 在 Google Cloud 控制台中,依序前往「Compute Engine」 >「VM Manager」 >「Patch」(修補程式) 頁面。
- 選取「修補程式作業」分頁標籤。
- 展開要取消的修補程式工作「動作」 選單。
- 選取「取消」。
project-id
:您的專案 ID。patch-job-id
:修補作業 ID。
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 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.
詳情請參閱 Google Cloud 驗證說明文件中的「Authenticate for using REST」。
權限
專案擁有者有完整存取權,可執行及管理修補程式作業。 如要授予其他使用者權限,您可以授予下列其中一項精細角色:
列出修補工作
查看所有執行中和已完成作業的清單。
主控台
gcloud
使用
os-config patch-jobs list
指令列出修補程式工作。gcloud compute os-config patch-jobs list
如果是 Google Cloud CLI,預設輸出內容會傳回最近 10 項修補程式工作,無論這些工作是否已完成或仍在進行中。您可以使用
--limit
旗標覆寫這項設定。輸出結果會與下列內容相似:
ID NAME DESCRIPTION CREATE_TIME UPDATE_TIME STATE TARGETED_INSTANCES 23b0815e-1c94-4dc6-91b1-30a6da395cb9 2019-11-05T20:22:54.150Z 2019-11-06T19:40:08.641Z COMPLETED_WITH_ERRORS 4 4116ad72-bd57-4e48-94dc-7a577dc707b6 2019-08-23T20:36:03.068Z 2019-08-23T20:36:15.984Z CANCELED 2 06856cbe-9a7b-498e-9105-9ae4eb566511 2019-08-12T20:27:38.410Z 2019-08-12T20:28:37.583Z SUCCEEDED 1 04a15964-9eaa-4282-96f5-9cd535352cf6 2019-08-12T17:48:22.938Z 2019-08-12T17:48:42.274Z SUCCEEDED 0 21dc1e06-deee-4e3a-821e-8082a32abde5 testing patch job reboot 2019-07-24T22:45:07.451Z 2019-07-25T00:44:44.459Z TIMED_OUT 1
你可以使用更多標記來篩選、排序及格式化搜尋結果。 舉例來說,如要篩選上述輸出內容,只列出狀態為
SUCCEEDED
的修補程式工作 URI,並依建立時間升序排序,請執行下列指令:gcloud compute os-config patch-jobs list \ --filter="state=SUCCEEDED" \ --sort-by="create_time" --uri
輸出結果會與下列內容相似:
https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/04a15964-9eaa-4282-96f5-9cd535352cf6 https://osconfig.googleapis.com/v1/projects/1234567/patchJobs/06856cbe-9a7b-498e-9105-9ae4eb566511
如需完整旗標清單,請參閱
os-config patch-jobs list
指令。REST
在 API 中,建立目標為
patchJobs.list
方法的GET
要求。將project-id
替換為您的專案 ID。GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs
列出特定修補工作的 VM 執行個體詳細資料
如要查看使用 OS 修補程式管理服務的完整 VM 執行個體清單,請查看修補工作狀態。
主控台
gcloud
使用
os-config patch-jobs list-instance-details
指令,列出特定修補程式工作中所有 VM 的詳細資料。將patch-job-id
替換為修補作業的 ID。gcloud compute os-config patch-jobs list-instance-details patch-job-id
舉例來說,如要查看修補程式工作
23b0815e-1c94-4dc6-91b1-30a6da395cb9
的所有執行個體詳細資料,請執行下列指令:gcloud compute os-config patch-jobs list-instance-details 23b0815e-1c94-4dc6-91b1-30a6da395cb9
輸出結果會與下列內容相似:
NAME ZONE STATE FAILURE_REASON instance-1 us-central1-a SUCCEEDED guest-policy-test-instance us-east1-c TIMED_OUT Instance timed out while in state: APPLYING_PATCHES after PT1H2.225S my-centos us-west1-b SUCCEEDED my-windows us-west1-b FAILED Error running pre-patch step: fork/exec /tmp/pre_patch_script.sh: no such file ..."
你可以使用更多標記來篩選、排序及格式化搜尋結果。 舉例來說,如要列出所有非使用中 VM 的詳細資料,並依執行個體名稱降序排序,請執行下列指令。將
patch-job-id
替換為修補程式作業的 ID。gcloud compute os-config patch-jobs list-instance-details patch-job-id \ --filter="state=INACTIVE" \ --sort-by="~name"
如需完整旗標清單,請參閱
os-config patch-jobs list-instance-details
指令。REST
在 API 中建立目標為
patchJobs.instanceDetails
方法的GET
要求。GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id/instanceDetails
更改下列內容:
說明修補工作
查看修補程式工作的詳細資訊。
主控台
gcloud
使用
os-config patch-jobs describe
指令說明修補程式工作。將patch-job-id
替換為修補程式作業的 ID。gcloud compute os-config patch-jobs describe patch-job-id
舉例來說,如要查看修補程式工作
23b0815e-1c94-4dc6-91b1-30a6da395cb9
的相關資訊,請執行下列指令:gcloud compute os-config patch-jobs describe 23b0815e-1c94-4dc6-91b1-30a6da395cb9
輸出結果會與下列內容相似:
createTime: '2019-11-05T20:22:54.150Z' errorMessage: Completed with 2 instance failure(s). filter: id=* instanceDetailsSummary: instancesFailed: '1' instancesSucceeded: '2' instancesTimedOut: '1' instanceFilter: {} name: projects/1234567/patchJobs/23b0815e-1c94-4dc6-91b1-30a6da395cb9 patchConfig: {} percentComplete: 100.0 state: COMPLETED_WITH_ERRORS updateTime: '2019-11-06T19:40:08.641Z'
REST
在 API 中,建立目標為
patchJobs.get
方法的GET
要求。GET https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id
更改下列內容:
取消修補工作
取消修補工作時,OS 設定代理程式會完成目前執行的子工作,但不會繼續執行後續工作。子工作是指代理程式執行的工作,無法停止。
舉例來說,如果 VM 執行個體重新啟動時修補工作遭到取消,重新啟動 (以及任何可能在重新啟動後自動執行的修補作業) 仍會完成,但代理程式不會為該修補工作啟動其他工作。
主控台
gcloud
使用
os-config patch-jobs cancel
指令取消修補程式工作。將patch-job-id
替換為修補程式作業的 ID。gcloud compute os-config patch-jobs cancel patch-job-id
REST
在 API 中,建立目標為
patchJobs.cancel
方法的POST
要求。POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs/patch-job-id:cancel
更改下列內容:
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-09 (世界標準時間)。
-