先决条件 – 已启用 Azure Arc 的 SQL Server
适用范围:SQL Server
已启用 Azure Arc 的 SQL Server 实例是本地或连接到 Azure Arc 的云提供商中的实例。本文将介绍这些先决条件。
如果 SQL Server VM 位于 VMware 群集上,请查看 VMware 上的支持。
部署之前
在 Arc 启用 SQL Server 实例之前,需要执行以下操作:
具有活动订阅的 Azure 帐户。 如果需要,请创建免费 Azure 帐户。
验证 Arc Connected Machine Agent 先决条件。 Arc 代理必须在典型的“完整”模式下运行。
打开防火墙以使用 Azure Arc 数据处理服务。
注册资源提供程序。 具体而言:
Microsoft.AzureArcData
Microsoft.HybridCompute
有关说明,请参阅注册资源提供程序。
安装帐户权限
用户或服务主体需要:
- 对订阅的读取权限
- 对操作系统的本地管理员权限,以安装和配置代理。
- 对于 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 可用性组,其中一个或多个副本位于故障转移群集实例上。
注册资源提供程序
若要注册资源提供程序,请使用以下方法之一:
- 选择 订阅。
- 选择订阅。
- 在“设置”下,选择“资源提供程序”。
- 搜索
Microsoft.AzureArcData
和Microsoft.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 上的支持。