利用维护控制,可以决定何时将自动 OS 映像升级应用到虚拟机规模集。 若要了解如何使用维护控制,请参阅 Azure 虚拟机规模集的维护控制。
本文介绍如何使用 Azure 资源管理器 (ARM) 模板创建维护配置。 将了解如何执行以下操作:
- 创建配置
- 将配置分配给虚拟机
Azure 资源管理器模板是定义项目基础结构和配置的 JavaScript 对象表示法 (JSON) 文件。 模板使用声明性语法。 你可以在不编写用于创建部署的编程命令序列的情况下,描述预期部署。
创建配置
创建配置时,请务必注意存在不同范围,各范围对应的创建模板中都具有唯一属性。 请确保使用正确的范围。
有关此维护配置模板的详细信息,请参阅 maintenanceConfigurations。
主机和 OS 映像
{
"type": "Microsoft.Maintenance/maintenanceConfigurations",
"apiVersion": "2021-09-01-preview",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"properties": {
"extensionProperties": {},
"installPatches": {
"linuxParameters": {
"classificationsToInclude": [ "string" ],
"packageNameMasksToExclude": [ "string" ],
"packageNameMasksToInclude": [ "string" ]
},
"rebootSetting": "string",
"tasks": {
"postTasks": [
{
"parameters": {},
"source": "string",
"taskScope": "string"
}
],
"preTasks": [
{
"parameters": {},
"source": "string",
"taskScope": "string"
}
]
},
"windowsParameters": {
"classificationsToInclude": [ "string" ],
"excludeKbsRequiringReboot": "bool",
"kbNumbersToExclude": [ "string" ],
"kbNumbersToInclude": [ "string" ]
}
},
"maintenanceScope": "string",
"maintenanceWindow": {
"duration": "string",
"expirationDateTime": "string",
"recurEvery": "string",
"startDateTime": "string",
"timeZone": "string"
},
"namespace": "string",
"visibility": "string"
}
}
分配此配置
将配置分配给虚拟机。
有关详细信息,请参阅 configurationAssignments。
{
"type": "Microsoft.Maintenance/configurationAssignments",
"apiVersion": "2021-09-01-preview",
"name": "[variables('maintenanceConfigurationAssignmentName')]",
"location": "string (e.g. chinanorth)",
"scope": "Resource Id of the resource that is being assigned to the Maintenance Configuration (e.g. VMSS Id)"
"properties": {
"maintenanceConfigurationId": "Resource Id of the Maintenance Configuration"
"resourceId": "Resource Id of the resource that is being assigned to the Maintenance Configuration (e.g. VMSS Id)"
}
}