本页面简要介绍了操作系统政策。使用操作系统政策来自动执行和集中管理虚拟机 (VM) 实例上软件配置的部署、配置、维护和报告。
使用场景
操作系统政策非常适合以下场景:
- 为维护和日志记录等任务安装和维护代理
- 部署代理(如安全代理),并确保这些代理在所有虚拟机上运行
- 提高启动脚本的灵活性。您可以使用操作系统政策修改现有脚本,并重新部署它们
- 运行合规性检查
- 添加软件包的更新代码库
- 管理操作系统中的文件
- 运行基于条件的脚本。您可以设置根据特定条件运行的脚本,以便在操作系统内保持一致状态。
组件
操作系统政策
操作系统政策就是一个文件,其中包含操作系统资源(如软件包、存储库、文件或脚本定义的自定义资源)的声明性配置。
操作系统资源可以执行单个任务,例如安装代理,您可以重复使用它,而无需在不同的分配任务中进行更改。 您可以通过将多个操作系统资源组合为一项操作系统政策来创建多步骤工作流。例如,操作系统政策可以有一个用于设置代码库的资源,以及另一个用于安装该代码库中特定软件包的资源。
如需详细了解操作系统政策,请参阅操作系统政策和操作系统政策分配任务。
操作系统政策分配任务
虚拟机管理器使用操作系统政策分配任务,将操作系统政策应用于虚拟机。使用操作系统政策分配,结合使用多项操作系统政策,并使用标签、操作系统系列和地区等过滤条件将其应用于一组动态虚拟机。
例如,可将三种政策应用于测试环境中的所有 Ubuntu 虚拟机的操作系统政策分配任务,但排除运行 Google Kubernetes Engine 的 Ubuntu 虚拟机,您可以通过指定以下内容来创建以下政策:
- 政策 A:安装监控代理
- 政策 B:安装日志记录代理
- 政策 C:安装安全代理
- 包含标签:
env:test
- 排除标签:
goog-gke-node
- 操作系统系列:
ubuntu
发布
当您创建新的操作系统政策分配任务时,虚拟机管理器会根据发布配置将操作系统政策应用于每个虚拟机。在发布期间,会在虚拟机上放置各操作系统政策的一个副本。更新操作系统政策分配任务时,虚拟机管理器会检查目标虚拟机上操作系统政策的配置更改并强制执行。
我们建议您缓慢地应用新的配置更改,以确保您有时间来识别可能因配置更改而造成的任何中断。这为您提供了取消发布并解决问题所需的时间。
通过指定发布选项,您可以调整配置更改并控制配置部署的速度。操作系统政策分配任务的每项操作都会启动发布流程。操作包括创建、更新或删除操作系统政策分配任务。
您可以使用发布选项来设置以下内容:
- 波次规模(中断预算):一次发布可以发布的虚拟机的固定数量或百分比。这表示无论何时进行发布,仅以指定数量的虚拟机为发布目标。
- 等待时间:从服务向虚拟机应用政策到虚拟机从中断阈值中移除之间的时间。例如,等待时间为 15 分钟,这表示发布过程必须在将政策应用于虚拟机之后等待 15 分钟,然后才能从中断阈值中移除虚拟机并继续发布。 等待时间有助于控制发布速度,也有助于您尽早发现和解决潜在的发布问题。请选择足够长的时间,以便监控发布状态。
如需了解如何创建操作系统政策分配任务,请参阅创建操作系统政策分配任务。
OS Config 代理
在虚拟机管理器设置期间,项目中的虚拟机会启用 OS Config 代理。 在这些目标虚拟机上运行的 OS Config 代理使用标准系统实用程序来应用操作系统政策中指定的更改。
- Linux 虚拟机运行系统软件包管理器,例如用于安装软件包的
apt
或yum
,或用于编写脚本的/bin/sh
。 - Windows 虚拟机运行
googet
软件包管理系统和 PowerShell 来写脚本。
如需了解如何设置虚拟机管理器,请参阅设置虚拟机管理器。
操作系统政策的工作原理
如需使用操作系统政策来维护操作系统,请执行以下操作:
- 创建或下载操作系统政策
- 创建操作系统政策分配任务,以将这些操作系统政策应用于目标虚拟机
创建操作系统政策分配任务后,虚拟机管理器会定期检查并强制执行这些操作系统政策。每次强制执行检查之间的时间间隔为 60 分钟。
在检查和强制执行期间,虚拟机管理器会完成以下步骤:
- 确定一个虚拟机的操作系统政策分配任务
- 确定与该操作系统政策分配任务关联的操作系统政策
- 将各操作系统政策的信息发送到虚拟机上运行的 OS Config 代理
- 然后,OS Config 代理会验证各政策并执行更新,具体如下:
- 如果操作系统政策中的资源已处于理想状态,则 OS Config 代理不会执行任何操作
- 如果操作系统政策中的资源未处于理想状态,则 OS Config 代理会采取适当的操作,来将这些资源置于理想状态
- 收集应用于虚拟机的各操作系统政策的合规性状态。如需查看合规性报告,请参阅查看合规性报告。
价格
如需了解价格,请参阅 VM 管理器价格。