本文档介绍如何设置和使用 OS Inventory Management。如需查看 OS Inventory Management 功能的概览,请参阅 OS Inventory Management。
您可以使用 OS Inventory Management 来收集和查看虚拟机实例的操作系统详细信息。这些操作系统详细信息包括主机名、操作系统和内核版本等信息。您还可以获取有关已安装的操作系统软件包、可用的操作系统软件包更新和操作系统漏洞的信息。如需了解使用 OS Inventory Management 的常见场景,请查看何时使用 OS Inventory Management。
准备工作
- 查看 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.
如需查看操作系统清点数据,请使用以下任一方法:
- 在 Google Cloud 控制台中,打开虚拟机实例页面。
- 点击您要查看其操作系统信息的实例的名称。系统会显示实例详情页面。
- 点击操作系统信息标签页。
如需查看操作系统清点数据,您必须启用虚拟机管理器。如果 Google Cloud 控制台提示您启用虚拟机管理器,请选择以下选项之一:- 为当前项目启用:为所选项目中的所有虚拟机启用虚拟机管理器
- 为此虚拟机启用:仅为所选虚拟机启用虚拟机管理器
- 在操作系统信息标签页中查看操作系统漏洞和已安装软件包的列表。
- 可选:如果任何已安装的软件包有更新,请选择软件包名称,然后点击应用更新。
系统会显示补丁页面。如需详细了解如何在虚拟机管理器中使用修补功能,请参阅创建修补作业。 VM_NAME
:您的虚拟机的名称ZONE
:虚拟机实例所在的区域VIEW
:所需的输出信息类型。 提供以下视图类型:basic
:仅显示操作系统信息full
:显示操作系统和软件包的相关信息如果您未指定此项,则默认设置为
basic
。
示例(基本视图)
gcloud compute os-config inventories describe vm1-centos \ --location=us-central1-c
输出示例
architecture: x86_64 hostname: vm1-centos kernelRelease: 3.10.0-1160.92.1.el7.x86_64 kernelVersion: '#1 SMP Tue Jun 20 11:48:01 UTC 2023' longName: CentOS Linux 7 (Core) osconfigAgentVersion: 20230504.00-g1.el7 shortName: centos updateTime: '2023-07-26T17:03:50Z' version: '7'
示例(完整视图)
gcloud compute os-config inventories describe vm1-centos \ --location=us-central1-c \ --view=full
Linux 输出示例
┌─────────────────────────────────────────────────────────────────────────────────────┐ │ Installed Packages (Yum) │ ├─────────────────────────────────────┬──────────────┬────────────────────────────────┤ │ PACKAGE_NAME │ ARCHITECTURE │ VERSION │ ├─────────────────────────────────────┼──────────────┼────────────────────────────────┤ │ GeoIP │ x86_64 │ 1.5.0-13.el7 │ │ NetworkManager │ x86_64 │ 1:1.12.0-8.el7_6 │ │ NetworkManager-libnm │ x86_64 │ 1:1.12.0-8.el7_6 │ │ NetworkManager-team │ x86_64 │ 1:1.12.0-8.el7_6 │ │ NetworkManager-tui │ x86_64 │ 1:1.12.0-8.el7_6 │ │ acl │ x86_64 │ 2.2.51-14.el7 │ │ yum-cron │ all │ 3.4.3-161.el7.centos │ │ yum-metadata-parser │ x86_64 │ 1.1.4-10.el7 │ │ yum-plugin-fastestmirror │ all │ 1.1.31-50.el7 │ │ zlib │ x86_64 │ 1.2.7-18.el7 │ └─────────────────────────────────────┴──────────────┴────────────────────────────────┘ ┌───────────────────────────────────────────────────────────────────────────────┐ │ Package Updates Available (Yum) │ ├───────────────────────────────┬──────────────┬────────────────────────────────┤ │ PACKAGE_NAME │ ARCHITECTURE │ VERSION │ ├───────────────────────────────┼──────────────┼────────────────────────────────┤ │ GeoIP │ x86_64 │ 1.5.0-14.el7 │ │ NetworkManager │ x86_64 │ 1:1.18.8-2.el7_9 │ │ NetworkManager-libnm │ x86_64 │ 1:1.18.8-2.el7_9 │ │ NetworkManager-team │ x86_64 │ 1:1.18.8-2.el7_9 │ │ yum-cron │ all │ 3.4.3-168.el7.centos │ │ yum-plugin-fastestmirror │ all │ 1.1.31-54.el7_8 │ │ zlib │ x86_64 │ 1.2.7-19.el7_9 │ └───────────────────────────────┴──────────────┴────────────────────────────────┘ architecture: x86_64 hostname: vm1-centos kernelRelease: 3.10.0-957.1.3.el7.x86_64 kernelVersion: '#1 SMP Thu Nov 29 14:49:43 UTC 2018' longName: CentOS Linux 7 (Core) osconfigAgentVersion: 20230504.00-g1.el7 shortName: centos updateTime: '2021-05-11T22:21:52.323Z' version: '7'
Windows 输出示例
┌───────────────────────────────────────────────────────────┐ │ Installed Packages (GooGet) │ ├───────────────────────┬──────────────┬────────────────────┤ │ PACKAGE_NAME │ ARCHITECTURE │ VERSION │ ├───────────────────────┼──────────────┼────────────────────┤ │ google-osconfig-agent │ x86_64 │ 20210415.4.0+win@1 │ └───────────────────────┴──────────────┴────────────────────┘ ┌───────────────────────────────────────────────────┐ │ Installed Packages (Windows Update Agent) │ ├───────┬────────────┬────────────────┬─────────────┤ │ TITLE │ CATEGORIES │ KB_ARTICLE_IDS │ SUPPORT_URL │ ├───────┼────────────┼────────────────┼─────────────┤ │ title │ C1, C2 │ 4589208 │ url.com │ └───────┴────────────┴────────────────┴─────────────┘ ┌───────────────────────────────────────────────────────────────┐ │ Installed Packages (Quick Fix Engineering) │ ├─────────┬─────────────────┬────────────┬──────────────────────┤ │ CAPTION │ DESCRIPTION │ HOT_FIX_ID │ INSTALL_TIME │ ├─────────┼─────────────────┼────────────┼──────────────────────┤ │ caption │ Security Update │ KB4470788 │ 2019-03-12T00:00:00Z │ └─────────┴─────────────────┴────────────┴──────────────────────┘ ┌───────────────────────────────────────────────────────────────────────────┐ │ Installed Packages (Windows Application) │ ├──────────────────┬─────────────────┬───────────────────────┬──────────────┤ │ DISPLAY_NAME │ DISPLAY_VERSION │ PUBLISHER │ INSTALL_DATE │ ├──────────────────┼─────────────────┼───────────────────────┼──────────────┤ │ PowerShell 7-x64 │ 7.0.2.0 │ Microsoft Corporation │ 2021-06-08 │ └──────────────────┴─────────────────┴───────────────────────┴──────────────┘ ┌───────────────────────────────────────────────────────────┐ │ Package Updates Available (GooGet) │ ├───────────────────────┬──────────────┬────────────────────┤ │ PACKAGE_NAME │ ARCHITECTURE │ VERSION │ ├───────────────────────┼──────────────┼────────────────────┤ │ google-osconfig-agent │ x86_64 │ 20210415.4.0+win@1 │ └───────────────────────┴──────────────┴────────────────────┘ ┌───────────────────────────────────────────────────┐ │ Package Updates Available (Windows Update Agent) │ ├───────┬────────────┬────────────────┬─────────────┤ │ TITLE │ CATEGORIES │ KB_ARTICLE_IDS │ SUPPORT_URL │ ├───────┼────────────┼────────────────┼─────────────┤ │ title │ C1, C2 │ 4589208 │ url.com │ └───────┴────────────┴────────────────┴─────────────┘ ┌───────────────────────────────────────────────────────────────┐ │ Package Updates Available (Quick Fix Engineering) │ ├─────────┬─────────────────┬────────────┬──────────────────────┤ │ CAPTION │ DESCRIPTION │ HOT_FIX_ID │ INSTALL_TIME │ ├─────────┼─────────────────┼────────────┼──────────────────────┤ │ caption │ Security Update │ KB4470788 │ 2019-03-12T00:00:00Z │ └─────────┴─────────────────┴────────────┴──────────────────────┘ architecture: x86_64 hostname: vm3-windows kernelRelease: 10.0.17763.1817 kernelVersion: 10.0.17763.1817 (WinBuild.160101.0800) longName: Microsoft Windows Server 2019 Datacenter osconfigAgentVersion: 20210901.00.0+win@1 shortName: windows updateTime: '2021-09-12T22:14:35Z' version: 10.0.17763
PROJECT_ID
:您的项目 IDZONE
:虚拟机实例所在的区域INSTANCE
:指定虚拟机的实例 ID 或名称ZONE
:该虚拟机所在的可用区VIEW
:所需的输出信息类型。 提供以下视图类型:basic
:仅显示操作系统信息full
:显示操作系统和软件包的相关信息如果您未指定此项,则默认设置为
basic
。
示例(基本视图)
gcloud compute os-config inventories list \ --location=us-central1-c
输出内容类似如下:
INSTANCE_ID INSTANCE_NAME OS OSCONFIG_AGENT_VERSION UPDATE_TIME 29255009728795105 vm1-centos CentOS Linux 7 (Core) 20230504.00-g1.el7 2023-07-26T16:53:49Z 5138980234596718741 vm2-rhel8 Red Hat Enterprise Linux 8.8 (Ootpa) 20230504.00-g1.el8 2023-07-26T16:55:33Z 7127836223366142250 vm3-windows Microsoft Windows Server 2022 Datacenter 20230403.00.0+win@1 2023-07-26T16:49:16Z
示例(完整视图)
gcloud compute os-config inventories list \ --location=us-central1-c \ --view=full
输出类似于以下内容:
INSTANCE_ID INSTANCE_NAME OS INSTALLED_PACKAGES AVAILABLE_PACKAGES OSCONFIG_AGENT_VERSION UPDATE_TIME 29255009728795105 vm1-centos CentOS Linux 7 (Core) 334 2 20230504.00-g1.el7 2023-07-26T16:53:49Z 5932621394110773366 vm2-rhel8 Red Hat Enterprise Linux 8.8 (Ootpa) 410 138 20230504.00-g1.el8 2023-07-26T16:55:33Z 7127836223366142250 vm3-windows Microsoft Windows Server 2022 Datacenter 36 6 20230403.00.0+win@1 2023-07-26T16:49:16Z
PROJECT_ID
:您的项目 IDZONE
:虚拟机所在的区域- 设置虚拟机管理器。
- 在您的 Google Cloud 项目上,启用 Cloud Asset Inventory API、Google Cloud CLI 并分配权限。
VM_NAME
:您的虚拟机的名称ZONE
:该虚拟机所在的区域
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
支持的操作系统
如需查看支持 OS Inventory Management 的操作系统和版本的完整列表,请参阅操作系统详细信息。
所需的角色和权限
如需获得列出和描述库存数据所需的权限,请让管理员向您授予 OS Inventory Viewer (
roles/osconfig.inventoryViewer
) IAM 角色。 如需详细了解如何授予角色,请参阅管理访问权限。设置虚拟机
您必须先配置虚拟机,然后才能使用 OS Inventory Management。如需配置虚拟机以使用 OS Inventory Management,请设置虚拟机管理器。
在虚拟机上设置虚拟机管理器后,您可以查看操作系统清点数据和漏洞报告。
查看操作系统清点数据
查看虚拟机的操作系统清点数据
您可以使用 Google Cloud 控制台、gcloud CLI 或 OS Config API 查看特定虚拟机的操作系统信息。
控制台
如需使用 Google Cloud Console 查看虚拟机上已安装的软件包的漏洞和信息,请执行以下步骤:
gcloud
如需查看特定虚拟机的清点详情,请运行
os-config inventories describe
命令:gcloud compute os-config inventories describe VM_NAME \ --location=ZONE \ --view=VIEW
请替换以下内容:
REST
如需查看特定虚拟机的清点详情,请创建对
projects.locations.instances.inventories.get
方法的GET
请求。GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/INSTANCE/inventory
请替换以下内容:
查看特定可用区中虚拟机的操作系统清点数据
您可以使用 gcloud CLI 或 OS Config API 查看特定可用区中虚拟机的操作系统信息。
gcloud
如需查看特定可用区中虚拟机的清点数据列表,请运行
os-config inventories list
命令。gcloud compute os-config inventories list \ --location=ZONE \ --view=VIEW
请替换以下内容:
REST
如需查看特定可用区中虚拟机的清点数据列表,请创建对
projects.locations.instances.inventories.list
方法的GET
请求。GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/–/inventories
请替换以下内容:
查看来自 Cloud Asset Inventory 的操作系统清点数据
OS Inventory Management 会存储清点和漏洞报告数据,并将其转发到 Cloud Asset Inventory。Cloud Asset Inventory 是一种元数据清点服务,可让您查看、监控和分析整个 Google Cloud 中的资产。借助 Cloud Asset Inventory,您可以轮询信息并查看数据中的更改。
如需从 Cloud Asset Inventory 访问操作系统清点和漏洞报告数据,您需要完成以下设置:
如需了解详情,请参阅查看虚拟机管理器数据。
OS Inventory Management(早期版本)
如果您仍在使用早期版本的 OS Inventory Management,请展开即可下部分查看 Google Cloud CLI 的说明。
OS Inventory Management(早期版本)
列出虚拟机如需查看设置了 OS Inventory Management 的虚拟机的列表,请运行
instances os-inventory list-instances
命令。例如,如需列出具有清点数据的所有实例,请运行以下命令:
gcloud compute instances os-inventory list-instances
输出内容类似如下:
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS inventory-instance us-east1-b e2-standard-2 192.0.2.1 RUNNING instance-inventory1 us-west1-b e2-standard-2 192.0.2.2 RUNNING instance-inventory2 asia-east2-b e2-standard-2 192.0.2.3 RUNNING
您还可以使用过滤器缩小结果范围。例如,您可以通过运行以下命令来列出所有设置了 OS Inventory Management 且主机名与正则表达式
instance-*
匹配的虚拟机:gcloud compute instances os-inventory list-instances --inventory-filter="Hostname~instance-*"
输出内容类似如下:
NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS inventory-instance us-east1-b e2-standard-2 192.0.2.1 RUNNING instance-inventory1 us-west1-b e2-standard-2 192.0.2.2 RUNNING instance-inventory2 asia-east2-b e2-standard-2 192.0.2.3 RUNNING
查看清点数据如需查看实例的清点数据,请使用
instances os-inventory describe
命令。如需查看为虚拟机收集的清点数据,请运行以下命令:
gcloud compute instances os-inventory describe VM_NAME \ --zone=ZONE
请替换以下内容:
如需查看返回的输出详细信息的类型,请查看 OS Inventory Management 提供的信息。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-11-21。
-