Skip to content

Commit 569f03f

Browse files
authored
Merge pull request #17863 from ManikaDhiman/md-arm-deployment
ARM deployment updates
2 parents 49c370e + b7754da commit 569f03f

File tree

5 files changed

+122
-34
lines changed

5 files changed

+122
-34
lines changed

azure-local/deploy/deploy-via-portal.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,30 @@ title: Deploy an Azure Local instance using the Azure portal
33
description: Learn how to deploy an Azure Local instance from the Azure portal
44
author: alkohli
55
ms.topic: how-to
6-
ms.date: 05/01/2025
6+
ms.date: 05/07/2025
77
ms.author: alkohli
88
ms.service: azure-local
99
#CustomerIntent: As an IT Pro, I want to deploy an Azure Local instance of 1-16 machines via the Azure portal so that I can host VM and container-based workloads on it.
1010
---
1111

1212
# Deploy Azure Local using the Azure portal
1313

14-
> Applies to: Azure Local 2503 and later
15-
1614
This article helps you deploy an Azure Local instance using the Azure portal.
1715

18-
> [!IMPORTANT]
19-
> The Azure portal will block deployments of Azure Local for versions 2411.3 or earlier. To deploy these versions, use an Azure Resource Manager (ARM) template. For more information, see [Deploy Azure Local via Azure Resource Manager deployment template](./deployment-azure-resource-manager-template.md).
20-
2116
## Prerequisites
2217

2318
- Completion of [Register your machines with Azure Arc and assign deployment permissions](./deployment-arc-register-server-permissions.md).
2419
<!-- Cristian to confirm * For three-node systems, the network adapters that carry the in-cluster storage traffic must be connected to a network switch. Deploying three-node systems with storage network adapters that are directly connected to each machine without a switch isn't supported in this preview.-->
2520

21+
::: moniker range="<=azloc-24113"
22+
23+
- To deply Azure Local 2411.3 and earlier, use the alternative version of the [Azure portal](https://aka.ms/dfc-2411deploycluster). Use this version only for deployment, don't use it for any other purpose.
24+
25+
::: moniker-end
26+
2627
## Start the wizard and fill out the basics
2728

28-
1. Open a web browser and navigate to [**Azure portal**](https://portal.azure.com). Search for and select **Azure Local**. On the **Azure Arc|Azure Local**, go to the **Get started** tab. On the **Deploy Azure Local** tile, select **Create instance**.
29+
1. Go to the Azure portal. Search for and select **Azure Local**. On the **Azure Arc|Azure Local**, go to the **Get started** tab. On the **Deploy Azure Local** tile, select **Create instance**.
2930

3031
:::image type="content" source="./media/deploy-via-portal/get-started-1.png" alt-text="Screenshot of the Get started tab in deployment via Azure portal." lightbox="./media/deploy-via-portal/get-started-1.png":::
3132

azure-local/deploy/deployment-arc-register-server-permissions.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,13 @@ This section describes how to assign Azure permissions for deployment from the A
187187
188188
1. In the right pane, go to **Role assignments**. Verify that the deployment user has all the configured roles.
189189
190+
1. In the Azure portal, go to **Microsoft Entra Roles and Administrators** and assign the **Cloud Application Administrator** role permission at the Microsoft Entra tenant level.
191+
192+
:::image type="content" source="media/deployment-arc-register-server-permissions/cloud-application-administrator-role-at-tenant.png" alt-text="Screenshot of the Cloud Application Administrator permission at the tenant level." lightbox="./media/deployment-arc-register-server-permissions/cloud-application-administrator-role-at-tenant.png":::
193+
194+
> [!NOTE]
195+
> The Cloud Application Administrator permission is temporarily needed to create the service principal. After deployment, this permission can be removed.
196+
190197
## Next steps
191198
192199
After setting up the first machine in your instance, you're ready to deploy using Azure portal:

azure-local/deploy/deployment-azure-resource-manager-template.md

Lines changed: 107 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Azure Resource Manager template deployment for Azure Local, version 23H2
33
description: Learn how to prepare and then deploy Azure Local instance, version 23H2 using the Azure Resource Manager template.
44
author: alkohli
55
ms.topic: how-to
6-
ms.date: 05/06/2025
6+
ms.date: 05/07/2025
77
ms.author: alkohli
88
ms.reviewer: alkohli
99
ms.service: azure-local
@@ -12,8 +12,6 @@ ms.custom: devx-track-arm-template
1212

1313
# Deploy Azure Local via Azure Resource Manager deployment template
1414

15-
[!INCLUDE [applies-to](../includes/hci-applies-to-23h2.md)]
16-
1715
This article details how to use an Azure Resource Manager template in the Azure portal to deploy an Azure Local in your environment. The article also contains the prerequisites and the preparation steps required to begin the deployment.
1816

1917
> [!IMPORTANT]
@@ -24,12 +22,73 @@ This article details how to use an Azure Resource Manager template in the Azure
2422
- Completion of [Register your machines with Azure Arc and assign deployment permissions](./deployment-arc-register-server-permissions.md). Make sure that:
2523
- All machines are running the same version of OS.
2624
- All the machines have the same network adapter configuration.
25+
26+
::: moniker range="<=azloc-24113"
27+
2728
- For Azure Local 2411.3 and earlier versions, make sure to select the **create-cluster-2411.3** template for deployment.
2829

30+
::: moniker-end
31+
32+
::: moniker range=">=azloc-2503"
33+
34+
- For Azure Local 2503 and later versions, make sure to select the **create-cluster** template for deployment.
35+
36+
::: moniker-end
37+
2938
## Step 1: Prepare Azure resources
3039

3140
Follow these steps to prepare the Azure resources you need for the deployment:
3241

42+
::: moniker range="<=azloc-24113"
43+
44+
### Create a service principal and client secret
45+
46+
To authenticate your system, you need to create a service principal and a corresponding **Client secret** for Arc Resource Bridge (ARB).
47+
48+
### Create a service principal for ARB
49+
50+
Follow the steps in [Create a Microsoft Entra application and service principal that can access resources via Azure portal](/entra/identity-platform/howto-create-service-principal-portal) to create the service principal and assign the roles. Alternatively, use the PowerShell procedure to [Create an Azure service principal with Azure PowerShell](/powershell/azure/create-azure-service-principal-azureps).
51+
52+
The steps are also summarized here:
53+
54+
1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com/) as at least a Cloud Application Administrator. Browse to **Identity > Applications > App registrations** then select **New registration**.
55+
56+
1. Provide a **Name** for the application, select a **Supported account type**, and then select **Register**.
57+
58+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-service-principal-1a.png" alt-text="Screenshot showing Register an application for service principal creation." lightbox="./media/deployment-azure-resource-manager-template/create-service-principal-1a.png":::
59+
60+
1. Once the service principal is created, go to the **Enterprise applications** page. Search for and select the SPN you created.
61+
62+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-service-principal-2a.png" alt-text="Screenshot showing search results for the service principal created." lightbox="./media/deployment-azure-resource-manager-template/create-service-principal-2a.png":::
63+
64+
1. Under properties, copy the **Application (client) ID** and the **Object ID** for this service principal.
65+
66+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-service-principal-2b.png" alt-text="Screenshot showing Application (client) ID and the object ID for the service principal created." lightbox="./media/deployment-azure-resource-manager-template/create-service-principal-2b.png":::
67+
68+
You use the **Application (client) ID** against the `arbDeploymentAppID` parameter and the **Object ID** against the `arbDeploymentSPNObjectID` parameter in the Resource Manager template.
69+
70+
### Create a client secret for ARB service principal
71+
72+
1. Go to the application registration that you created and browse to **Certificates & secrets > Client secrets**.
73+
1. Select **+ New client** secret.
74+
75+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-client-secret-1.png" alt-text="Screenshot showing creation of a new client secret." lightbox="./media/deployment-azure-resource-manager-template/create-client-secret-1.png":::
76+
77+
1. Add a **Description** for the client secret and provide a timeframe when it **Expires**. Select **Add**.
78+
79+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-client-secret-2.png" alt-text="Screenshot showing Add a client secret blade." lightbox="./media/deployment-azure-resource-manager-template/create-client-secret-2.png":::
80+
81+
1. Copy the **client secret value** as you use it later.
82+
83+
> [!Note]
84+
> For the application client ID, you will need it's secret value. Client secret values can't be viewed except for immediately after creation. Be sure to save this value when created before leaving the page.
85+
86+
:::image type="content" source="./media/deployment-azure-resource-manager-template/create-client-secret-3.png" alt-text="Screenshot showing client secret value." lightbox="./media/deployment-azure-resource-manager-template/create-client-secret-3.png":::
87+
88+
You use the **client secret value** against the `arbDeploymentAppSecret` parameter in the Resource Manager template.
89+
90+
::: moniker-end
91+
3392
### Get the object ID for Azure Local Resource Provider
3493

3594
This object ID for the Azure Local Resource Provide (RP) is unique per Azure tenant.
@@ -62,76 +121,97 @@ With all the prerequisite and preparation steps complete, you're ready to deploy
62121
63122
1. In the Azure portal, go to **Home** and select **+ Create a resource**.
64123
65-
1. Select **Create** under **Template deployment (deploy using custom templates)**.
124+
2. Select **Create** under **Template deployment (deploy using custom templates)**.
66125
67126
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-1.png" alt-text="Screenshot showing the template deployment (deploy using custom template)." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-1.png":::
68127
69-
1. Near the bottom of the page, find **Start with a quickstart template or template spec** section. Select **Quickstart template** option.
128+
3. Near the bottom of the page, find **Start with a quickstart template or template spec** section. Select **Quickstart template** option.
70129
71130
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-2.png" alt-text="Screenshot showing the quickstart template selected." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-2.png":::
72131
73-
1. Use the **Quickstart template (disclaimer)** field to filter for the appropriate template. Type *azurestackhci/create-cluster* for the filter.
132+
::: moniker range="<=azloc-24113"
74133
75-
1. When finished, **Select template**.
134+
4. From the **Quickstart template (disclaimer)** dropdown list, select the **create-cluster-2411.3** template.
76135
77-
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-3a.png" alt-text="Screenshot showing template selected." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-3a.png":::
136+
5. When finished, select the **Select template** button.
137+
138+
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-24113-and-earlier.png" alt-text="Screenshot showing template selected for version 2411.3 and earlier." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-24113-and-earlier.png":::
139+
140+
6. On the **Basics** tab, you see the **Custom deployment** page. You can select the various parameters through the dropdown list or select **Edit parameters**.
141+
142+
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-4a.png" alt-text="Screenshot showing Custom deployment page on the Basics tab." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-4a.png":::
78143
79144
> [!NOTE]
80-
> For Azure Local 2411.3 and earlier versions, make sure to select the **create-cluster-2411.3** template for deployment.
145+
> For an example parameter file that shows the format of various inputs, such as `ArcNodeResourceId`, see [azuredeploy.parameters.json](https://github.com/Azure/azure-quickstart-templates/blob/master/quickstarts/microsoft.azurestackhci/create-cluster-2411.3/azuredeploy.parameters.json).
146+
147+
::: moniker-end
81148
82-
1. On the **Basics** tab, you see the **Custom deployment** page. You can select the various parameters through the dropdown list or select **Edit parameters**.
149+
::: moniker range=">=azloc-2503"
150+
151+
4. Use the **Quickstart template (disclaimer)** field to filter for the appropriate template. Type *azurestackhci/create-cluster* for the filter.
152+
153+
5. When finished, select the **Select template** button.
154+
155+
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-3a.png" alt-text="Screenshot showing template selected." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-3a.png":::
156+
157+
6. On the **Basics** tab, you see the **Custom deployment** page. You can select the various parameters through the dropdown list or select **Edit parameters**.
83158
84159
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-4a.png" alt-text="Screenshot showing Custom deployment page on the Basics tab." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-4a.png":::
85160
86-
1. Edit parameters such as network intent or storage network intent. Once the parameters are all filled out, **Save** the parameters file.
161+
> [!NOTE]
162+
> For an example parameter file that shows the format of various inputs, such as `ArcNodeResourceId`, see [azuredeploy.parameters.json](https://github.com/Azure/azure-quickstart-templates/blob/master/quickstarts/microsoft.azurestackhci/create-cluster/azuredeploy.parameters.json).
163+
164+
::: moniker-end
165+
166+
7. Edit parameters such as network intent or storage network intent. Once the parameters are all filled out, **Save** the parameters file.
87167
88168
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-5.png" alt-text="Screenshot showing parameters filled out for the template." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-5.png":::
89169
90-
1. Select the appropriate resource group for your environment.
170+
8. Select the appropriate resource group for your environment.
91171
92-
1. Scroll to the bottom, and confirm that **Deployment Mode = Validate**.
172+
9. Scroll to the bottom, and confirm that **Deployment Mode = Validate**.
93173
94-
1. Select **Review + create**.
174+
10. Select **Review + create**.
95175
96176
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-6.png" alt-text="Screenshot showing Review + Create selected on Basics tab." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-6.png":::
97177
98-
1. On the **Review + Create** tab, select **Create**. This creates the remaining prerequisite resources and validates the deployment. Validation takes about 10 minutes to complete.
178+
11. On the **Review + Create** tab, select **Create**. This creates the remaining prerequisite resources and validates the deployment. Validation takes about 10 minutes to complete.
99179
100180
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-7.png" alt-text="Screenshot showing Create selected on Review + Create tab." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-7.png":::
101181
102-
1. Once validation is complete, select **Redeploy**.
182+
12. Once validation is complete, select **Redeploy**.
103183
104184
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-7a.png" alt-text="Screenshot showing Redeploy selected." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-7a.png":::
105185
106-
1. On the **Custom deployment** screen, select **Edit parameters**. Load up the previously saved parameters and select **Save**.
186+
13. On the **Custom deployment** screen, select **Edit parameters**. Load up the previously saved parameters and select **Save**.
107187
108-
1. At the bottom of the workspace, change the final value in the JSON from **Validate** to **Deploy**, where **Deployment Mode = Deploy**.
188+
14. At the bottom of the workspace, change the final value in the JSON from **Validate** to **Deploy**, where **Deployment Mode = Deploy**.
109189
110190
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-7b.png" alt-text="Screenshot showing deploy selected for deployment mode." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-7b.png":::
111191
112-
1. Verify that all the fields for the Resource Manager deployment template are filled in by the Parameters JSON.
192+
15. Verify that all the fields for the Resource Manager deployment template are filled in by the Parameters JSON.
113193
114-
1. Select the appropriate resource group for your environment.
194+
16. Select the appropriate resource group for your environment.
115195
116-
1. Scroll to the bottom, and confirm that **Deployment Mode = Deploy**.
196+
17. Scroll to the bottom, and confirm that **Deployment Mode = Deploy**.
117197
118-
1. Select **Review + create**.
198+
18. Select **Review + create**.
119199
120-
1. Select **Create**. The deployment begins, using the existing prerequisite resources that were created during the **Validate** step.
200+
19. Select **Create**. The deployment begins, using the existing prerequisite resources that were created during the **Validate** step.
121201
122202
The Deployment screen cycles on the cluster resource during deployment.
123203
124204
Once deployment initiates, there's a limited Environment Checker run, a full Environment Checker run, and cloud deployment starts. After a few minutes, you can monitor deployment in the portal.
125205
126206
:::image type="content" source="./media/deployment-azure-resource-manager-template/deploy-arm-template-9.png" alt-text="Screenshot showing the status of environment checker validation." lightbox="./media/deployment-azure-resource-manager-template/deploy-arm-template-9.png":::
127207
128-
1. In a new browser window, navigate to the resource group for your environment. Select the cluster resource.
208+
20. In a new browser window, navigate to the resource group for your environment. Select the cluster resource.
129209
130-
1. Select **Deployments**.
210+
21. Select **Deployments**.
131211
132-
1. Refresh and watch the deployment progress from the first machine (also known as the seed machine and is the first machine where you deployed the cluster). Deployment takes between 2.5 and 3 hours. Several steps take 40-50 minutes or more.
212+
22. Refresh and watch the deployment progress from the first machine (also known as the seed machine and is the first machine where you deployed the cluster). Deployment takes between 2.5 and 3 hours. Several steps take 40-50 minutes or more.
133213
134-
1. The step in deployment that takes the longest is **Deploy Moc and ARB Stack**. This step takes 40-45 minutes.
214+
23. The step in deployment that takes the longest is **Deploy Moc and ARB Stack**. This step takes 40-45 minutes.
135215
136216
Once complete, the task at the top updates with status and end time.
137217
Loading
124 KB
Loading

0 commit comments

Comments
 (0)