适用于 Azure VM 上的 SQL Server 的 Azure 更新管理器
本文介绍如何将 Azure 更新管理器与适合 Windows 或 Linux Azure 虚拟机 (VM) 上的 SQL Server 的 SQL 虚拟机资源集成。 使用 Azure 更新管理器,可以自动为 SQL Server 安装累积更新,以及自动安装标记为“关键”或“重要”的 SQL Server 和 OS 更新。
Azure 更新管理器是一项统一的服务,可帮助大规模管理和治理所有虚拟机和 SQL Server 实例的更新。 与自动修补不同,Azure 更新管理器可为 SQL Server 安装累积更新。
使用 Azure 更新管理器可以:
- 按需执行更新
- 大规模管理多个 VM 的更新
- 在指定维护时段内为修补程序配置计划
- 执行定期评估,每隔 24 小时自动检查 VM 更新,并报告不符合要求的计算机
注意
应使用 Azure 更新管理器或自动修补来管理 SQL Server VM 的自动更新,但这两者不能同时使用。 启用自动修补和 Azure 更新管理器可能会导致意外行为、计划冲突和指定维护时段外的意外更改。 在使用 Azure 更新管理器之前禁用自动修补,或使用 PowerShell 直接迁移到 Azure 更新管理器。
可以通过 Azure 门户为 SQL Server VM 启用 Azure 更新管理器。
在 Azure 门户中转到 Linux 虚拟机资源。
在资源菜单的“操作”下选择“更新”。
选择“禁用”禁用“自动修补”,因为如果启用了自动修补,就不应该使用 Azure 更新管理器。
在导航栏中选择“试用 Azure 更新管理器”打开新的“更新”页面,该页面会将 Azure 更新管理器集成到虚拟机资源中。 如果看到“退出新体验”,则表示已启用 Azure 更新管理器集成,无需执行进一步操作。
(可选)如果要返回自动修补,请选择“退出新体验”以返回“自动修补”页,然后选择“启用”以启用自动修补。 这将禁用 Azure 更新管理器集成。
尽管 Azure 更新管理器为更新提供了可靠的计划工具,但也可以手动检查更新,方法是选择导航栏中的“检查更新”,然后选择“确定”立即触发评估。
评估完成后,从导航栏中选择“刷新”来刷新 Azure 更新管理器,从而显示所有可用更新(包括 SQL Server 累积更新)的列表。
如果要按需安装特定更新,请从导航栏中选择“一次性更新”以打开“安装一次性更新”页。
默认情况下,“安装一次性更新”页的“计算机”选项卡会显示已打开的 SQL Server VM,不过也可以选择“添加计算机”来添加其他要按需更新的虚拟机。
要更新计算机,请执行以下步骤:
- 选中要更新的计算机旁边的复选框,然后选择“下一步”导航到“更新”选项卡。
- 在“更新”选项卡上,根据更新的分类、KB ID 或在特定修补程序发布日期之后选择要安装的更新类型。
- 在“要安装的选定更新预览版”部分中,根据选择检查要安装的更新。 要求重启 VM 的更新的“重新启动状态”为 CanRequestReboot。
- 选择“下一步”,然后选择最适合需求的安装属性,例如何时重新启动 VM。
- 选择“下一步”对选项执行最终审查,然后选择“安装”启动修补过程。
Azure 更新管理器的优点之一是能够在一个位置上管理 Azure VM 上的整个 SQL Server 群。 在 Azure 更新管理器中,可以根据订阅、资源组和工作负载进行筛选。
在门户搜索框中键入“Azure 更新管理器”或在 SQL 虚拟机资源“更新”页面中选择“Azure 更新管理器”,即可访问 Azure 更新管理器。
要更新多个 SQL Server VM,请执行以下步骤:
- 转到 Azure 门户中的“Azure 更新管理器”。
- 选择“管理”下的“计算机”。
- 按“SQL 虚拟机”筛选工作负载。
- 选中要更新的计算机旁边的复选框,然后从导航栏中选择“启用 Microsoft 更新”,以对所有选定的 VM 进行 Microsoft 更新。
- 要更新所选 VM,请先选择“检查更新”以确定所选 VM 是否有可用更新。
- 然后选择“一次性更新”以按需执行更新,或选择“计划更新”以创建更新所选 VM 的计划。
Azure 更新管理器的另一个优势在于能够使用定期评估功能自动检查 SQL Server VM 的可用更新,并从中心位置验证是否所有 VM 都符合要求。 更新管理器会每 24 小时对每个已启用定期评估的 VM 执行检查更新。
在 SQL 虚拟机资源“更新”页面的“推荐的更新”选项卡上,从“定期评估”旁边选择“立即启用”,即可为特定 SQL Server VM 启用定期评估。
或者,要为多个 SQL Server VM 启用定期评估,请执行以下步骤:
转到 Azure 门户中的“Azure 更新管理器”。
选择“管理”下的“计算机”。
- 对于 Windows,按“SQL 虚拟机”筛选工作负载。
- 对于 Linux,按 OS 筛选工作负载。
选中要启用定期评估的计算机旁边的复选框,然后从导航栏中的“设置”下拉列表中选择“更新设置”。
在“更新设置”对话框中选择“更新设置”,转到“更改更新设置”页。
可以更新 Azure 更新管理器中选择的计算机的“定期评估”设置,也可以选择“添加计算机”来为其他计算机配置设置。
完成更改后,选择“保存”,导航回 Azure 更新管理器。
Azure 更新管理器可提供强大的计划功能。 可以为单个 VM 创建计划,或将多台计算机分配到同一计划中,从而更灵活地控制 SQL Server VM 群的修补时间。
可以从 SQL 虚拟机资源“更新”页面中选择“计划更新”,为特定 SQL Server VM 配置计划;也可以从 Azure 更新管理器中选择“计划更新”,为多个虚拟机配置计划。
要为多个 SQL Server VM 配置计划,请执行以下步骤:
转到 Azure 门户中的“Azure 更新管理器”。
选择“管理”下的“计算机”。
- 对于 Windows,按“SQL 虚拟机”筛选工作负载。
- 对于 Linux,按 OS 筛选工作负载。
选中要为其配置计划的计算机旁边的复选框,打开“创建维护配置”页。
在“基本信息”选项卡上,填写订阅、资源组和配置详细信息,例如计划名称。
选择“添加计划”以定义维护时段。
(可选)如果要在指定计划内自动安装 SQL Server 累积更新,则在“更新”选项卡上,选择“包括更新分类”,然后检查“更新”旁边的复选框。 单击添加保存设置。
选择“查看 + 创建”以创建计划。
创建计划后,返回“Azure 更新管理器”,并选择要使用新计划的虚拟机。
在“更新设置”对话框中选择“更新设置”,转到“更改更新设置”页。
将“修补业务流程”选项更新为“客户托管计划”,以确保根据所选计划修补 VM,而不是根据 Microsoft 默认设置自动修补。
如果当前使用的是自动修补,并且想迁移到 Azure 更新管理器,则可使用 MigrateSQLVMPatchingSchedule PowerShell 模块执行以下步骤:
- 禁用自动修补
- 在虚拟机上启用 Microsoft 更新
- 在 Azure 更新管理器中创建新的维护配置,且计划类似于自动修补
- 将虚拟机分配给维护配置
要使用 PowerShell 迁移到 Azure 更新管理器,可使用以下示例脚本:
$rgname = 'YourResourceGroup'
$vmname = 'YourVM'
# Install latest migration module
Install-Module -Name MigrateSQLVMPatchingSchedule-Module -Force -AllowClobber
# Import the module
Import-Module MigrateSQLVMPatchingSchedule-Module
Convert-SQLVMPatchingSchedule -ResourceGroupName $rgname -VmName $vmname
脚本的输出包括自动修补中关于旧计划的详细信息,以及 Azure 更新管理器中关于新计划的详细信息。 例如,若自动修补计划是每周五,开始时间为凌晨 2 点,持续时长为 150 分钟,则脚本的输出为:
考虑以下情况:
- 通过 SQL Server IaaS 代理扩展进行的自动修补与 Azure 更新管理器不兼容。 如果选择使用 Azure 更新管理器管理 SQL Server VM,请务必禁用自动修补以避免意外和计划外修补。
- Azure 更新管理器不知道是否已为 SQL Server VM 配置 AlwaysOn 可用性组,因此在为可用性组副本创建修补计划时要格外小心,以避免意外故障转移。
若要了解详细信息,请查看以下文章:
- 关于 Azure 更新管理器。
- 检查并安装按需更新。
- 在 Azure VM 上计划修补配置。
- 更新 Azure 更新管理器中的配置设置。
有关详细信息,请参阅以下文章: