Skip to content

Commit 8c3d28e

Browse files
committed
Added vm placement article
1 parent 56152b9 commit 8c3d28e

File tree

1 file changed

+97
-0
lines changed

1 file changed

+97
-0
lines changed
Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
---
2+
title: Overview of Azure Local Rack Aware Clustering
3+
description: Use this topic to learn about Azure Local Rack Aware Clustering.
4+
author: alkohli
5+
ms.author: alkohli
6+
ms.topic: overview
7+
ms.service: azure-local
8+
ms.date: 04/01/2025
9+
---
10+
11+
# Azure Local Rack Aware Clustering overview
12+
13+
[!INCLUDE [applies-to](../includes/hci-applies-to-23h2.md)]
14+
15+
This article gives a high-level overview of the Azure Local Rack Aware Clustering feature including its benefits and use cases. The article also details the supported configurations and deployment requirements for rack aware clustering.
16+
17+
[!INCLUDE [important](../includes/hci-preview.md)]
18+
19+
## About Rack Aware Cluster and virtual machines on Azure Local
20+
21+
Azure Local Rack Aware Cluster is an advanced architecture designed to enhance fault tolerance and data distribution within an Azure Local instance. This architecture enables you to cluster nodes that are strategically placed across two physical racks in two different rooms or buildings with high bandwidth and low latency. An example of Rack Aware Cluster could be the use in a manufacturing plant to minimize the risk of data loss or downtime in the event of a rack-level failure.
22+
23+
24+
### VM prerequisites
25+
26+
Before you create an Azure Local VM for Rack Aware Clustering, make sure that all prerequisites listed in [Create Azure Local virtual machines enabled by Azure Arc](../manage/create-arc-virtual-machines.md) are met.
27+
28+
### Create a VM in a specific availability zone
29+
30+
Once availability zones are set up in Rack Aware Cluster, Azure Local VMs can be created on a specific availability zone to reduce latency, improve performance, ensure redundancy, and meet compliance requirements.
31+
32+
When you create a VM in a specific availability zone, the default option is without strict placement. The VM is created on a machine within the specified zone (`--zone`). If all machines within a zone are down, the VM can migrate to another machine outside of the zone. However, the VM attempts to failback to a machine within the original zone when that availability zone recovers.
33+
34+
> [!NOTE]
35+
> If no zone is specified when creating an Azure Local VM, the system will automatically choose an optimal placement within the Rack Aware Cluster.
36+
37+
1. Connect to a machine on your Azure Local instance.
38+
1. Sign in and set the subscription:
39+
40+
:::image type="content" source="media/rack-aware-clustering-overview/rack-aware-cluster-vm-sign-in.png" alt-text="Screenshot showing VM sign in." lightbox="media/rack-aware-clustering-overview/rack-aware-cluster-vm-sign-in.png":::
41+
42+
1. Set the parameters:
43+
44+
```azurecli
45+
$vmName ="local-vm"
46+
$subscription = "<Subscription ID>"
47+
$resource_group = "local-rg"
48+
$customLocationName = "local-cl"
49+
$customLocationID ="/subscriptions/$subscription/resourceGroups/$resource_group/providers/Microsoft.ExtendedLocation/customLocations/$customLocationName"
50+
$location = "eastus"
51+
$computerName = "mycomputer"
52+
$userName = "local-user"
53+
$password = "<password for the VM>"
54+
$imageName ="ws22server"
55+
$nicName ="local-vnic"
56+
$storagePathName = "local-sp"
57+
$storagePathId = "/subscriptions/<Subscription ID>/resourceGroups/local-rg/providers/Microsoft.AzureStackHCI/storagecontainers/local-sp"
58+
$zone = “local-zone”
59+
```
60+
61+
1. Run the following command:
62+
63+
```azurecli
64+
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId –zone $zone
65+
```
66+
67+
1. Verify that the VM was created in the desired zone. Look under `placementProfile` in the output.
68+
69+
```azurecli
70+
"placementProfile": {
71+
"strictPlacementPolicy": null,
72+
"zone": "local-zone"
73+
},
74+
```
75+
76+
### Create a VM in a specific availability zone (strict placement enabled)
77+
78+
To create a VM in a specific availability zone and ensure it stays within that availability zone, you can specify another flag `--strict-placement` to `true`. The VM is created on a node within the specified zone (`--zone`). If all machines within a zone are down, the VM also goes down. Only enable strict placement if the VM isn't required to be always running or needs to adhere to a specific availability zone due to compliance requirements.
79+
80+
1. Run the following command:
81+
82+
```azurecli
83+
az stack-hci-vm create --name $vmName --resource-group $resource_group --admin-username $userName --admin-password $password --computer-name $computerName --image $imageName --location $location --authentication-type all --nics $nicName --custom-location $customLocationID --hardware-profile memory-mb="8192" processors="4" --storage-path-id $storagePathId –zone $zone –strict-placement true
84+
```
85+
86+
1. Verify that the VM has strict placement enabled and was created in the desired zone. Look under `placementProfile` in the output.
87+
88+
```azurecli
89+
"placementProfile": {
90+
"strictPlacementPolicy": true,
91+
"zone": "local-zone"
92+
},
93+
```
94+
95+
## Next steps
96+
97+
- See [Rack Aware Cluster networking](rack-aware-clustering-network-design.md).

0 commit comments

Comments
 (0)