Prerequisites - SQL Server enabled by Azure Arc
Applies to: SQL Server
An Azure Arc-enabled instance of SQL Server is an instance on-premises or in a cloud provider that is connected to Azure Arc. This article explains those prerequisites.
If your SQL Server VMs are on VMware clusters, review Support on VMware.
Before you deploy
Before you can Arc-enable an instance of SQL Server, you need to:
Have an Azure account with an active subscription. If needed, create a free Azure Account.
Verify Arc connected machine agent prerequisites. The Arc agent must be running in the typical 'full' mode.
Open firewall to Azure Arc data processing service.
Register resource providers. Specifically:
Microsoft.AzureArcData
Microsoft.HybridCompute
For instructions, see Register resource providers.
Installation account permissions
The user or service principal requires:
- Read permission on the subscription
- Local administrator permission on the operating system to install and configure the agent
- For Linux, use the root account
- For Windows, use an account that is a member of the Local Administrators group
Before enabling SQL Servers with Arc, the installation script checks:
- The region where the Arc-enabled SQL Server is supported
Microsoft.AzureArcData
resource provider is registered
These checks require read permission on the subscription for the user.
The user or service principal requires the following permissions in the Azure resource group to complete the task. Specifically:
Azure Connected Machine Onboarding
roleMicrosoft.AzureArcData/register/action
Microsoft.HybridCompute/machines/extensions/read
Microsoft.HybridCompute/machines/extensions/write
Microsoft.Resources/deployments/validate/action
Users can be assigned to built-in roles that have these permissions, for example:
For more information, see Assign Azure roles using the Azure portal.
Verify state of user databases
When a SQL Server instance is enabled by Azure Arc, the connection sets some database permissions so that you can manage databases from Azure. For details about the permissions set at a database level, review SQL permissions.
Only databases that are online and updateable are included.
Verify the state of any databases you plan to manage from Azure.
This query lists all databases, their status, and if they are updateable:
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;
Run that query on any instance that you enable.
Service account permissions
The SQL Server service account must be a member of the sysadmin
fixed server role on each SQL Server instance. By default, the SQL Server service account is a member of the sysadmin
fixed server role.
For more information about this requirement, review SQL Server service account.
Set proxy exclusions
Note
The exclusion in this section is required for the March, 2024 release and before.
Beginning with the release in April, 2024 this exclusion is not required.
If a proxy server is used, set the NO_PROXY
environment variable to exclude proxy traffic for:
localhost
127.0.0.1
Connect to Azure Arc data processing service
Arc-enabled SQL Server requires outbound connection to Azure Arc Data Processing Service.
Each virtual or physical server needs to communicate with Azure. Specifically, they require connectivity to:
- URL:
*.<region>.arcdataservices.com
- Port: 443
- Direction: Outbound
- Authentication provider: Microsoft Entra ID
To get the region segment of a regional endpoint, remove all spaces from the Azure region name. For example, East US 2 region, the region name is eastus2
.
For example: *.<region>.arcdataservices.com
should be *.eastus2.arcdataservices.com
in the East US 2 region.
For a list of supported regions, review Supported Azure regions.
For a list of all regions, run this command:
az account list-locations -o table
Note
You can't use Azure Private Link connections to the Azure Arc data processing service. See Unsupported configurations.
Supported SQL Server versions and environments
Supported configurations
SQL Server version
SQL Server 2012 (11.x) and later versions.
Operating systems
- Windows Server 2012 and later versions
- Ubuntu 20.04 (x64)
- Red Hat Enterprise Linux (RHEL) 8 (x64)
- SUSE Linux Enterprise Server (SLES) 15 (x64)
Important
Windows Server 2012 and Windows Server 2012 R2 support ended on October 10, 2023. For more information, see SQL Server 2012 and Windows Server 2012/2012 R2 end of support.
.NET Framework
On Windows, .NET Framework 4.7.2 and later.
This requirement begins with extension version 1.1.2504.99
(November, 14 2023 release). Without this version, the extension might not function as intended. Windows Server 2012 R2 does not come with .NET Framework 4.7.2 by default and must be updated accordingly.
Support on VMware
You can deploy SQL Server enabled by Azure Arc in VMware VMs running:
- On-premises
- In VMware solutions, for example:
Azure VMware Solution (AVS)
Warning
If you're running SQL Server VMs in Azure VMware Solution (AVS) private cloud, follow the steps in Deploy Arc-enabled Azure VMware Solution to enable.
This is the only deployment mechanism that provides you with a fully integrated experience with Arc capabilities within the AVS private cloud.
VMware Cloud on AWS
Google Cloud VMware Engine
Unsupported configurations
Azure Arc-enabled SQL Server doesn't currently support the following configurations:
- SQL Server running in containers.
- SQL Server roles other than the Database Engine, such as Analysis Services (SSAS), Reporting Services (SSRS), or Integration Services (SSIS).
- SQL Server editions: Business Intelligence.
- Private Link connections to the Azure Arc data processing service at the
<region>.arcdataservices.com
endpoint used for inventory and usage upload. - SQL Server 2008 (10.0.x), SQL Server 2008 R2 (10.50.x), and older versions.
- Installing the Arc agent and SQL Server extension can't be done as part of sysprep image creation.
- Multiple instances of SQL Server installed on the same host operating system with the same instance name.
- SQL Server in Azure Virtual Machines.
- An Always On availability group where one or more replicas is on a failover cluster instance.
Register resource providers
To register the resource providers, use one of the following methods:
- Select Subscriptions.
- Choose your subscription.
- Under Settings, select Resource providers.
- Search for
Microsoft.AzureArcData
andMicrosoft.HybridCompute
and select Register.
Azure subscription and service limits
Before configuring your SQL Server instances and machines with Azure Arc, review the Azure Resource Manager subscription limits and resource group limits to plan for the number of machines to be connected.
Supported regions
Arc-enabled SQL Server is available in the following regions:
- East US
- East US 2
- West US
- West US 2
- West US 3
- Central US
- North Central US
- South Central US
- West Central US
- Canada Central
- Canada East
- UK South
- UK West
- France Central
- West Europe
- North Europe
- Switzerland North
- Central India
- Brazil South
- South Africa North
- UAE North
- Japan East
- Korea Central
- Southeast Asia
- Australia East
- Sweden Central
- Norway East
Important
For successful onboarding and functioning, assign the same region to both Arc-enabled Server and Arc-enabled SQL Server.
Install Azure extension for SQL Server
The SQL Server 2022 (16.x) Setup Installation Wizard doesn't support installation of the Azure extension for SQL Server. There are two ways to install this component. Do one of the following:
- Automatically connect your SQL Server to Azure Arc
- Install Azure extension for SQL Server from the command line
For VMware clusters, review Support on VMware.