使用 PowerShell 为 Azure 虚拟机规模集上的 OS 映像升级进行维护控制

适用于:✔️ 统一规模集

利用维护控制,可以决定何时将自动来宾 OS 映像升级应用到虚拟机规模集。 本主题介绍维护控制的 Azure PowerShell 选项。 若要了解如何使用维护控制,请参阅 Azure 虚拟机规模集的维护控制

启用 PowerShell 模块

确保 PowerShellGet 为最新版本。

Install-Module -Name PowerShellGet -Repository PSGallery -Force	

安装 Az.Maintenance PowerShell 模块。

Install-Module -Name Az.Maintenance

如果在本地安装,请确保以管理员身份打开 PowerShell 提示符。

系统还可能会要求你确认是否要从不受信任的存储库进行安装。 键入 Y 或选择“全是”以安装该模块。

连接到 Azure 帐户

使用 Connect-AzAccount -Environment AzureChinaCloudSet-AzAccount 连接到所需的 Azure 帐户。

Connect-AzAccount -Environment AzureChinaCloud
Set-AzContext 00a000aa-0a00-0a0a-00aa-a00a000aaa00

$RGName="myMaintenanceRG"
$MaintenanceConfig="myMaintenanceConfig"
$location="chinaeast2"
$vmss="myMaintenanceVMSS"

创建维护配置

创建一个资源组作为适用于配置的容器。 此示例在 chinaeast2 中创建名为 myMaintenanceRG 的资源组 。 如果已有要使用的资源组,可跳过这部分。 只需在其余示例中将资源组名称替换为你自己的资源组。

New-AzResourceGroup `
   -Location $location `
   -Name $RGName

使用 New-AzMaintenanceConfiguration 创建维护配置。 此示例创建名为 myConfig 的维护配置,该配置的范围限定为 OS 映像。

$config = New-AzMaintenanceConfiguration `
   -ResourceGroup $RGName `
   -Name $MaintenanceConfig `
   -MaintenanceScope OSImage `
   -Location $location `
   -StartDateTime "2020-10-01 00:00" `
   -TimeZone "Pacific Standard Time" `
   -Duration "05:00" `
   -RecurEvery "Day"

重要

维护持续时间必须为 5 小时或更长时间。 必须将维护”重复周期”设置为“天”。

使用 -MaintenanceScope OSImage 会确保将维护配置用于控制对来宾 OS 的更新。

如果尝试创建同名的但位于不同位置的配置,则会收到错误。 配置名称对于资源组必须是唯一的。

可以使用 Get-AzMaintenanceConfiguration 来查询可用的维护配置。

Get-AzMaintenanceConfiguration | Format-Table -Property Name,Id

将虚拟机规模集关联到维护配置

无论维护配置的区域和订阅如何,虚拟机规模集都可以关联到任何维护配置。 通过选择使用维护配置,将会在下一个可用维护时段自动安排规模集的新 OS 映像更新。

请使用 New-AzConfigurationAssignment 将虚拟机规模集与维护配置相关联。

New-AzConfigurationAssignment `
   -ResourceGroupName $RGName `
   -Location $location `
   -ResourceName $vmss `
   -ResourceType VirtualMachineScaleSets `
   -ProviderName Microsoft.Compute `
   -ConfigurationAssignmentName $config.Name`
   -MaintenanceConfigurationId $config.Id

启动自动 OS 升级

可以为每个要使用维护控制的虚拟机规模集启用自动 OS 升级。 有关在虚拟机规模集上启用自动 OS 升级的详细信息,请参阅 Azure 虚拟机规模集自动 OS 映像升级

后续步骤