Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
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 virtual machines run in VMware vSphere-based environments (including environments licensed through VMware vSphere Foundation or VMware Cloud Foundation), review Support on VMware.
Before you deploy
Before you can Arc-enable an instance of SQL Server, you need to:
Create an Azure account with an active subscription. If needed, create a free Azure Account.
Verify Arc connected machine agent prerequisites. The Arc agent must run in the typical 'full' mode.
Open firewall to Azure Arc data processing service.
Register resource providers. Specifically:
Microsoft.AzureArcDataMicrosoft.HybridCompute
For instructions, see Register resource providers.
Installation account permissions
The user or service principal needs:
- 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's 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.AzureArcDataresource provider is registered
These checks require read permission on the subscription for the user.
To complete the task, the user or service principal needs the following permissions in the Azure resource group:
Azure Connected Machine OnboardingroleMicrosoft.AzureArcData/register/actionMicrosoft.HybridCompute/machines/extensions/readMicrosoft.HybridCompute/machines/extensions/writeMicrosoft.Resources/deployments/validate/action
Assign users to built-in roles that have these permissions, such as:
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, see SQL permissions.
Only databases that are online and updatable are included.
Verify the state of any databases you plan to manage from Azure.
This query lists all databases, their status, and if they're updatable:
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, see SQL Server service account.
NT AUTHORITY\SYSTEM login requirements
The Azure extension for SQL Server Deployer runs under the LocalSystem (NT AUTHORITY\SYSTEM) account to perform permission configuration. As part of this process, the deployer connects to each SQL Server instance using Windows integrated authentication.
By default, NT AUTHORITY\SYSTEM has a SQL Server login with CONNECT SQL permission. In environments where SQL Server security hardening removes or restricts the NT AUTHORITY\SYSTEM login (such as by disabling the login or denying CONNECT SQL), the Azure extension for SQL Server fails to provision successfully.
Before running this query in a production environment, review and test it in a non-production or test environment to validate the results. To verify that NT AUTHORITY\SYSTEM can connect to SQL Server, run the following query on each instance (review and test in a non-production or test environment before running in production):
SELECT sp.name AS login_name,
CASE WHEN sp.is_disabled = 1 THEN 'DISABLED' ELSE 'ENABLED' END AS login_status,
ISNULL(p.state_desc, 'NONE (implicit)') AS connect_sql_permission
FROM sys.server_principals AS sp
LEFT OUTER JOIN sys.server_permissions AS p
ON p.grantee_principal_id = sp.principal_id
AND p.permission_name = N'CONNECT SQL'
AND p.class_desc = N'SERVER'
WHERE sp.name = N'NT AUTHORITY\SYSTEM';
Successful provisioning requires that:
- The login exists (a row is returned)
- The login status is
ENABLED CONNECT SQLpermission is granted
If your organization determines that re-adding the NT AUTHORITY\SYSTEM account or granting extra permissions is acceptable for your environment, restore connectivity by creating the authentication and granting CONNECT SQL permission:
CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS;
GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM];
After making changes, verify that the extension provisions successfully.
Set proxy exclusions
Note
Starting with the April 2024 release, this exclusion isn't required. Beginning with extension version 1.1.2986.256, you can set the NO_PROXY environment variable to bypass the proxy for specific URLs while routing all other requests through the proxy server. For example, use NO_PROXY to route requests to Azure Key Vault through private endpoints.
If you use a proxy server, set the NO_PROXY environment variable to exclude proxy traffic for:
localhost127.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- For US Government Virginia regions, use
*.<region>.arcdataservices.azure.us.
- For US Government Virginia regions, use
- 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.
Network requirements for enabling Microsoft Entra authentication
Enabling Microsoft Entra authentication for SQL Server enabled by Azure Arc requires some URLs to be allowed explicitly if a firewall blocks outbound URLs. Add the following URLs to the allowlist:
https://login.microsoftonline.com/https://login.microsoft.com/https://enterpriseregistration.windows.net/https://graph.microsoft.com/https://<azure-keyvault-name>.vault.azure.net/(Required only if you're using certificates for Microsoft Entra authentication)
Additionally, you might need to allow Azure portal authentication URLs.
Supported SQL Server versions and environments
Supported configurations
SQL Server version
SQL Server 2012 (11.x) and later versions.
Note
Only 64-bit SQL Server versions are supported.
Operating systems
- Windows 10 and 11
- 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 doesn't 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)
VMware vSphere remains the underlying virtualization platform. Following Broadcom's acquisition of VMware, the vSphere product name didn't change; however, VMware updated how vSphere is packaged and licensed (for example, through VMware vSphere Foundation and VMware Cloud Foundation).
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
VMware packaging and support scope
SQL Server enabled by Azure Arc supports SQL Server instances running on virtual machines hosted in VMware vSphere–based environments, including Azure VMware Solution.
Support doesn't depend on specific VMware commercial bundles, editions, or packaging. The following requirements determine support:
- The supported guest operating system
- The supported SQL Server version
- Azure Arc Connected Machine agent requirements
VMware (Broadcom) defines VMware packaging, licensing, and lifecycle policies and may change them independently of Azure Arc.
Unsupported configurations
Azure Arc-enabled SQL Server doesn't currently support the following configurations:
- Windows Server 2012 or older versions of Windows Server. They don't have the minimum required versions of TLS to securely authenticate to Azure.
- Windows Server 2012 R2 is supported for DPS because it supports TLS 1.2. Windows Server 2012 R2 doesn't support the telemetry endpoint. Therefore features such as performance dashboard, migration assessment, and others aren't supported.
- SQL Server running in containers.
- SQL Server editions: Business Intelligence.
- Private Link connections to the Azure Arc data processing service at the
<region>.arcdataservices.comendpoint 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.
- SQL Server Reporting Services (SharePoint Mode).
- DBCC CLONEDATABASE (Transact-SQL) throws error on the default installation of the Azure extension for SQL Server. To run the
DBCC CLONEDATABASE, the Azure extension must be run in least privilege mode. - SQL Server instance names containing a
#symbol aren't supported. For a complete list of naming rules and restrictions, review naming rules and restrictions.
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.AzureArcDataandMicrosoft.HybridComputeand 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 connect.
Supported regions
SQL Server enabled by Azure Arc 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
- US Government Virginia 1
- 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
1 Not all features are supported yet in the US Government Virginia region. For details, review SQL Server enabled by Azure Arc in US Government.
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.
You can install this component in two ways:
- SQL Server enabled by Azure Arc deployment options
- Install Azure extension for SQL Server from the command line
For VMware vSphere-based environments, review Support on VMware.