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

适用范围:SQL Server

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

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

部署之前

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

安装帐户权限

用户或服务主体需要:

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

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

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

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

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

  • 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 固定服务器角色的成员。

设置代理排除项

注意

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

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

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

  • localhost
  • 127.0.0.1

连接到 Azure Arc 数据处理服务

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

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

  • URL: *.<region>.arcdataservices.com
  • 端口:443
  • 方向:出站
  • 身份验证提供程序:Microsoft Entra ID

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

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

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

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

az account list-locations -o table

注意

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

支持的 SQL Server 版本和环境

支持的配置

SQL Server 版本

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

操作系统

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

重要

对 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:

  • 本地
  • 例如,在 VMware 解决方案中:
    • Azure VMware 解决方案 (AVS)

      警告

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

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

    • VMware Cloud on AWS

    • Google Cloud VMware Engine

不受支持的配置

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

  • 在容器中运行的 SQL Server。
  • 数据库引擎以外的 SQL Server 角色,例如 Analysis Services (SSAS)、Reporting Services (SSRS) 或 Integration Services (SSIS)。
  • 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 可用性组,其中一个或多个副本位于故障转移群集实例上。

注册资源提供程序

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

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

Azure 订阅和服务限制

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

支持的区域

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

  • 美国东部
  • 美国东部 2
  • 美国西部
  • 美国西部 2
  • 美国西部 3
  • 美国中部
  • 美国中北部
  • 美国中南部
  • 美国中西部
  • 加拿大中部
  • 加拿大东部
  • 英国南部
  • 英国西部
  • 法国中部
  • 西欧
  • 北欧
  • 瑞士北部
  • 印度中部
  • Brazil South
  • 南非北部
  • 阿拉伯联合酋长国北部
  • 日本东部
  • 韩国中部
  • 东南亚
  • 澳大利亚东部
  • 瑞典中部
  • 挪威东部

重要

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

安装适用于 SQL Server 的 Azure 扩展

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

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