创建修补作业后,您可以按照以下步骤查看和管理您的补丁程序:
- 列出修补作业:查看所有活跃作业和已完成作业的列表。
- 列出虚拟机实例详细信息:查看虚拟机实例的修补状态。
- 描述修补作业:获取有关特定修补作业的详细信息。
- 取消修补作业:取消特定的修补作业。
您可以使用 Google Cloud 控制台、Google Cloud CLI 或 REST 管理修补作业。
准备工作
- 查看 OS Config 配额。
-
如果您尚未设置身份验证,请进行设置。身份验证是通过其进行身份验证以访问 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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
roles/osconfig.patchJobExecutor
:包含运行、取消、获取和列出修补作业的权限。该角色还包含查看修补作业对应实例的详情的权限。roles/osconfig.patchJobViewer
:包含获取和列出修补作业的只读权限。该角色还包含查看修补作业对应实例的详情的权限。- 在 Google Cloud 控制台中,转到 Compute Engine > 虚拟机管理器 > 补丁页面。
- 选择修补作业标签页。
- 在 Google Cloud 控制台中,转到 Compute Engine > 虚拟机管理器 > 补丁页面。
- 选择修补作业标签页。
- 点击要查看的修补作业的名称。
- 向下滚动到已更新的虚拟机实例。
project-id
:您的项目 ID。patch-job-id
:您的修补作业 ID。- 在 Google Cloud 控制台中,转到 Compute Engine > 虚拟机管理器 > 补丁页面。
- 选择修补作业标签页。
- 点击要查看的修补作业的名称。
- 查看更新信息部分。
project-id
:您的项目 ID。patch-job-id
:您的修补作业 ID。- 在 Google Cloud 控制台中,转到 Compute Engine > 虚拟机管理器 > 补丁页面。
- 选择修补作业标签页。
- 展开要取消的修补作业的 操作菜单。
- 选择取消。
project-id
:您的项目 ID。patch-job-id
:您的修补作业 ID。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 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
列出特定修补作业的所有虚拟机实例详细信息
查看使用 OS Patch Management 的所有虚拟机实例的修补作业状态。
控制台
gcloud
使用
os-config patch-jobs list-instance-details
命令列出特定修补作业中所有虚拟机的详细信息。将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 ..."
您可以使用更多标志来对搜索进行过滤和排序以及设置搜索格式。 例如,如需按实例名称降序列出所有非活跃虚拟机的详细信息,请运行以下命令。将
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 Config 代理会完成其所在的子任务,但此后不会继续执行修补作业。子任务是指由该代理执行且无法停止的任务。
例如,如果在虚拟机实例重新启动期间取消修补作业,则“重新启动”操作(以及重新启动后可能执行的任何自动修补操作)会继续执行到完成为止,但该代理不会为该修补作业启动其他任务。
控制台
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
替换以下内容:
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-22。
-