Skip to content

Commit 3d5f944

Browse files
authored
Merge pull request #18143 from haraldfianbakken/release-local-disconnectednew
Release local disconnectednew
2 parents 7079900 + 3632097 commit 3d5f944

File tree

2 files changed

+84
-32
lines changed

2 files changed

+84
-32
lines changed

azure-local/manage/disconnected-operations-deploy.md

Lines changed: 55 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -19,22 +19,22 @@ This article provides you with steps to deploy Azure Local with disconnected ope
1919

2020
When deploying Azure Local with disconnected operations, consider the following key points:
2121

22-
- Ensure that your network configuration and the names entered in the portal are consistent with your setup and the switches created earlier.
23-
- Virtual deployments aren't supported. You must use physical machines for support.
22+
- Ensure that your network configuration and the names entered in the portal are consistent with your setup and the previously created switches.
23+
- Virtual deployments aren't supported. Physical machines are required.
2424
- A minimum of three machines is required to support disconnected operations. Up to 8 machines are supported.
2525
- The deployment of the Azure Local cluster may take several hours.
2626
- The local control plane may experience periods of downtime during node reboots and updates.
27-
- During the creation of the cluster, a thinly provisioned 2-TB infrastructure volume is created for disconnected operations. It's important not to tamper with or delete the infrastructure volumes created by the deployment process.
27+
- During the creation of the cluster, a thinly provisioned 2-TB infrastructure volume is created for disconnected operations. Do not tamper with or delete the infrastructure volumes created during the deployment process.
2828
- Upon the creation of the Azure Local cluster, the disconnected operations VM appliance is moved to cluster storage and converted to a clustered VM.
2929

3030
## Prerequisites
3131

3232
|Requirements | Details |
3333
|----------------------------|--------------|
34-
| Hardware | [Plan and understand hardware](disconnected-operations-overview.md#preview-participation-criteria) |
35-
| Identity | [Plan and understand identity](disconnected-operations-identity.md) |
36-
| Networking | [Plan and understand networking](disconnected-operations-network.md) |
37-
| Public key infrastructure | [Plan and understand public key infrastructure (PKI)](disconnected-operations-pki.md) |
34+
| Hardware | [Plan and understand the hardware](disconnected-operations-overview.md#preview-participation-criteria) |
35+
| Identity | [Plan and understand the identity](disconnected-operations-identity.md) |
36+
| Networking | [Plan and understand the networking](disconnected-operations-network.md) |
37+
| Public key infrastructure | [Plan and understand the public key infrastructure (PKI)](disconnected-operations-pki.md) |
3838
| Set up | [Set up disconnected operations for Azure Local](disconnected-operations-set-up.md) |
3939

4040
For more information, see [Azure Local disconnected operations overview](disconnected-operations-overview.md).
@@ -65,12 +65,12 @@ You deploy and configure Azure Local with disconnected operations in multiple st
6565

6666
:::image type="content" source="./media/disconnected-operations/deployment/deployment-journey.png" alt-text="Screenshot of the deployment flow." lightbox=" ./media/disconnected-operations/deployment/deployment-journey.png":::
6767

68-
The following gives and overview of what tools and processes is involved and if any access to Azure Local nodes (OS/host) is required):
68+
Here's a brief overview of the tools and processes used during the deployment. Access to Azure Local nodes (OS/host) might be required.
6969

70-
1. Using existing tools and processes for OS installation and OS configuration (All Azure Local nodes, Local admin access)
71-
2. Using Powershell and Operations module (First node (sorted by node name) e.g. Seed node, Local admin access)
72-
3. Using local Azure portal, Azure CLI (No physical node access needed, Azure RBAC - Owner role)
73-
4. Using local Azure portal, Azure CLI (No physical node access needed, Azure RBAC - Operator role)
70+
1. Use the existing tools and processes to install and configure the OS. You'll need Local admin access on all Azure Local nodes.
71+
2. Run PowerShell and the Operations module on the first node (sorted by node name like `seed node`). You'll need Local admin access.
72+
3. Use the local Azure portal or Azure CLI. You don't need physical node access, but you do need Azure Role-Based Access Control (RBAC) with the **Owner role**.
73+
4. Use the local Azure portal or Azure CLI. You don't need physical node access, but you do need Azure RBAC with the **Operator role**.
7474

7575
## Prepare Azure Local machines
7676

@@ -83,9 +83,21 @@ To prepare each machine for the disconnected operations appliance, follow these
8383
3. On physical hardware, install firmware and drivers as instructed by your OEM.
8484

8585
4. Set up the virtual switches according to your planned network:
86-
- [Network considerations for cloud deployments of Azure Local](../deploy/deployment-install-os.md).
86+
- [Network considerations for cloud deployments of Azure Local](../plan/cloud-deployment-network-considerations.md).
8787
- If your network plan groups all traffic (management, compute, and storage), create a virtual switch called `ConvergedSwitch(ManagementComputeStorage)` on each node.
8888

89+
```powershell
90+
# Example
91+
$networkIntentName = 'ManagementComputeStorage'
92+
New-VMSwitch -Name "ConvergedSwitch($networkIntentName)" -NetAdapterName "ethernet","ethernet 2"
93+
```
94+
95+
- If you use VLANs make sure you set the network adapter VLAN
96+
97+
```powershell
98+
Set-NetAdapter -Name "ethernet 1" -VlanID 10
99+
```
100+
89101
5. [Rename each node](/powershell/module/microsoft.powershell.management/rename-computer?view=powershell-7.4&preserve-view=true) according to your naming conventions. For example, azlocal-n1, azlocal-n2, and azlocal-n3.
90102
91103
6. On each node, copy the root certificate public key. For more information, see [PKI for disconnected operations](disconnected-operations-pki.md). Modify the paths according to the location and method you use to export your public key for creating certificates.
@@ -140,9 +152,9 @@ To prepare the first machine for the disconnected operations appliance:
140152
- AzureLocal.DisconnectedOperations.zip
141153
- AzureLocal.DisconnectedOperations.Appliance.manifest
142154
143-
```powershell
144-
Get-ChildItem $applianceConfigBasePath
145-
```
155+
```powershell
156+
Get-ChildItem $applianceConfigBasePath
157+
```
146158
147159
3. Extract the zip file in the same folder:
148160
@@ -156,12 +168,12 @@ To prepare the first machine for the disconnected operations appliance:
156168
- IRVM01.zip
157169
- AzureLocal.DisconnectedOperations.Appliance.manifest
158170
159-
```powershell
160-
Get-ChildItem $applianceConfigBasePath
161-
```
171+
```powershell
172+
Get-ChildItem $applianceConfigBasePath
173+
```
162174
163-
> [!NOTE]
164-
> At this point, you can remove the `AzureLocal.DisconnectedOperations.zip` file to save some space.
175+
> [!NOTE]
176+
> At this point, you can remove the `AzureLocal.DisconnectedOperations.zip` file to save some space.
165177
166178
5. Copy the certificates root directory. Save these files into the base folder you created earlier.
167179
@@ -398,7 +410,7 @@ Test-SslCertificateCrypto -SslCertificate $SslCertificate | Out-Null
398410

399411
## Install and configure the appliance
400412

401-
To install and configure the appliance on the first machine, use the following command. Point the `AzureLocalInstallationFile` to a path that contains the **IRVM01.zip**.
413+
To install and configure the appliance on the first machine (seed node), use the following command. Point the `AzureLocalInstallationFile` to a path that contains the **IRVM01.zip**.
402414

403415
```powershell
404416
$azureLocalInstallationFile = "$($applianceConfigBasePath)"
@@ -417,10 +429,23 @@ $installAzureLocalParams = @{
417429
AutoScaleVMToHostHW = $false
418430
}
419431
Install-Appliance @installAzureLocalParams -Verbose
420-
```
432+
```
421433

422434
> [!NOTE]
423-
> This process takes a couple of hours and must be completed successfully before you continue. After a successful configuration, you'll have a local control plane running in your datacenter.
435+
> Install the appliance on the first machine (seed node) to ensure Azure Local deploys correctly. The setup takes a few hours and must finish successfully before you move on. Once it’s complete, you’ll have a local control plane running in your datacenter.
436+
437+
If the installation fails due to incorrect network, identity, or observability settings, update the configuration object and re-run the `Install-appliance` command
438+
439+
Here's an example via a configuration object:
440+
441+
1. Modify the configuration object.
442+
443+
```powershell
444+
$ingressNetworkConfiguration.IngressIpAddress = '192.168.200.115'
445+
```
446+
447+
2. Set `$installAzureLocalParams` and Re-run the `Install-appliance` as shown in [Install and configure the appliance](#install-and-configure-the-appliance).
448+
424449

425450
## Configure observability for diagnostics and support
426451

@@ -546,7 +571,7 @@ To initialize each node, follow these steps. Modify where necessary to match you
546571
```azurecli
547572
Write-Host "az login to Disconnected operations cloud"
548573
az cloud set -n $applianceCloudName --only-show-errors
549-
az login --service-principal --username $appId --password $clientSecret
574+
az login --service-principal --username $appId --password $clientSecret --tenant 98b8267d-e97f-426e-8b3f-7956511fd63f
550575
Write-Host "Connected to Disconnected operations Cloud through az cli"
551576
```
552577
@@ -621,16 +646,16 @@ Follow these steps to create an Azure Local instance (cluster):
621646
2. Navigate to `portal.FQDN`. For example, `https://portal.autonomous.cloud.private`
622647
3. Select your nodes and complete the deployment steps outlined in [Deploy Azure Local using the Azure portal](../deploy/deploy-via-portal.md).
623648
624-
> [!NOTE]
625-
> If you create Azure Key Vault during the deployment, wait about 20 minutes for role-based access control permissions to propagate.
626-
>
627-
> If you get a validation error with Azure Key Vault, it's a known issue. Permissions take time to propagate. Wait a bit, refresh the browser, and try the cluster deployment again.
649+
> [!NOTE]
650+
> If you create Azure Key Vault during deployment, wait about 20 minutes for RBAC permissions to take effect.
651+
>
652+
> If you see a validation error, its a known issue. Permissions may still be propagating. Wait a bit, refresh your browser, and redeploy the cluster.
628653
629654
## Post-deployment tasks
630655
631656
Here are some tasks you can perform after deploying Azure Local with disconnected operations:
632657
633-
1. Back up the BitLocker keys. Used to encrypt volumes to ensure you can recover your appliance if you need to restore the VM. For more information, see [Understand security controls with disconnected operations on Azure Local](disconnected-operations-security.md).
658+
1. Back up the BitLocker keys. This encrypts your volumes and lets you recover the appliance if you ever need to restore the VM. For more information, see [Understand security controls with disconnected operations on Azure Local](disconnected-operations-security.md).
634659
1. Assign extra operators. You can assign one or many operators by navigating to **Operator subscriptions**. Assign the **contributor** role at the subscription level.
635660
<!--1. Create more subscriptions. You can create more subscriptions by navigating to **Subscriptions** in the portal and selecting **Create**. You can also use the CLI to automate subscription creation.
636661

azure-local/manage/disconnected-operations-network.md

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Here's a checklist to help you plan your network for disconnected operations on
3030
- Review [Physical network requirements for Azure Local](../concepts/physical-network-requirements.md).
3131
- Verify [System requirements for Azure Local](../concepts/system-requirements.md).
3232
- Develop the Azure Local network plan (Disconnected operations and Azure Local):
33-
- Create the [Host network plan (intents and switches)](../concepts/host-network-requirements.md).
33+
- Create the [Host network plan (intents and switches)](../plan/cloud-deployment-network-considerations.md).
3434
- Reserve the management IP address pool.
3535
- Configure the network for disconnected operations (ingress and management network):
3636
- Assign an ingress IP within the management IP address pool subnet, ensuring it doesn't overlap with the range provided during deployment.
@@ -89,10 +89,37 @@ The ingress network has several endpoints that are based on the configured FQDN.
8989
> [!NOTE]
9090
> The wildcard endpoints serve as backing services where your users dynamically create services such as Azure Key Vault or Azure Container Registry. Your infrastructure needs to resolve a wildcard for these specific endpoints.
9191
92-
If you plan to connect the appliance to Azure, make sure your DNS infrastructure resolves the necessary Microsoft endpoints. Allow DNS requests from the disconnected operations appliance and ensure there's a network path from disconnected operations to the ingress network to reach the external endpoints.
92+
If you plan to connect the appliance to Azure, make sure your DNS infrastructure resolves the necessary Microsoft endpoints. Allow DNS requests from the disconnected operations appliance and ensure there's a network path from disconnected operations to the ingress network to reach the external endpoints.
9393

9494
For more information, see [Firewall requirements for Azure Local](../concepts/firewall-requirements.md).
9595

96+
#### Configure your DNS server (if you are running Windows Server DNS role):
97+
98+
Here is an example:
99+
100+
```powershell
101+
$externalFqdn = 'autonomous.cloud.private'
102+
$IngressIPAddress = '192.168.200.115'
103+
104+
Add-DnsServerPrimaryZone -Name $ExternalFqdn -ReplicationScope Domain
105+
106+
Add-DnsServerResourceRecordA -Name "*" -IPv4Address $IngressIpAddress -ZoneName $ExternalFqdn
107+
```
108+
#### Verify your DNS setup
109+
110+
Here is an example:
111+
112+
```console
113+
nslookup portal.autonomous.cloud.private
114+
```
115+
116+
Here's a sample output:
117+
118+
```console
119+
Name: portal.autonomous.cloud.private
120+
Address: 192.168.200.115
121+
```
122+
96123
## Run appliance with limited connectivity
97124

98125
You can run the appliance in limited connectivity mode. This makes getting support easier and allows logs and telemetry to be sent directly to Microsoft without an export/import job. The disconnected appliance only needs to resolve a subset of these endpoints for observability and diagnostics purposes.

0 commit comments

Comments
 (0)