先决条件 – 已启用 Azure Arc 的 SQL Server

适用于:SQL Server

已启用 Azure Arc 的 SQL Server 实例是本地或连接到 Azure Arc 的云提供商中的实例。本文将介绍这些先决条件。

如果 SQL Server 虚拟机位于 VMware 群集上,请查看 VMware 上的支持

部署之前

在 Arc 启用 SQL Server 实例之前,需要执行以下操作:

安装帐户权限

用户或服务主体需要:

  • 对订阅的读取权限
  • 对操作系统的本地管理员权限,以安装和配置代理。
    • 对于 Linux,请使用根帐户
    • 对于 Windows,请使用属于本地管理员组的帐户

在为 SQL Server 启用 Arc 之前,安装脚本会检查:

  • 支持已启用 Arc 的 SQL Server 的区域
  • 已注册 Microsoft.AzureArcData 资源提供程序

这些检查需要用户对订阅具有读取权限。

用户或服务主体需要 Azure 资源组中的以下权限才能完成任务。 Specifically:

  • Azure Connected Machine Onboarding 角色
  • Microsoft.AzureArcData/register/action
  • Microsoft.HybridCompute/machines/extensions/read
  • Microsoft.HybridCompute/machines/extensions/write
  • Microsoft.Resources/deployments/validate/action

可向用户分配具有这些权限的内置角色,例如:

有关详细信息,请参阅 使用 Azure 门户分配 Azure 角色

验证用户数据库状态

在 Azure Arc 启用 SQL Server 实例时,连接会设置一些数据库权限,以便可以通过 Azure 管理数据库。 有关在数据库级别设置的权限的详细信息,请查看 SQL 权限

仅包含处于联机状态且可更新的数据库。

验证计划通过 Azure 管理的任何数据库的状态。

此查询列出所有数据库及其状态,以及它们是否可更新:

SELECT 
    name AS DatabaseName,
    CASE 
        WHEN state_desc = 'ONLINE' THEN 'Online'
        WHEN state_desc = 'OFFLINE' THEN 'Offline'
        ELSE 'Unknown'
    END AS Status,
    CASE 
        WHEN is_read_only = 0 THEN 'READ_WRITE'
        ELSE 'READ_ONLY'
    END AS UpdateableStatus
FROM sys.databases;

对启用的实例运行该查询。

服务帐户权限

SQL Server 服务帐户必须是每个 SQL Server 实例上 sysadmin 固定服务器角色的成员。 默认情况下,SQL Server 服务帐户是 sysadmin 固定服务器角色的成员。

有关此要求的详细信息,请查看 SQL Server 服务帐户

设置代理排除项

Note

2024 年 3 月发布版本及之前的版本需要此部分中的排除。

从 2024 年 4 月的版本开始,不需要此排除项。

如果使用代理服务器,请将 NO_PROXY 环境变量设置为排除以下代理流量:

  • localhost
  • 127.0.0.1

Note

从扩展版本 1.1.2986.256开始,可以设置 NO_PROXY 环境变量来绕过 URL 的代理。

可以将扩展配置为绕过对特定 URL 的请求的代理终结点,同时对所有其他请求使用代理服务器。

例如,可以通过将环境变量设置为 NO_PROXY 对 Azure Key Vault 的请求使用专用终结点来配置扩展,而所有其他请求都使用代理服务器。

连接到 Azure Arc 数据处理服务

启用 Arc 的 SQL Server 需要与 Azure Arc 数据处理服务建立出站连接。

每个虚拟或物理服务器都需要与 Azure 通信。 具体而言,它们需要连接到:

  • URL: *.<region>.arcdataservices.com
    • 对于美国政府弗吉尼亚地区,请使用 *.<region>.arcdataservices.azure.us
  • 端口:443
  • 方向:出站
  • 身份验证提供程序:Microsoft Entra ID

要获取区域终结点的区域段,请从 Azure 区域名称中删除所有空格。 例如,“美国东部 2”区域,区域名称为

例如:*.<region>.arcdataservices.com 应位于“美国东部 2”区域中的 *.eastus2.arcdataservices.com

有关支持区域的列表,请查看 支持的 Azure 区域

有关所有区域的列表,请运行以下命令:

az account list-locations -o table

Note

不能使用到 Azure Arc 数据处理服务的 Azure 专用链接连接。 请参阅 不支持的配置

启用 Microsoft Entra 身份验证的网络要求

为由 Azure Arc 启用的 SQL Server 启用 Microsoft Entra 身份验证时,如果防火墙阻止出站 URL,需要显式允许一些 URL。 将以下 URL 添加到允许列表:

  • https://login.microsoftonline.com/
  • https://login.microsoft.com/
  • https://enterpriseregistration.windows.net/
  • https://graph.microsoft.com/
  • https://<azure-keyvault-name>.vault.azure.net/ (仅当使用证书进行Microsoft Entra 身份验证时才是必需的)

此外,可能需要允许 Azure 门户身份验证 URL

支持的 SQL Server 版本和环境

支持的配置

SQL Server 版本

SQL Server 2012 (11.x) 及更高版本。

Note

仅支持 64 位 SQL Server 版本。

操作系统

  • Windows 10 和 11
  • Windows Server 2012 及其更高版本
  • Ubuntu 20.04 (x64)
  • Red Hat Enterprise Linux (RHEL) 8 (x64)
  • SUSE Linux Enterprise Server (SLES) 15 (x64)

Important

对 Windows Server 2012 和 Windows Server 2012 R2 的支持于 2023 年 10 月 10 日终止。 有关详细信息,请参阅 SQL Server 2012 和 Windows Server 2012/2012 R2 终止支持

.NET Framework

Windows 上的 .NET Framework 4.7.2 及更高版本。

此要求从扩展版本 1.1.2504.99(2023 年 11 月 14 日版本)开始生效。 如果没有此版本,扩展可能无法按预期工作。 默认情况下,Windows Server 2012 R2 未附带 .NET Framework 4.7.2,因此必须相应更新。

对 VMware 的支持

可以在运行以下内容的 VMware VM 中部署由 Azure Arc 启用的 SQL Server:

  • On-premises
  • 例如,在 VMware 解决方案中:
    • Azure VMware 解决方案 (AVS)

      Warning

      如果在 Azure VMware 解决方案(AVS)私有云中运行 SQL Server VM,请按照 部署已启用 Arc 的 Azure VMware 解决方案 中的步骤启用。

      这是唯一一种部署机制,它提供与 AVS 私有云中 Arc 功能完全集成的体验。

    • AWS 上的 VMware 云

    • Google Cloud VMware 引擎

不支持的配置

已启用 Azure Arc 的 SQL Server 目前不支持以下配置:

  • Windows Server 2012 或更高版本的 Windows Server。 他们不需要最低版本的 TLS 才能安全地向 Azure 进行身份验证。
  • DPS 支持 Windows Server 2012 R2,因为它支持 TLS 1.2。 Windows Server 2012 R2 不支持遥测终结点。 因此不支持性能仪表板、迁移评估等功能。
  • 在容器中运行的 SQL Server。
  • SQL Server 版本:Business Intelligence。
  • 到用于清单和使用情况上传的 <region>.arcdataservices.com 终结点的 Azure Arc 数据处理服务的专用链接连接。
  • SQL Server 2008 (10.0.x)、SQL Server 2008 R2 (10.50.x) 及更早版本。
  • 不能在创建 sysprep 映像时安装 Arc 代理和 SQL Server 扩展。
  • 安装在同一主机操作系统上且具有相同实例名称的多个 SQL Server 实例。
  • Azure 虚拟机中的 SQL Server。
  • 一个 Always On 可用性组,其中一个或多个副本位于故障转移群集实例上。
  • SQL Server Reporting Services (SharePoint 模式)。
  • DBCC CLONEDATABASE (Transact-SQL) 在 SQL Server 的 Azure 扩展的默认安装时引发错误。 若要运行 DBCC CLONEDATABASE,Azure 扩展必须以 最低特权模式运行。
  • 不支持包含符号的 # SQL Server 实例名称。 有关命名规则和限制的完整列表,请查看 命名规则和限制

注册资源提供程序

若要注册资源提供程序,请使用以下方法之一:

  1. 选择 “订阅”。
  2. 选择订阅。
  3. 在“设置”下,选择“资源提供程序”。
  4. 搜索 Microsoft.AzureArcDataMicrosoft.HybridCompute,并选择“注册”。

Azure 订阅和服务限制

在使用 Azure Arc 配置 SQL Server 实例和计算机之前,请查看 Azure 资源管理器 订阅限制资源组限制 ,以规划要连接的计算机数。

支持的区域

Azure Arc 启用的 SQL Server 在以下区域中可用:

  • 美国东部
  • 美国东部 2
  • 美国西部
  • 美国西部 2
  • 美国西部 3
  • 美国中部
  • 美国中北部
  • 美国中南部
  • 美国中西部
  • 美国政府弗吉尼亚 州 1
  • 加拿大中部
  • 加拿大东部
  • 英国南部
  • 英国西部
  • 法国中部
  • 西欧
  • 北欧
  • 瑞士北部
  • 印度中部
  • Brazil South
  • 南非北部
  • 阿拉伯联合酋长国北部
  • 日本东部
  • 韩国中部
  • 东南亚
  • Australia East
  • 瑞典中部
  • 挪威东部

1 并非所有功能均在美国政府弗吉尼亚地区受支持。 有关详细信息,请查看 被 Azure Arc 启用的美国政府中的 SQL Server

Important

  • 为了成功登录和运行,请将同一区域分配给已启用 Arc 的服务器和已启用 Arc 的 SQL Server。

安装适用于 SQL Server 的 Azure 扩展

SQL Server 2022 (16.x) 安装向导不支持安装适用于 SQL Server 的 Azure 扩展。 可以通过以下两种方法来安装该组件。 执行下列操作之一:

对于 VMware 群集,请查看 VMware 上的支持