你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

了解 Azure 机器配置

注意

本文引用了 CentOS,这是一个处于生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南

Azure Policy 的机器配置功能提供了将操作系统设置作为代码进行审核或配置的本机功能,同时适用于在 Azure 中运行的计算机和混合已启用 Arc 的计算机。 可以直接在每台计算机上使用该功能,也可以使用 Azure Policy 进行大规模编排。

Azure 中的配置资源被设计为扩展资源。 可以将每个配置想象为计算机的一组额外属性。 配置可以包含如下设置:

  • 操作系统设置
  • 应用程序配置或状态
  • 环境设置

配置不同于策略定义。 机器配置利用 Azure Policy 将配置动态分配给计算机。 还可以 手动将配置分配给计算机。

下表中提供了每个场景的示例。

类型 描述 示例情景
配置管理 你需要服务器的完整表示形式,作为源代码管理中的代码。 部署应包括服务器的属性(大小、网络、存储)和操作系统以及应用程序设置的配置。 “此计算机应为配置为托管我的网站的 Web 服务器。”
遵从性 你需要审核范围内所有计算机的设置,或者部署设置:要么是被动地部署到现有计算机,要么是在部署新计算机时主动部署到其中。 “所有计算机应使用 TLS 1.2。 审核现有计算机,以便能够以受控方式大规模发布所需的更改。 对于新计算机,在它们部署时强制实施设置。

可以在“来宾分配”页的配置中查看每项设置的结果。 如果 Azure Policy 分配已编排配置,并且要对该分配进行编排,则可以在“合规性详细信息”页面上选择“最后评估的资源”链接。

注意

计算机配置目前支持为每台计算机创建最多 50 个来宾分配。

自定义策略的强制模式

为了在服务器设置、应用程序和工作负载的强制和监视方面提供更大的灵活性,计算机配置为每个策略分配提供了三种主要强制模式,如下表所述。

“模式” 描述
审核 仅报告计算机的状态
应用和监视 应用于计算机的配置,然后监视更改
应用和自动更正 应用于计算机的配置,并在偏移时恢复为一致性

提供本文档的视频演练。 (即将推出更新)

启用计算机配置

若要管理环境中计算机(包括 Azure 中的计算机和已启用 Arc 的服务器)的状态,请查看以下详细信息。

资源提供程序

在使用 Azure Policy 的计算机配置功能之前,必须先注册 Microsoft.GuestConfiguration 资源提供程序。 如果计算机配置策略的分配是通过门户完成的,或者如果订阅已在 Microsoft Defender for Cloud 内注册,则会自动注册该资源提供程序。 可以通过门户Azure PowerShellAzure CLI 手动注册。

部署 Azure 虚拟机的要求

若要管理计算机内部的设置,需要启用虚拟机扩展,并且该计算机必须具有系统托管标识。 该扩展下载适用的机器配置分配和相应的依赖项。 该标识用于在计算机读取和写入计算机配置服务时对计算机进行身份验证。 已启用 Arc 的服务器不需要该扩展,因为已连接 Arc 的计算机代理中包含该扩展。

重要

需要使用计算机配置扩展和托管标识来管理 Azure 虚拟机。

若要跨多个计算机大规模部署该扩展,请将策略计划 分配到Deploy prerequisites to enable Guest Configuration policies on virtual machines 到包含你要管理的计算机的管理组、订阅或资源组。

如果你倾向于将扩展和托管标识部署到单个计算机,请参阅使用 Azure 门户在 VM 上为 Azure 资源配置托管标识

要使用计算机配置包来应用配置,需要安装 Azure VM 来宾配置扩展版本 1.26.24 或更高版本。

重要

使用“来宾配置资源参与者”角色创建托管标识或分配策略的操作需要相应的 Azure RBAC 权限才能执行。 若要详细了解 Azure Policy 和 Azure RBAC,请参阅 Azure Policy 中的基于角色的访问控制。

对扩展设置的限制

为了限制扩展对计算机内部运行的应用程序的影响,计算机配置代理的 CPU 消耗不得超过 CPU 的 5%。 对于内置和自定义的定义都存在此限制。 对于已连接 Arc 的计算机代理中的计算机配置服务也是如此。

验证工具

在计算机内,计算机配置代理使用本地工具执行任务。

下表列出了每个受支持的操作系统上使用的本地工具。 对于内置内容,计算机配置会自动处理这些工具的加载。

操作系统 验证工具 说明
Windows操作系统 PowerShell 所需状态配置 侧加载到仅由 Azure Policy 使用的文件夹。 不要与 Windows PowerShell DSC 冲突。 PowerShell 不会添加到系统路径。
Linux PowerShell 所需状态配置 侧加载到仅由 Azure Policy 使用的文件夹。 PowerShell 不会添加到系统路径。
Linux Chef InSpec 在默认位置安装 Chef InSpec 版本 2.2.61,并将其添加到系统路径。 此安装还会安装 InSpec 的依赖项,包括 Ruby 和 Python。

验证频率

计算机配置代理每 5 分钟检查一次新的或更改的来宾分配。 在收到来宾分配后,将按 15 分钟的时间间隔重新检查该配置的设置。 如果分配了多个配置,将按顺序评估每个配置。 长时间运行的配置会影响所有配置的间隔,因为只有在前一个配置完成之后,才会运行下一个配置。

审核完成后,结果将发送到计算机配置服务。 当策略评估触发器执行时,会将计算机状态写入到计算机配置资源提供程序。 此更新会使 Azure Policy 评估 Azure 资源管理器属性。 按需 Azure Policy 评估会从计算机配置资源提供程序检索最新值。 但是,它不会在计算机中触发新活动。 然后,状态将写入 Azure Resource Graph。

支持的客户端类型

计算机配置策略定义包含新版本。 如果来宾配置客户端不兼容,则会排除 Azure 市场中提供的旧版操作系统。 此外,不受其各自发布者生存期支持的 Linux 服务器版本从支持矩阵中排除。

下表显示了 Azure 映像上支持的操作系统列表。 .x 文本是表示 Linux 发行版的新次要版本的符号。

发布者 名称 版本
阿尔玛 阿尔玛Linux 9
亚马逊河 Linux 2
Canonical Ubuntu Server 16.04 - 24.x
Credativ Debian 10.x - 12.x
微软 CBL-Mariner 1 - 2
微软 Azure Linux 3
微软 Windows 客户端 Windows 10、11
微软 Windows Server 2012 - 2025
Oracle Oracle-Linux 7.x - 8.x
OpenLogic CentOS 7.3 - 8.x
Red Hat Red Hat Enterprise Linux* 7.4 - 9.x
洛奇 Rocky Linux 8
SUSE SLES 12 SP5、15.x

* 不支持 Red Hat CoreOS。

机器配置策略定义支持自定义虚拟机映像,但前提是它们必须是上表中的操作系统之一。 计算机配置不支持 VMSS 统一,但支持 VMSS Flex

网络要求

Azure 虚拟机可以使用其本地虚拟网络适配器 (vNIC) 或 Azure 专用链接与计算机配置服务通信。

已启用 Azure Arc 的计算机使用本地网络基础结构连接到 Azure 服务并报告符合性状态。

下表显示了支持 Azure 和启用了 Azure Arc 的计算机的终结点:

区域 地理 网址 存储终结点
东亚 亚太区 agentserviceapi.guestconfiguration.azure.com
eastasia-gas.guestconfiguration.azure.com
ea-gas.guestconfiguration.azure.com
oaasguestconfigeas1.blob.core.windows.net
oaasguestconfigseas1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
东南亚 亚太区 agentserviceapi.guestconfiguration.azure.com
southeastasia-gas.guestconfiguration.azure.com
sea-gas.guestconfiguration.azure.com
oaasguestconfigeas1.blob.core.windows.net
oaasguestconfigseas1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
澳大利亚东部 澳大利亚 agentserviceapi.guestconfiguration.azure.com
australiaeast-gas.guestconfiguration.azure.com
ae-gas.guestconfiguration.azure.com
oaasguestconfigases1.blob.core.windows.net
oaasguestconfigaes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
澳大利亚 澳大利亚 agentserviceapi.guestconfiguration.azure.com
australiaeast-gas.guestconfiguration.azure.com
ae-gas.guestconfiguration.azure.com
oaasguestconfigases1.blob.core.windows.net
oaasguestconfigaes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
巴西 巴西 agentserviceapi.guestconfiguration.azure.com
brazilsouth-gas.guestconfiguration.azure.com
brs-gas.guestconfiguration.azure.com
oaasguestconfigbrss1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
CanadaCentral 加拿大 agentserviceapi.guestconfiguration.azure.com
canadacentral-gas.guestconfiguration.azure.com
cc-gas.guestconfiguration.azure.com
oaasguestconfigccs1.blob.core.windows.net
oaasguestconfigces1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
加拿大东部 加拿大 agentserviceapi.guestconfiguration.azure.com
canadaeast-gas.guestconfiguration.azure.com
ce-gas.guestconfiguration.azure.com
oaasguestconfigccs1.blob.core.windows.net
oaasguestconfigces1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
ChinaEast2 中国 agentserviceapi.guestconfiguration.azure.cn
chinaeast2-gas.guestconfiguration.azure.cn
chne2-gas.guestconfiguration.azure.cn
oaasguestconfigchne2s2.blob.core.chinacloudapi.cn
ChinaNorth 中国 agentserviceapi.guestconfiguration.azure.cn
chinanorth-gas.guestconfiguration.azure.cn
chnn-gas.guestconfiguration.azure.cn
oaasguestconfigchnns2.blob.core.chinacloudapi.cn
ChinaNorth2 中国 agentserviceapi.guestconfiguration.azure.cn
chinanorth2-gas.guestconfiguration.azure.cn
chnn2-gas.guestconfiguration.azure.cn
oaasguestconfigchnn2s2.blob.core.chinacloudapi.cn
ChinaNorth3 中国 agentserviceapi.guestconfiguration.azure.cn
chinanorth3-gas.guestconfiguration.azure.cn
chnn3-gas.guestconfiguration.azure.cn
oaasguestconfigchnn3s1.blob.core.chinacloudapi.cn
NorthEurope 欧洲 agentserviceapi.guestconfiguration.azure.com
northeurope-gas.guestconfiguration.azure.com
ne-gas.guestconfiguration.azure.com
oaasguestconfignes1.blob.core.windows.net
oaasguestconfigwes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
WestEurope 欧洲 agentserviceapi.guestconfiguration.azure.com
westeurope-gas.guestconfiguration.azure.com
we-gas.guestconfiguration.azure.com
oaasguestconfignes1.blob.core.windows.net
oaasguestconfigwes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
FranceCentral 法国 agentserviceapi.guestconfiguration.azure.com
francecentral-gas.guestconfiguration.azure.com
fc-gas.guestconfiguration.azure.com
oaasguestconfigfcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
GermanyNorth 德国 agentserviceapi.guestconfiguration.azure.com
germanynorth-gas.guestconfiguration.azure.com
gen-gas.guestconfiguration.azure.com
oaasguestconfiggens1.blob.core.windows.net
oaasguestconfiggewcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
GermanyWestCentral 德国 agentserviceapi.guestconfiguration.azure.com
germanywestcentral-gas.guestconfiguration.azure.com
gewc-gas.guestconfiguration.azure.com
oaasguestconfiggens1.blob.core.windows.net
oaasguestconfiggewcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
CentralIndia 印度 agentserviceapi.guestconfiguration.azure.com
centralindia-gas.guestconfiguration.azure.com
cid-gas.guestconfiguration.azure.com
oaasguestconfigcids1.blob.core.windows.net
oaasguestconfigsids1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
南英迪亚 印度 agentserviceapi.guestconfiguration.azure.com
southindia-gas.guestconfiguration.azure.com
sid-gas.guestconfiguration.azure.com
oaasguestconfigcids1.blob.core.windows.net
oaasguestconfigsids1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
以色列Central 以色列 agentserviceapi.guestconfiguration.azure.com
israelcentral-gas.guestconfiguration.azure.com
ilc-gas.guestconfiguration.azure.com
oaasguestconfigilcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
意大利北部 意大利 agentserviceapi.guestconfiguration.azure.com
italynorth-gas.guestconfiguration.azure.com
itn-gas.guestconfiguration.azure.com
oaasguestconfigitns1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
日本东部 日本 agentserviceapi.guestconfiguration.azure.com
japaneast-gas.guestconfiguration.azure.com
jpe-gas.guestconfiguration.azure.com
oaasguestconfigjpws1.blob.core.windows.net
oaasguestconfigjpes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
日本西部 日本 agentserviceapi.guestconfiguration.azure.com
japanwest-gas.guestconfiguration.azure.com
jpw-gas.guestconfiguration.azure.com
oaasguestconfigjpws1.blob.core.windows.net
oaasguestconfigjpes1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
韩国中部 韩国 agentserviceapi.guestconfiguration.azure.com
koreacentral-gas.guestconfiguration.azure.com
kc-gas.guestconfiguration.azure.com
oaasguestconfigkcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
墨西哥中心 墨西哥 agentserviceapi.guestconfiguration.azure.com
mexicocentral-gas.guestconfiguration.azure.com
mxc-gas.guestconfiguration.azure.com
oaasguestconfigmxcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
挪威东部 挪威 agentserviceapi.guestconfiguration.azure.com
norwayeast-gas.guestconfiguration.azure.com
noe-gas.guestconfiguration.azure.com
oaasguestconfignoes2.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
波兰Central 波兰 agentserviceapi.guestconfiguration.azure.com
polandcentral-gas.guestconfiguration.azure.com
plc-gas.guestconfiguration.azure.com
oaasguestconfigwcuss1.blob.core.windows.net
卡塔尔中心 卡塔尔 agentserviceapi.guestconfiguration.azure.com
qatarcentral-gas.guestconfiguration.azure.com
qac-gas.guestconfiguration.azure.com
oaasguestconfigqacs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
SouthAfricaNorth SouthAfrica agentserviceapi.guestconfiguration.azure.com
southafricanorth-gas.guestconfiguration.azure.com
san-gas.guestconfiguration.azure.com
oaasguestconfigsans1.blob.core.windows.net
oaasguestconfigsaws1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
SouthAfricaWest SouthAfrica agentserviceapi.guestconfiguration.azure.com
southafricawest-gas.guestconfiguration.azure.com
saw-gas.guestconfiguration.azure.com
oaasguestconfigsans1.blob.core.windows.net
oaasguestconfigsaws1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
西班牙中部 西班牙 agentserviceapi.guestconfiguration.azure.com
spaincentral-gas.guestconfiguration.azure.com
spc-gas.guestconfiguration.azure.com
oaasguestconfigspcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
瑞典Central 瑞典 agentserviceapi.guestconfiguration.azure.com
swedencentral-gas.guestconfiguration.azure.com
swc-gas.guestconfiguration.azure.com
oaasguestconfigswcs1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
瑞士North 瑞士 agentserviceapi.guestconfiguration.azure.com
switzerlandnorth-gas.guestconfiguration.azure.com
stzn-gas.guestconfiguration.azure.com
oaasguestconfigstzns1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
瑞士西部 瑞士 agentserviceapi.guestconfiguration.azure.com
switzerlandwest-gas.guestconfiguration.azure.com
stzw-gas.guestconfiguration.azure.com
oaasguestconfigstzns1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
台湾北 台湾 agentserviceapi.guestconfiguration.azure.com
taiwannorth-gas.guestconfiguration.azure.com
twn-gas.guestconfiguration.azure.com
oaasguestconfigtwns1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
UAENorth 阿拉伯联合酋长国 agentserviceapi.guestconfiguration.azure.com
uaenorth-gas.guestconfiguration.azure.com
uaen-gas.guestconfiguration.azure.com
oaasguestconfiguaens1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
UKSouth 英国 agentserviceapi.guestconfiguration.azure.com
uksouth-gas.guestconfiguration.azure.com
uks-gas.guestconfiguration.azure.com
oaasguestconfigukss1.blob.core.windows.net
oaasguestconfigukws1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
UKWest 英国 agentserviceapi.guestconfiguration.azure.com
ukwest-gas.guestconfiguration.azure.com
ukw-gas.guestconfiguration.azure.com
oaasguestconfigukss1.blob.core.windows.net
oaasguestconfigukws1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
EastUS 美国 agentserviceapi.guestconfiguration.azure.com
eastus-gas.guestconfiguration.azure.com
eus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
EastUS2 美国 agentserviceapi.guestconfiguration.azure.com
eastus2-gas.guestconfiguration.azure.com
eus2-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
WestUS 美国 agentserviceapi.guestconfiguration.azure.com
westus-gas.guestconfiguration.azure.com
wus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
WestUS2 美国 agentserviceapi.guestconfiguration.azure.com
westus2-gas.guestconfiguration.azure.com
wus2-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
WestUS3 美国 agentserviceapi.guestconfiguration.azure.com
westus3-gas.guestconfiguration.azure.com
wus3-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
CentralUS 美国 agentserviceapi.guestconfiguration.azure.com
centralus-gas.guestconfiguration.azure.com
cus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
NorthCentralUS 美国 agentserviceapi.guestconfiguration.azure.com
northcentralus-gas.guestconfiguration.azure.com
ncus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
SouthCentralUS 美国 agentserviceapi.guestconfiguration.azure.com
southcentralus-gas.guestconfiguration.azure.com
scus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
WestCentralUS 美国 agentserviceapi.guestconfiguration.azure.com
westcentralus-gas.guestconfiguration.azure.com
wcus-gas.guestconfiguration.azure.com
oaasguestconfigeuss1.blob.core.windows.net
oaasguestconfigeus2s1.blob.core.windows.net
oaasguestconfigwuss1.blob.core.windows.net
oaasguestconfigwus2s1.blob.core.windows.net
oaasguestconfigncuss1.blob.core.windows.net
oaasguestconfigcuss1.blob.core.windows.net
oaasguestconfigscuss1.blob.core.windows.net
oaasguestconfigwus3s1.blob.core.windows.net
oaasguestconfigwcuss1.blob.core.windows.net
USGovArizona 美国政府 agentserviceapi.guestconfiguration.azure.us
usgovarizona-gas.guestconfiguration.azure.us
usga-gas.guestconfiguration.azure.us
oaasguestconfigusgas1.blob.core.usgovcloudapi.net
USGovTexas 美国政府 agentserviceapi.guestconfiguration.azure.us
usgovtexas-gas.guestconfiguration.azure.us
usgt-gas.guestconfiguration.azure.us
oaasguestconfigusgts1.blob.core.usgovcloudapi.net
USGovVirginia 美国政府 agentserviceapi.guestconfiguration.azure.us
usgovvirginia-gas.guestconfiguration.azure.us
usgv-gas.guestconfiguration.azure.us
oaasguestconfigusgvs1.blob.core.usgovcloudapi.net

通过 Azure 中的虚拟网络进行通信

要与 Azure 中的机器配置资源提供程序通信,计算机需要对端口 443 上的 Azure 数据中心进行出站访问。 如果 Azure 中的网络不允许出站流量,请使用网络安全组规则配置异常。 可使用服务标记AzureArcInfrastructureStorage 引用来宾配置和存储服务,而不必手动维护 Azure 数据中心的 IP 范围列表。 这两个标记都是必需的,因为机器配置内容包由 Azure 存储托管。

虚拟机可以使用专用链接与计算机配置服务通信。 应用名称为 EnablePrivateNetworkGC 且值为 TRUE 的标签以启用此功能。 在将计算机配置策略定义应用到计算机之前或之后,可以应用该标记。

重要

要通过自定义包的专用链接进行通信,必须将指向包位置的链接添加到允许的 URL 列表中。

流量使用 Azure 虚拟公共 IP 地址进行路由,以便使用 Azure 平台资源建立经过身份验证的安全通道。

通过 Azure 外部的公共终结点进行通信

通过将位于本地或其他云中的服务器连接到 Azure Arc,可以使用计算机配置对其进行管理。

对于已启用 Azure Arc 的服务器,允许使用以下模式的流量:

  • 端口:只需使用 TCP 443 即可进行出站 Internet 访问
  • 全局 URL:*.guestconfiguration.azure.com

有关 Azure Connected Machine Agent 针对核心 Azure Arc 和计算机配置方案所需的所有网络终结点的完整列表,请参阅已启用 Azure Arc 的服务器网络要求

将专用链接与已启用 Arc 的服务器配合使用时,将通过专用链接自动下载内置策略包。 无需在已启用 Arc 的服务器上设置任何标记即可启用此功能。

将策略分配给 Azure 之外的计算机

适用于计算机配置的审核策略定义包括 Microsoft.HybridCompute/machines 资源类型。 将自动包括载入到策略分配范围内已启用 Azure Arc 的服务器的任何计算机。

托管标识要求

Deploy prerequisites to enable guest configuration policies on virtual machines 计划中的策略定义会启用系统分配的托管标识(如果不存在)。 计划中有两个管理标识创建的策略定义。 策略定义中的 if 条件基于 Azure 中计算机资源的当前状态确保行为正确。

重要

除了现有的用户分配的标识(若有)之外,这些定义还将在目标资源上创建系统分配的托管标识。 对于现有应用程序,除非在请求中指定用户分配的标识,否则计算机将默认使用系统分配的标识。 了解详细信息

如果计算机当前没有任何托管标识,则有效策略是:添加系统分配的托管标识,在没有标识的虚拟机上启用来宾配置分配

如果计算机当前具有用户分配的系统标识,则有效策略是:添加系统分配的托管标识,在具有用户分配的标识的 VM 上启用来宾配置分配

可用性

设计高度可用解决方案的客户应考虑虚拟机的冗余计划要求,因为来宾分配是 Azure 中计算机资源的扩展。 将来宾分配资源预配到配对的 Azure 区域时,只要该对中至少有一个区域可用,就可查看来宾分配报告。 如果 Azure 区域未配对且变得不可用,则无法访问来宾分配报告。 可以在区域还原后再次访问报告。

最佳做法是,将具有相同参数的相同策略定义分配给解决方案中的所有计算机,以实现高可用性应用程序。 这种方法对于在负载均衡器解决方案后面的可用性集中预配虚拟机的情况尤其适用。 跨所有计算机的单个策略分配的管理开销最小。

对于受 Azure Site Recovery 保护的计算机,请确保主站点和辅助站点中的计算机处于相同定义的 Azure Policy 分配范围内。 对两个站点使用相同的参数值。

数据驻留

机器配置会存储和处理客户数据。 默认情况下,客户数据将复制到配对区域。对于新加坡、巴西南部和东亚区域,所有客户数据将在该区域中进行存储和处理。

计算机配置故障排除

有关对计算机配置进行故障排除的详细信息,请参阅 Azure Policy 故障排除

多个分配

目前,只有某些内置的计算机加配置策略定义支持多个分配。 但是,如果使用最新版本的 GuestConfiguration PowerShell 模块创建机器配置包和策略,则在默认情况下,所有自定义策略都支持多个分配。

下面是支持多个分配的内置机器配置策略定义列表:

身份证件 显示名称
/providers/Microsoft.Authorization/policyDefinitions/5fe81c49-16b6-4870-9cee-45d13bf902ce 应在 Windows 服务器上禁用本地身份验证方法
/providers/Microsoft.Authorization/policyDefinitions/fad40cac-a972-4db0-b204-f1b15cced89a 应在 Linux 计算机上禁用本地身份验证方法
/providers/Microsoft.Authorization/policyDefinitions/f40c7c00-b4e3-4068-a315-5fe81347a904 [预览]:添加用户分配的托管标识,以在虚拟机上启用来宾配置分配
/providers/Microsoft.Authorization/policyDefinitions/63594bb8-43bb-4bf0-bbf8-c67e5c28cb65 :Linux 计算机应满足 Azure 计算的 STIG 合规性要求
/providers/Microsoft.Authorization/policyDefinitions/50c52fc9-cb21-4d99-9031-d6a0c613361c [预览]:Windows 计算机应满足 Azure 计算的 STIG 合规性要求
/providers/Microsoft.Authorization/policyDefinitions/e79ffbda-ff85-465d-ab8e-7e58a557660f :安装了 OMI 的 Linux 计算机应具有版本 1.6.8-1 或更高版本
/providers/Microsoft.Authorization/policyDefinitions/934345e1-4dfb-4c70-90d7-41990dc9608b 审核在受信任的根中不包含指定证书的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/08a2f2d2-94b2-4a7b-aa3b-bb3f523ee6fd 审核 DSC 配置不合规的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/c648fbbb-591c-4acd-b465-ce9b176ca173 审核没有指定的 Windows PowerShell 执行策略的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/3e4e2bd5-15a2-4628-b3e1-58977e9793f3 审核没有安装指定 Windows PowerShell 模块的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/58c460e9-7573-4bb2-9676-339c2f2486bb 审核未启用 Windows 串行控制台的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/e6ebf138-3d71-4935-a13b-9c7fdddd94df 审核未安装指定的服务且“正在运行”的 Windows 计算机
/providers/Microsoft.Authorization/policyDefinitions/c633f6a2-7f8b-4d9e-9456-02f0f04f5505 审核未设置为指定时区的 Windows 计算机

注意

请定期查看此页面,了解支持多个分配的内置机器配置策略定义列表的更新。

给 Azure 管理组的任务

当效果为 Guest ConfigurationAuditIfNotExists 时,可以将“DeployIfNotExists”类别中的 Azure Policy 定义分配到管理组。

重要

在计算机配置策略上创建策略豁免时,需要删除关联的来宾分配,以便阻止代理扫描。

客户端日志文件

计算机配置扩展将日志文件写入以下位置:

Windows操作系统

  • Azure VM:C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log
  • 已启用 Arc 的服务器:C:\ProgramData\GuestConfig\arc_policy_logs\gc_agent.log

Linux

  • Azure VM:/var/lib/GuestConfig/gc_agent_logs/gc_agent.log
  • 已启用 Arc 的服务器:/var/lib/GuestConfig/arc_policy_logs/gc_agent.log

远程收集日志

对计算机配置或模块进行故障排除的第一步应该是按照如何测试计算机配置包工件中的步骤使用 cmdlet。 如果未成功,则收集客户端日志有助于诊断问题。

Windows操作系统

使用 Azure VM 运行命令从日志文件中捕获信息,下面的示例 PowerShell 脚本可能会很有帮助。

$linesToIncludeBeforeMatch = 0
$linesToIncludeAfterMatch  = 10
$params = @{
    Path = 'C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log'
    Pattern = @(
        'DSCEngine'
        'DSCManagedEngine'
    )
    CaseSensitive = $true
    Context = @(
        $linesToIncludeBeforeMatch
        $linesToIncludeAfterMatch
    )
}
Select-String @params | Select-Object -Last 10

Linux

使用 Azure VM 运行命令从日志文件中捕获信息,下面的示例 Bash 脚本可能会很有帮助。

LINES_TO_INCLUDE_BEFORE_MATCH=0
LINES_TO_INCLUDE_AFTER_MATCH=10
LOGPATH=/var/lib/GuestConfig/gc_agent_logs/gc_agent.log
egrep -B $LINES_TO_INCLUDE_BEFORE_MATCH -A $LINES_TO_INCLUDE_AFTER_MATCH 'DSCEngine|DSCManagedEngine' $LOGPATH | tail

代理文件

计算机配置代理将内容包下载到计算机中并提取其内容。 要验证已下载和存储的内容,请查看以下列表中的文件夹位置。

  • Windows: C:\ProgramData\guestconfig\configuration
  • Linux:/var/lib/GuestConfig/Configuration

开放源代码 nxtool 模块功能

新的开放源代码 nxtool 模块 已经发布,以帮助 PowerShell 用户更轻松地管理 Linux 系统。

该模块将有助于管理常见任务,例如:

  • 管理用户和组
  • 执行文件系统操作
  • 管理服务
  • 执行存档操作
  • 管理包

该模块包括用于 Linux 的基于类的 DSC 资源,以及内置的机器配置包。

要提供有关此功能的反馈,请在文档上打开问题。 目前接受此项目的 PR,尽力提供最大的支持。

计算机配置示例

以下位置提供了计算机配置内置策略示例:

后续步骤