This section provides best practices for sizing your Azure Virtual Desktop on Azure Stack HCI VDI deployment.
This density-optimized configuration provides a good balance of performance, cost, and scalability for various general-purpose VDI workloads.
For architectures with Ice Lake processors, user density and considerations include:
- Task Workers—Nine users per physical core. For example, with 2 x 24 core processors per host and 416 VDI desktop sessions per host.
- Twenty-nine user sessions per multi-session VM. For example, with 14 Azure Windows 10 multi-session VMs per physical host, 42 in total on a three-node cluster.
- Twenty-nine user sessions per multi-session VM equates to 3.7 users per vCPU (8 vCPUs per multi-session VM).
- Knowledge Workers—six users per physical core. For example, with 2 x 24-core processors per host and 290 single session VDI desktops per host.
Best practices for memory allocation and configuration include:
Do not overcommit memory when sizing because memory is often not the constraining resource. Overcommitting memory increases the possibility of performance degradation if contention for memory resources occurs, such as swapping of memory. Overcommitted memory can also affect storage performance when swap files are created.
Populate memory in units of eight DIMMs per CPU to yield the highest performance. Dell PowerEdge servers using 3rd Generation Intel Xeon Scalable processors have eight memory channels per CPU, which are controlled by four internal memory controllers, each handling two memory channels. To ensure that your environment has the optimal memory configuration, use a balanced configuration, where each CPU supports a maximum of 16 DIMMs (or 32 DIMMs for a dual-CPU server). The most effective configuration is 16 DIMMs (8 per processor) with Intel Xeon Scalable processors.
For multi-session VMs, all memory should be reserved. Set the startup memory to match the full size of memory being allocated to the VM (for example, 32 GB). This way the guest operating system will always see it has at least this much memory. Dynamic memory is not enabled for multi-session VMs as with 1 TB of installed memory there is sufficient memory to be reserved for all VMs.
For single session VMs, set the startup memory to match the full size of the memory being allocated to the VM. Enable dynamic memory with the minimum memory set to half the maximum memory (for example, 2 GB minimum and 4 GB maximum) with a 20 percent buffer.VMs
Whether or not you are running your VDI desktop VM on Azure Virtual Desktop, different types of user workloads require different session host VM configurations.
- Task Worker VM Profile—Equivalent to Azure D8s-v3 or D8s-v4 standard VM configurations (8 vCPUs, 32 GB of RAM, all reserved).
- Knowledge Worker VM Profile—Equivalent to Azure B2s or A2 v2 standard VM configurations (2 vCPUs, 4 GB of RAM, 2 GB reserved).
For more information, see the Microsoft Azure Virtual Machine Sizing Guidelines.
The number of multisession VMs can be adjusted up or down depending on the requirements of the environment. An administrator may want fewer or more VDI desktop sessions per multisession VM, depending on user load and the amount of physical CPU and memory overhead available.
This section lists items that should be considered when sizing your deployment.
For more information, see TechBook—Dell EMC Integrated System For Microsoft Azure Stack HCI.
- User density—If concurrency is a concern, calculate how many users will use the environment at peak utilization. For example, if only 80 percent are using the environment at a time, the environment need support only that number of users (plus a failure capacity).
- Number of cluster nodes—The number of nodes in a cluster should consider the planned number of virtual desktop users and allow room for future expansion.
- Azure subscription cost—The number of CPU cores in the cluster determines the monthly cost of the Azure Stack HCI cluster and so should be considered when choosing CPU type and the number of cluster nodes. At the time of writing, the subscription cost is 10 US dollars per core per month.
- Storage spaces resiliency—The chosen number of nodes in the cluster can also determine the storage resiliency configurations available. Two-node clusters only allow two-way mirroring, three-node clusters only allow three-way mirroring, and four or more nodes allow a choice of dual parity or mixed accelerated parity. Different resiliency configurations change the storage efficiency. Sizing the storage should take into account the amount of storage that will be available for actual use after a resiliency configuration is chosen. Note that while some resiliency options use parity, Dell does not recommend using parity with VDI VMs.
- Number of storage volumes—Consider making the number of volumes a multiple of the number of servers in your cluster. For example, if you have servers, you will experience more consistent performance with total volumes than with 3 or 5. This allows the cluster to distribute volume "ownership" (one server handles metadata orchestration for each volume) evenly among servers.
- Capacity reserve—It is recommended that you leave some reserve storage capacity so volumes can repair after a drive failure. A reserve equivalent to one capacity drive per server is a minimum recommendation. This allows an immediate, in-place, parallel repair to succeed after a drive failure.
- Hard drive storage types—Consider using all-flash drives. Dell Technologies recommends configuring the servers with all-flash single tier (SSD or NVMe) drives instead of hybrid drive configurations. This allows IT organizations to leverage benefits like reduced power consumption, physical rack space consumption, power, and cooling reduction. Flash drives have seen a rapid growth as well as reduction in cost and possess the ability to perform better and provide the same capacity as hybrid storage in a smaller footprint.
- Network configurations—For the different fully converged and non-converged network configuration options, consider that extra PCIe network adapters may be required with extra cabling, increased complexity, and requiring extra ToR switch port availability. If choosing a switchless networking configuration, note that it is not scalable, and four nodes is the maximum size of the cluster.
- Azure Virtual Desktop—Rolling out a large number of Azure Virtual Desktop VMs may require the use of PowerShell to create the VMs and register them with Azure and Azure Arc. Creating the scripts or manually deploying the Azure Virtual Desktop desktops may be time-consuming.