The demand for cloud resources continues to grow, and even major cloud infrastructures like Microsoft’s Azure occasionally face capacity constraints. Recently, we encountered this firsthand while setting up a new Azure Virtual Desktop (AVD) environment in the West Europe region. With limited resources available in this region, deploying all required resources became a significant challenge!
To ensure the project’s success, we had to adapt by distributing our deployment across multiple Azure regions, for example: Sweden Central and Germany West Central. This experience offered valuable insights into managing resource allocation, maintaining performance, and leveraging Azure’s global infrastructure during times of capacity limitations. Read on as we share the journey, the challenges we faced, and the solutions we implemented to build a resilient and scalable AVD environment.
Background
The Netherlands faces a critical electricity grid capacity crisis, halting new connections for factories, homes, and datacenters. This bottleneck threatens economic growth, housing development, and cloud infrastructure expansion for companies like Microsoft, AWS, and Google. Read my blog for a more detailed insight into how the electricity capacity crisis is impacting businesses, housing, and the future of cloud infrastructure in the Netherlands.
Quota limits
Azure imposes several limits on vCPU (cores) usage for virtual machines, organized by subscription and region. These limits include:
- Regional vCPU Quota: The total number of vCPUs allowed in a specific region for your subscription.
- VM-Family vCPU Quota: Specific quotas for each VM series (e.g., D-series or E-series).
Adjustable Quotas
You can request increases for adjustable quotas directly in the Azure portal:
- Navigate to the “Quotas” page, select the relevant VM-family or region, and submit a new quota request.
- You can either specify an exact limit or adjust the usage percentage. Approved requests are processed quickly but depend on resource availability at the time of deployment.
It seems that requests for D-series SKUs processed directly via the Azure Portal are automatically denied. As one of the most widely used compute SKUs, this suggests that regional capacity limitations are significant. While creating support tickets we were granted approval for the required amount of cores (vCPU’s).
Considerations
Even if your quota increase request is approved, deployment depends on the availability of resources in the specified region at the time of deployment. There’s absolutely no guarantee by having a quota increase. It’s advisable to monitor quota usage proactively and plan deployments in advance to mitigate capacity risks!
Azure Virtual Desktop
The AVD control layer, which includes resources like host pools, application groups, and workspaces, forms the backbone of your AVD environment. These resources are essential for managing and orchestrating virtual desktop experiences. However, the control layer can only be deployed in specific Azure regions that support AVD’s advanced functionality.
- Australia East
- Canada (Central & East)
- Central India
- US (Central, East, East2, North Central US, South Central, West Central US, West US, West US2, West US3)
- North Europe
- West Europe
- Japan (East, West)
- South Africa North
- UK (South, West)
Spread resources
One of the most powerful features of AVD is the ability to split the control layer from the VMs that deliver the desktops and applications. While the control layer must reside in a supported region like West Europe, your session host VMs can be deployed in any region that best serves your business needs with the lowest latency possible. Some key take aways;
Close to users: Deploying VMs closer to your end users reduces latency and improves performance. For instance, if your control layer is in West Europe but a large group of users is in Germany, you can deploy VMs in the Germany West Central region to provide a better user experience.
Cost reduction: Different Azure regions have varying pricing models. You can strategically choose a region with lower costs for VM deployment without compromising on performance. Regions like Sweden Central offer lower prices for value.
Redundancy: By separating the control layer and VMs across regions, you create a more resilient setup. If one region experiences an outage, the other can still function, minimizing downtime.
Availability: Azure regions (datacenters) do not all offer the same range of SKUs. Some have a more limited selection, requiring you to carefully balance cost efficiency, redundancy, and latency to create the most optimal infrastructure.
For example:
- Control Layer: Hosted in West Europe.
- Session hosts: VMs deployed in North Europe, Germany West Central, Sweden Central
- Production environment: As close as possible to end-users.
- Acceptance environment: As close as possible to end-users, with more affordable SKUs within the same VM family.
- Test environment: VMs deployed in Sweden Central, offering the most cost-effective option for lower-priority environments.
Note: verify latency to Azure regions effectively via Azure Latency Test – Measure Latency to Azure Datacenters Worldwide and Azure Speed Test 2.0. Official Round-trip latency measured by Microsoft can be found here.
Enhanced Host Pool Management
At Ignite 2024, Microsoft introduced the public preview of advanced host pool management for Azure Virtual Desktop. This new feature enables the automatic creation and deletion of virtual machines based on workload demands, ensuring efficient resource utilization.
While this marks significant progress in cost management, it also introduces a notable risk. As mentioned earlier, capacity availability is not guaranteed. For instance, consider your environment scaling down overnight, only to face challenges scaling back up during business hours due to resource shortages in the Azure region.
Would you take the risk, or stick with the current scaling plans? These plans simply start up or shut down virtual machines. While they don’t guarantee the VMs will successfully boot, at least you already have them available.
Enhanced host pool management for Azure Virtual Desktop | Microsoft Community Hub
Disaster Recovery for Azure Virtual Desktop
When different user groups have unique disaster recovery (DR) requirements, Microsoft suggests using separate host pools configurations. For instance, users relying on mission-critical applications might require a fully redundant host pool equipped with geo-disaster recovery capabilities, while development and testing users could use a host pool without any disaster recovery features to save additional costs.
Each Virtual Desktop host pool can implement a DR strategy based on either an active-active or active-passive model. This approach assumes that a specific host pool serves a single group of users within a particular geographic region.
Multiregion BCDR for Azure Virtual Desktop – Azure Architecture Center | Microsoft Learn
FSLogix Profiles
When discussing disaster recovery, FSLogix often comes to mind. Traditionally, Azure Files with Locally Redundant Storage (LRS) or Zone Redundant Storage (ZRS) has been the standard. However, for improved latency and redundancy, it’s worth considering FSLogix Cloud Cache. Might be most recommended while using several Azure regions across the globe.
Cloud Cache Overview – FSLogix | Microsoft Learn
For backups, it’s typically advisable to back up profile disks while excluding the Office container. By separating profiles and containers across different file shares or even storage accounts, you can apply distinct backup policies, avoiding unnecessary backups of the Office container.
For the Office container, if its cached data that can be reconstructed from an online data source like Microsoft 365, backing up this data is unnecessary saving storage costs.
Conclusion
We cannot assume unlimited availability in every cloud region. Data centers have capacity limits, and managing them proactively is essential. By strategically distributing resources, such as running test workloads in cost-effective regions like Sweden Central while maintaining critical services like Azure Virtual Desktop control planes in West Europe or other supported regions, businesses can optimize costs and ensure resilience. Smart planning today prevents disruptions tomorrow!