使用 SQL Server IaaS 代理扩展在 Azure 虚拟机上自动完成管理任务

适用于: Azure VM 上的 SQL Server

SQL Server IaaS 代理扩展 (SqlIaasExtension) 在 Azure 虚拟机上运行,以自动执行管理任务。 本文概述了该扩展支持的服务概述。 本文还提供了有关安装、状态和删除扩展的说明。

备注

Azure 提供两种不同的部署模型用于创建和处理资源:Azure 资源管理器模型和经典模型。 本文介绍了资源管理器部署模型的使用。 对于新部署,建议使用资源管理器部署模型而非经典部署模型。

若要查看这篇文章的经典版,请参阅适用于 SQL Server VM(经典)的 SQL Server 代理扩展

支持的服务

SQL Server IaaS 代理扩展支持以下管理任务:

管理功能 说明
SQL Server 自动备份 对 VM 中的 SQL Server 默认实例或已正确安装的命名实例自动执行所有数据库的备份计划。 有关详细信息,请参阅 Azure 虚拟机中 SQL Server 的自动备份 (Resource Manager)
SQL Server 自动修补 配置维护时段,可在此时段对 VM 进行重要的 Windows 更新,避开工作负荷的高峰期。 有关详细信息,请参阅 Azure 虚拟机中 SQL Server 的自动修补 (Resource Manager)
Azure 密钥保管库集成 可让你在 SQL Server VM 上自动安装和配置 Azure 密钥保管库。 有关详细信息,请参阅 为 Azure 虚拟机上的 SQL Server 配置 Azure 密钥保管库集成 (Resource Manager)

安装并运行 SQL Server Iaas 代理扩展后,它将使管理功能可用:

  • 在 Azure 门户的虚拟机的 SQL Server 面板中,通过 Azure 市场上 SQL Server 映像的 Azure PowerShell。
  • 通过 Azure PowerShell 手动安装扩展。

先决条件

下面是在 VM 上使用 SQL Server IaaS 代理扩展的要求:

操作系统

  • Windows Server 2008 R2
  • Windows Server 2012
  • Windows Server 2012 R2
  • Windows Server 2016
  • Windows Server 2019

SQL Server 版本

  • SQL Server 2008
  • SQL Server 2008 R2
  • SQL Server 2012
  • SQL Server 2014
  • SQL Server 2016
  • SQL Server 2017
  • SQL Server 2019

Azure PowerShell

备注

本文已经过更新,以便使用 Azure Az PowerShell 模块。 若要与 Azure 交互,建议使用的 PowerShell 模块是 Az PowerShell 模块。 若要开始使用 Az PowerShell 模块,请参阅安装 Azure PowerShell。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

安装

使用 Azure 门户预配某个 SQL Server 虚拟机 Azure 市场映像时,会自动安装 SQL Server IaaS 扩展。 如果需要,可以使用以下 PowerShell 命令手动安装 SQL Server IaaS 代理:

Set-AzVMSqlServerExtension -VMName "sql2017" `
-ResourceGroupName "LabsqlIAASagent" -Name "SQLIaasExtension" `
-Version "2.0" -Location "China North";  

备注

安装扩展会重新启动 SQL Server 服务。

在具有单个命名 SQL Server 实例的 VM 上安装

如果卸载了默认实例并且重新安装了 IaaS 扩展,则 SQL Server IaaS 扩展将与 SQL Server 上的命名实例一起使用。

若要使用 SQL Server 的命名实例,请执行以下步骤:

  1. 从 Azure 市场部署 SQL Server VM。
  2. Azure 门户中卸载 IaaS 扩展。
  3. 完全卸载 SQL Server VM 中的 SQL Server。
  4. 在 SQL Server VM 中将 SQL Server 与命名实例一起安装。
  5. 使用 powershell 脚本安装 IaaS 扩展。

获取 SQL Server IaaS 扩展的状态

验证是否已安装扩展的方法之一是在 Azure 门户中查看代理状态。 在虚拟机窗口中选择“所有设置”,然后选择“扩展”。 应看到列出“SqlIaasExtension”扩展。

Azure 门户中 SQL Server IaaS 代理扩展的状态

也可以使用 Get-AzVMSqlServerExtension Azure PowerShell cmdlet:

Get-AzVMSqlServerExtension -VMName "vmname" -ResourceGroupName "resourcegroupname"

上一个命令确认已安装代理并提供常规状态信息。 还可使用以下命令获取有关自动备份和修补的特定状态信息:

$sqlext = Get-AzVMSqlServerExtension -VMName "vmname" -ResourceGroupName "resourcegroupname"
$sqlext.AutoPatchingSettings
$sqlext.AutoBackupSettings

删除

在 Azure 门户中,可以通过选择虚拟机属性的“扩展”窗口中的省略号来卸载扩展。 然后选择“删除”。

在 Azure 门户中卸载 SQL Server IaaS 代理扩展

也可以使用 Remove-AzVMSqlServerExtension PowerShell cmdlet:

Remove-AzVMSqlServerExtension -ResourceGroupName "resourcegroupname" -VMName "vmname" -Name "SqlIaasExtension"

后续步骤

开始使用扩展支持的服务之一。 有关信息,请参阅本文的支持的服务部分中提到的文章。

有关在 Azure 虚拟机中运行 SQL Server 的详细信息,请参阅什么是 Azure 虚拟机中的 SQL Server?