ra2 studio - Fotolia
There's no universal answer to prevent VDI overprovisioning, but IT should understand what resources exist and how to use the tools to mitigate any issues.
What is VDI overprovisioning?
Virtual desktops must have access to adequate hardware resources to perform well, but these resources come at a cost. The cost per virtual desktop is determined by dividing a host server's cost by the number of virtual desktops running on that host and then adding the cost of any required software licenses. In other words, as the number of virtual desktops on a given host increases, the hardware cost per virtual desktop decreases.
Unsurprisingly, most organizations work to maximize their virtual desktop density per host to get the most benefits from their hardware investment and achieve the lowest possible hardware cost for each virtual desktop.
All too often, however, organizations will provision more virtual desktops than what a host can comfortably accommodate -- a practice known as overprovisioning. At best, VDI overprovisioning can lead to sluggish virtual desktop performance at certain times of the day. If taken to the extreme, resource overprovisioning can cause virtual desktops to fail.
How to prevent resource overprovisioning
There are several things IT professionals can do to prevent overprovisioned VDI resources. A good first step is to use a performance monitoring tool to get a sense of the resources that each virtual desktop consumes. Once IT pros establish a resource consumption baseline, they can determine the maximum number of virtual desktops each virtualization host can comfortably support.
When creating a resource consumption baseline, it's important to remember that the organization's users perform different job roles and therefore do not necessarily use their virtual desktops in the same way as one another. As such, IT pros often create virtual desktop baselines based on job role or expected usage. For a larger organization, this might mean creating a virtual desktop baseline for the sales department and a different baseline for the accounting department. Smaller organizations might simplify this process by creating a baseline for light, medium and heavy users.
As IT determines how many virtual desktops each VDI host can handle, it is important to remember that IT can't allocate all of the host's resources. The underlying hypervisor needs its own memory, storage and CPU resources to function. VDI environments are also prone to demand spikes. Over-allocating host resources can leave the host with insufficient resources to absorb demand spikes, such as the spike that inevitably occurs when users first log in for the day.
As IT pros use a performance monitoring tool to establish a resource consumption baseline, they should pay attention to which resources are in the shortest supply compared to their demand. There will usually be one resource that is the limiting factor in determining the total number of hosted virtual desktops. For example, a host might have enough CPU resources for 100 virtual desktops but only enough memory for 25.
In most virtual desktop environments, the resource that is in the shortest supply is storage IOPS. Therefore, it's important to understand the load each virtual desktop places on the storage subsystem, especially during demand spikes. IT can compare the demand for IOPS per virtual desktop against the total number of IOPS that the storage subsystem can deliver. This will help IT figure out the maximum number of virtual desktops the storage subsystem can handle and therefore help to avoid the overprovisioning of storage resources.
5 common overprovisioning missteps
1. Treating capacity planning as a one-time job
IT should ideally revisit the performance monitoring process every few weeks because the demand created by virtual machines inevitably changes over time. New applications or operating system versions often come with new resource requirements, but other potential causes exist. Something as simple as changing a configuration setting, installing a software patch or adopting a new security policy can change virtual desktop resource consumption.
Changes to the virtual desktops aren't the only drivers of VDI resource fluctuation. As the nature of the users' jobs evolves, that evolution can increase or decrease virtual desktop resource consumption.
2. Stretching memory too thinly
As IT protects virtual desktops against resource overprovisioning, it's important to consider whether the hypervisor has been configured to perform dynamic hardware allocation. For example, some organizations dynamically allocate memory to virtual machines to increase virtual desktop density beyond what static memory allocation would allow.
It is possible to dynamically allocate memory and other resources safely, but it is important to avoid being overly aggressive with dynamic allocations. Otherwise, IT can starve virtual desktops of resources. IT pros should start small and gradually make changes over time to see how they affect their virtual desktop environment.
3. Not properly balancing hardware resources
There is usually one type of hardware resource that limits the total number of virtual desktops that a host server can accommodate. In the previous example, the host only had enough memory to run a certain number of virtual desktops, even though the server's CPU could handle far more.
The CPU is underutilized in a situation like this because the memory limits the total number of virtual desktops, which means the organization is paying for CPU resources it can't use. The best way to prevent wasted hardware investment is to align hardware purchases with use. If you know that some CPU resources will go to waste, for example, you may be able to purchase fewer CPUs, which may also drive down your licensing costs, or buy less powerful CPUs.
4. Failing to leave resources for the hypervisor to use
Although IT professionals are often pressured to maximize the return on their hardware investment by achieving the highest possible virtual desktop density, it's important not to use up all of a host's hardware resources. The hypervisor needs a certain amount of hardware resources to function properly. Beyond the hypervisor, other software might also require hardware resources to operate efficiently, including management software, security software or even something as simple as a backup agent.
5. Forgetting to plan for utilization spikes
As important as it may be to create resource consumption baselines for virtual desktops, they should be a guideline rather than a definitive statement of the needed resources.
Virtual desktop utilization is inconsistent, and there will inevitably be activity spikes that occur. These spikes might occur at certain times of the day, such as when users are logging on in the morning, or they could even be seasonal. In any case, virtual desktops must have the resources they need to handle such spikes.