|
| 1 | +--- |
| 2 | +title: Azure Arc-enabled SQL Server prerequisites |
| 3 | +description: Describes prerequisites required by of Azure Arc-enabled SQL Server. |
| 4 | +author: anosov1960 |
| 5 | +ms.author: sashan |
| 6 | +ms.reviewer: mikeray, randolphwest |
| 7 | +ms.date: 03/08/2023 |
| 8 | +ms.topic: conceptual |
| 9 | +ms.custom: references_regions |
| 10 | +--- |
| 11 | + |
| 12 | +# Prerequisites |
| 13 | + |
| 14 | +[!INCLUDE [sqlserver](../../includes/applies-to-version/sqlserver.md)] |
| 15 | + |
| 16 | +An Azure Arc-enabled instance of [!INCLUDE [ssnoversion-md](../../includes/ssnoversion-md.md)] is an instance on-premises or in a cloud provider that is connected to Azure Arc. This article explains those prerequisites. |
| 17 | + |
| 18 | +## Before you deploy |
| 19 | + |
| 20 | +Before you can Arc-enable an instance of [!INCLUDE [ssnoversion-md](../../includes/ssnoversion-md.md)], you need to: |
| 21 | + |
| 22 | +- Have an Azure account with an active subscription. If needed, [create a free Azure Account](https://azure.microsoft.com/free/). |
| 23 | +- Verify [Arc connected machine agent prerequisites](/azure/azure-arc/servers/prerequisites). The Arc agent must be running in the typical 'full' mode. |
| 24 | +- Verify [Arc connected machine agent network requirements](/azure/azure-arc/servers/network-requirements). |
| 25 | +- Open firewall to [Azure Arc data processing service](#connect-to-azure-arc-data-processing-service). |
| 26 | +- Register resource providers. Specifically: |
| 27 | + - `Microsoft.AzureArcData` |
| 28 | + - `Microsoft.HybridCompute` |
| 29 | + |
| 30 | + For instructions, see [Register resource providers](#register-resource-providers). |
| 31 | + |
| 32 | +### Permissions |
| 33 | + |
| 34 | +To [Connect SQL Servers on Azure Arc-enabled servers at scale using Azure policy](connect-at-scale-policy.md): |
| 35 | + |
| 36 | +- The service principal requires read permission on the subscription. |
| 37 | + |
| 38 | +- The installation account requires: |
| 39 | + |
| 40 | + - [`User Access Administrator`](/azure/role-based-access-control/built-in-roles#user-access-administrator) role assignment is required in the subscription if you are creating a *new* system assigned managed identity. |
| 41 | + - [`Resource Policy Contributor`](/azure/role-based-access-control/built-in-roles#resource-policy-contributor) role assignment for the scope that you're targeting. The scope may be either subscription or resource group. |
| 42 | + |
| 43 | +For all the other onboarding methods: |
| 44 | + |
| 45 | +- The service principal requires read permission on the subscription. |
| 46 | + |
| 47 | +- User or service principal must have permissions in the Azure resource group to complete the task. Specifically: |
| 48 | + |
| 49 | + - [`Azure Connected Machine Onboarding`](/azure/role-based-access-control/built-in-roles#azure-connected-machine-onboarding) role |
| 50 | + - `Microsoft.AzureArcData/register/action` |
| 51 | + - `Microsoft.HybridCompute/machines/extensions/read` |
| 52 | + - `Microsoft.HybridCompute/machines/extensions/write` |
| 53 | + |
| 54 | +Users can be assigned to built-in roles that have these permissions, for example [Contributor](/azure/role-based-access-control/built-in-roles#contributor) or [Owner](/azure/role-based-access-control/built-in-roles#owner). For more information, see [Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal). |
| 55 | + |
| 56 | +- Have local administrator permission on the operating system to install and configure the agent. |
| 57 | + - For Linux, use the root account. |
| 58 | + - For Windows, use an account that is a member of the Local Administrators group. |
| 59 | + |
| 60 | +### Connect to Azure Arc data processing service |
| 61 | + |
| 62 | +Arc-enabled [!INCLUDE [ssnoversion-md](../../includes/ssnoversion-md.md)] requires outbound connection to Azure Arc data processing service. Each virtual or physical server requires connectivity to: |
| 63 | + |
| 64 | +- URL: `san-af-<region>-prod.azurewebsites.net` |
| 65 | +- Port: 443 |
| 66 | +- Direction: Outbound |
| 67 | + |
| 68 | +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`. |
| 69 | + |
| 70 | +For example: `san-af-<region>-prod.azurewebsites.net` should be `san-af-eastus2-prod.azurewebsites.net` in the East US 2 region. |
| 71 | + |
| 72 | +For a list of supported regions, review [Supported Azure regions](overview.md#supported-azure-regions). |
| 73 | + |
| 74 | +For a list of all regions, run this command: |
| 75 | + |
| 76 | +```azcli |
| 77 | +az account list-locations -o table |
| 78 | +``` |
| 79 | + |
| 80 | +## Supported SQL Server versions and operating systems |
| 81 | + |
| 82 | +[!INCLUDE [supported-configurations](includes/supported-configurations.md)] |
| 83 | + |
| 84 | +## Unsupported configurations |
| 85 | + |
| 86 | +[!INCLUDE [unsupported-configurations](includes/unsupported-configurations.md)] |
| 87 | + |
| 88 | +## Register resource providers |
| 89 | + |
| 90 | +To register the resource providers, use one of the following methods: |
| 91 | + |
| 92 | +## [Azure portal](#tab/azure) |
| 93 | + |
| 94 | +1. Select **Subscriptions**. |
| 95 | +1. Choose your subscription. |
| 96 | +1. Under **Settings**, select **Resource providers**. |
| 97 | +1. Search for `Microsoft.AzureArcData` and `Microsoft.HybridCompute` and select **Register**. |
| 98 | + |
| 99 | +## [PowerShell](#tab/powershell) |
| 100 | + |
| 101 | +Run: |
| 102 | + |
| 103 | +```powershell |
| 104 | +Register-AzResourceProvider -ProviderNamespace Microsoft.HybridCompute |
| 105 | +Register-AzResourceProvider -ProviderNamespace Microsoft.AzureArcData |
| 106 | +``` |
| 107 | + |
| 108 | +## [Azure CLI](#tab/az) |
| 109 | + |
| 110 | +Run: |
| 111 | + |
| 112 | +```azurecli |
| 113 | +az provider register --namespace 'Microsoft.HybridCompute' |
| 114 | +az provider register --namespace 'Microsoft.AzureArcData' |
| 115 | +``` |
| 116 | + |
| 117 | + |
| 118 | +--- |
| 119 | +## Azure subscription and service limits |
| 120 | + |
| 121 | +Before configuring your [!INCLUDE [ssnoversion-md](../../includes/ssnoversion-md.md)] instances and machines with Azure Arc, review the Azure Resource Manager [subscription limits](/azure/azure-resource-manager/management/azure-subscription-service-limits#subscription-limits) and [resource group limits](/azure/azure-resource-manager/management/azure-subscription-service-limits#resource-group-limits) to plan for the number of machines to be connected. |
| 122 | + |
| 123 | +## Supported regions |
| 124 | + |
| 125 | +[!INCLUDE [azure-arc-data-regions](includes/azure-arc-data-regions.md)] |
| 126 | + |
| 127 | +## Next steps |
| 128 | + |
| 129 | +- [Automatically connect your SQL Server to Azure Arc](automatically-connect.md) |
| 130 | + |
| 131 | + |
0 commit comments