Deploy Azure Virtual Desktop Hybrid

Deploying Azure Virtual Desktop Hybrid requires completing the following steps: deploying your on-premises virtual machines or servers, Arc-enabling each device, configuring Azure Virtual Desktop resources, and running the Azure Virtual Desktop Arc extension to register session hosts with a host pool.

Important

Azure Virtual Desktop Hybrid is currently in preview. See the Supplemental Terms of Use for Azure Previews for terms. Azure Virtual Desktop Hybrid currently requires host pools to be configured as a validation environment: Configure a host pool as a validation environment

Prerequisites

Azure Virtual Desktop prerequisites

Review and complete all Azure Virtual Desktop prerequisites before continuing.

Key requirements include:

Azure Virtual Desktop Hybrid prerequisites

In addition to the standard AVD prerequisites, Azure Virtual Desktop Hybrid requires:

Deploy on-premises virtual machines or servers

Use your existing provisioning flows to deploy the virtual machines or physical servers that will become session hosts. Typical flows use scripts, System Center Configuration Manager (SCCM), hypervisor management software, or third-party tools. Make sure machines meet hardware and OS requirements. The output of this step should be a running Windows machine - you'll Arc-enable it in the next step.

Session host requirements

  • Deploy session hosts with supported operating systems.

  • Make sure adequate CPU, memory, storage, and other resources are available.

  • Windows client session hosts can be Microsoft Entra ID-joined, Active Directory Domain Services (ADDS)-joined, or hybrid-joined.

  • Windows Server session hosts must be ADDS-joined or hybrid-joined. Microsoft Entra ID-only join is not supported due to the Remote Desktop Services (RDS) licensing server dependency. For more information, see Azure Virtual Desktop identities and authentication.

Configure the Azure Arc connected machine agent

The Azure Arc connected machine agent must be installed and configured on each session host. There are many deployment options for the Azure Arc connected machine agent.

Configure Azure Virtual Desktop resources

You must create the host pool, workspace, and application group for session hosts.

Create a host pool

Important

Azure Virtual Desktop Hybrid currently requires host pools to be configured as a validation environment: Configure a host pool as a validation environment.

Follow the Deploy Azure Virtual Desktop instructions to deploy a standard host pool without adding session hosts.

Do not add virtual machines to this host pool.

When creating the host pool, assign a managed identity on the Identity tab. For more information, see Configure a managed identity for an Azure Virtual Desktop host pool.

Important

Azure Virtual Desktop Hybrid does not support Session Host Configuration.

Grant the host pool identity access to Arc resources

The host pool’s managed identity needs Reader access on the resource group containing your Arc-enabled servers.

Important

If the managed identity doesn't have Reader access to the Arc resource group, a future release will prevent session hosts from becoming available.

  1. Sign in to the Azure portal.
  2. In the search bar, enter Resource groups and select the matching entry.
  3. Select the resource group containing your Arc-enabled servers.
  4. In the left menu, select Access control (IAM).
  5. Select Add > Add role assignment.
  6. Search for Reader and select it, then select Next.
  7. For Assign access to, select Managed identity.
  8. Select Select members, then select your subscription and choose Host pool from the Managed identity dropdown.
  9. Select the managed identity for your host pool, then select Select.
  10. Select Review + assign, review your selections, and select Review + assign again.

Create a workspace

If a workspace does not already exist, follow the instructions to create a workspace.

Create an application group

If an application group was not already created:

  1. Follow the instructions to create an application group.

  2. Add the application group to a workspace.

Deploy the Azure Virtual Desktop Azure Arc extension

The Azure Virtual Desktop Azure Arc extension installs the AVD session host software components on Arc-enabled machines and registers them to your host pool. On Windows Server, it enables the Remote Desktop Session Host (RDSH) role. On Windows 11, it enables connecting over Remote Desktop Protocol (RDP).

Tip

The AVD Arc Extension will reboot the session host if it installs the RDSH role on Windows Server. To avoid a reboot during AVD configuration, install the RDSH role before running the AVD Arc extension.

Required PowerShell modules

Generate a host pool registration key

When you add session hosts to a host pool, first you need to generate a registration key for that host pool. A registration key authorizes session hosts to join the host pool. It's valid only for the duration that you specify.

$expiresUtc = (Get-Date).ToUniversalTime().AddHours(24).ToString("yyyy-MM-ddTHH:mm:ss.fffffffZ")
$regInfo    = New-AzWvdRegistrationInfo -ResourceGroupName $HostPoolRG -HostPoolName $HostPoolName -ExpirationTime $expiresUtc
$token      = $regInfo.Token

Install the Arc extension and pass the registration token

Run the CloudDeviceExtension and pass the registration token.

# Settings
$settings          = @{ isCloudDevice = $false }
$protectedSettings = @{ registrationToken = $token }
 
# Install extension
New-AzConnectedMachineExtension -Name 'Microsoft.AzureVirtualDesktop.CloudDeviceExtension' -ResourceGroupName '<ResourceGroupName>' -MachineName '<MachineName>' -Location '<Azure Region>' -Publisher 'Microsoft.AzureVirtualDesktop' -ExtensionType 'CloudDeviceExtension' -Setting $settings -ProtectedSetting $protectedSettings

Validate the Arc extension was successfully installed

After the Arc extension completes, Azure Arc reports Succeeded if the extension installed successfully.

  1. Sign in to the Azure portal.

  2. In the search bar, enter Azure Arc and select the matching service entry.

  3. Select Infrastructure.

  4. Select Machines.

  5. In the Name column, select the Arc VM you need to validate.

  6. In the left menu, select Settings > Extensions.

  7. The Status column for Microsoft.AzureVirtualDesktop.CloudDeviceExtension should show Succeeded.

Validate the session host is available in the host pool

You can now validate the session host is available in the Azure Virtual Desktop host pool.

Important

It may take up to 15 minutes for the session host to report available in the host pool after the extension reports "Succeeded".

  1. Sign in to the Azure portal.

  2. In the search bar, enter Azure Virtual Desktop and select the matching service entry.

  3. Select Host Pools.

  4. Select the appropriate Host Pool.

  5. In the host pool blade, select Session hosts.

  6. Locate the VM name in the list and confirm status is Available.

Assign users to the application group

Now you need to assign users to the application group. This step gives users access to Azure Virtual Desktop Hybrid desktops and apps.