Accelerating Windows Virtual Desktop Deployments
Using Windows Virtual Desktop enables a secure, remote desktop experience from anywhere, helping companies build resilience as they adapt to working in new ways.
Before I start working on WVD engagements, I keep the following checklist in mind to have a productive working sessions with my customers. I’m also expanding this page that helps in delivering a Minimum Viable Product (MVP).
Prerequisites
- Be familiar with the prerequisites. https://docs.microsoft.com/en-us/azure/virtual-desktop/overview#requirements
- You need to have the Microsoft 365 E3 or E5 licenses. Pls validate with your Microsoft’s Account Executive.
- Have a valid Azure subscription :-) If you need one, you can sign up for a one-month free trial.
- Create a Resource Group, Virtual Network (VNet)
- Validate the connectivity from Azure to your On-premise Active Directory (AD) Server.
- The user must be sourced from the same Active Directory that’s connected to Azure AD. The UPN you use to subscribe to Windows Virtual Desktop must exist in the Active Directory domain the VM is joined to.
- Review the Supported Remote Desktop Clients and Virtual Machine OS images
Day-1 : Personal Desktops
Start with Personal Desktops for a quick validation of WVD.
- Go to Azure Portal
- Search for Windows Virtual Desktop
- Create a WVD Host Pool, Select the right VM shape, OS image, Create a Workspace etc..
- Within 5–10 minutes your WVD host pool is ready. Refer to the troubleshooting section if the host pool creation fails.
Add users to the Application Group
- Go to your Host pool >> Application groups >> {your Desktop Application Group} >> Manage >> Assignments
- Select Azure AD users or user groups.
- Save the settings
Connect to your WVD workspace
- Try HTML5 client for quick validation https://rdweb.wvd.microsoft.com/arm/webclient/index.html
- Windows: https://docs.microsoft.com/en-us/azure/virtual-desktop/connect-windows-7-10
- Mac: https://docs.microsoft.com/en-us/azure/virtual-desktop/connect-macos
- Login with your Azure AD credentials.
- You should see something similar. In my case I have workspaces for Personal and Pooled Desktops.
- Click on MyPersonalWorkspace >> PersonalDesktop
- You’ll be prompted to login with on-prem AD credentials.
- That’s it, You are inside your Windows 10 Enterprise WVD session host.
Day-2 : Building a Golden Image
- Let’s work on building a golden image and we’ll re-use that image to create host pools moving forward. This golden image includes all your customer software.
- One of the Microsoft MVPs did an excellent job in documenting all the steps to build a golden image. Pls refer to https://www.robinhobo.com/windows-virtual-desktop-wvd-image-management-how-to-manage-and-deploy-custom-images-including-versioning-with-the-azure-shared-image-gallery-sig/
- Create a new Host pool using this golden image. Go through the same wizard that we did on Day-1. Under Image >> select “Browse all images and disks” >> My Items. If you had saved your custom image in Shared Image Gallery, select Shared Images
Day-3 : Pooled Desktops
Windows Virtual Desktop lets you use Windows 10 Enterprise multi-session, the only Windows client-based operating system that enables multiple concurrent users on a single virtual machine (VM). With multi-session(pooled) desktops you’ll get a full desktop as well as Remote Apps.
- Create a new WVD Host pool for multi-session desktops.
- Go to Azure Portal >> Windows Virtual Desktop
- Create a host pool
- Start with Windows 10 Enterprise multi-session , Version 2004 + Microsoft 365 Apps
Full Desktops
- Finish the remaining steps in the host pool creation wizard.
- Give it 5–10 minutes to complete the provisioning process. Add users to the Application Group.
- Follow the same steps mentioned in Day-1 to connect to the Workspace and to login to the session hosts.
- Based on the above settings, you can have 4 users connecting to these 2 multi-session desktops at any given time.
RemoteApps
- Repeat the same process to create a new hostpool, workspace etc.
- By default a “Desktop Application Group” (DAG) is created but we now add a Remote Application Group to expose remote apps.
- Go to your WVD Host pool >> Manage >> Application Groups
- + Add
Now go back to your Remote Application Group (myRAG) and add the remote apps. These apps could be built-in apps or custom apps. Refer to the screenshot below
Day-4 — Configure FSLogix for roaming profiles
- Create a new Windows 10 Enterprise multi-session 2004 + Microsoft 365 Apps virtual machine. We’ll use this VM to build a golden image for multi-session desktops.
- RDP in to the VM
- Install FSLogix — https://docs.microsoft.com/en-us/fslogix/install-ht
- Create a new Storage Account and File Share
- Make a note of URL from Settings >> Properties section. The URL should be in the form of https://{storage-account}.file.core.windows.net/{filesharename}
- Open the Windows PowerShell ISE as an administrator and add the following entries
#Add FSLogix settingsNew-Item -Path HKLM:\Software\FSLogix\ -Name Profiles –ForceSet-ItemProperty -Path HKLM:\Software\FSLogix\Profiles -Name "Enabled" -Type "Dword" -Value "1"New-ItemProperty -Path HKLM:\Software\FSLogix\Profiles -Name "VHDLocations" -Value "\\wvdrg1storage.file.core.windows.net\myfslogixshare" -PropertyType MultiString -Force
Note: Pls make sure input the right storage account name and file share that’s valid in your subscription.
- Pls refer to https://docs.microsoft.com/en-us/fslogix/configure-profile-container-tutorial#configure-profile-container-registry-settings for the mandatory and optional settings for FSLogix.
- Pls refer to Robin Hobo’s page to implement FSLogix Profile container using Azure Files and Active Directory authentication for Windows Virtual Desktop (WVD) — https://www.robinhobo.com/how-to-implement-fslogix-profile-container-using-azure-files-and-active-directory-authentication-for-windows-virtual-desktop-wvd/
Day-5 : WVD Monitoring
- Use Azure Monitor for Windows Virtual Desktop to monitor your deployments. This feature is current in preview. Pls refer to https://docs.microsoft.com/en-us/azure/virtual-desktop/azure-monitor
Conclusion
I have repeatedly used this process to successfully deliver a MVP to my customers. Hope you’ll find this blog useful. I sincerely thank WVD Product Management team, Global BackBelt team, CAT team, MVPs and the extended Cloud Solution Architects (CSA) team in helping me to deliver successful customer engagements.
Useful Blogs
- Christiaan Brinkhoff — https://christiaanbrinkhoff.com/category/microsoft/azure/wvd/
- Tom Hickling — https://xenithit.blogspot.com/
- Robin Hobo — https://www.robinhobo.com/
- Neil McLoughlin — https://www.virtualmanc.co.uk/
- WVD Logix — https://wvdlogix.net/
- Microsoft MS Learn — https://docs.microsoft.com/en-us/learn/modules/m365-wvd-intro/2-what-is-windows-virtual-desktop
- Azure Academy — https://www.youtube.com/watch?v=DrkQFSVD9Ik&list=PL-V4YVm6AmwXGvQ46W8mHkpvm6S5IIitK
References
- Microsoft Teams Optimization in WVD — https://docs.microsoft.com/en-us/azure/virtual-desktop/teams-on-wvd
- Manually domain join the VMs and install the WVD Agent and WVD Agent Bootloader — https://docs.microsoft.com/en-us/azure/virtual-desktop/create-host-pools-powershell?WT.mc_id=Portal-Microsoft_Azure_WVD#prepare-the-virtual-machines-for-windows-virtual-desktop-agent-installations
- Office Deployment Tool — https://www.microsoft.com/en-us/download/details.aspx?id=49117
- Create RemoteApp Groups for multi-session Desktops — https://docs.microsoft.com/en-us/azure/virtual-desktop/manage-app-groups
- Install Microsoft 365 on a Master Image — https://docs.microsoft.com/en-us/azure/virtual-desktop/install-office-on-wvd-master-image
- WVD Logon Process and Identity Matching — https://xenithit.blogspot.com/2020/05/active-directory-topologies-support-for.html?q=The+WVD+log+in+process
- WVD Networking — https://docs.microsoft.com/en-us/azure/virtual-desktop/network-connectivity