The most common problem I have personally encountered with real-world virtual desktop deployment is the actual...
virtual desktop configuration. Oftentimes, organizations will simply virtualize a physical desktop, then use the resulting image as the basis for their virtual desktops.
On the surface, this would seem to be a sound practice. However, virtualizing a production physical desktop can result in problems.
The reason for this stems from the way that virtual desktop infrastructure (VDI) works. The virtual desktops in a VDI configuration share a finite pool of physical server resources. Consequently, these hardware resources need to be used efficiently. Herein lies the problem.
If you think back to the origins of server virtualization, the technology was originally marketed as a way to make better use of physical hardware resources. The idea was that physical servers have far more hardware resources than are typically ever used by a single workload. Organizations could theoretically reduce hardware costs by consolidating workloads into a single physical box.
This same basic concept carries over into the world of virtual desktops. Desktop computers typically have much more processing power and other hardware resources than are actually required for running a workload. Consequently, there is no real penalty for running an inefficient operating system/application configuration.
Now suppose for a moment that a physical desktop with a less than optimal configuration was simply virtualized. Doing so would mean that each virtual desktop within the VDI pool would consume more resources than were actually needed. In a worst-case scenario, this could result in performance problems. In a best-case scenario, it simply means that some hardware resources are wasted.
My advice for VDI configuration is to build images from scratch, all the while looking for ways to improve efficiency by removing unnecessary services, operating system components, drivers, etc. Even if you end up with only a 2% gain in efficiency (typically, you'll get more), you have to consider the cumulative effect. A 2% gain across 500 virtual desktops, for instance, would yield a significant reduction in hardware resource consumption. Here are some ways to do so:
1. Remove nonessential components. Which types of things should you work to remove from virtual desktop images? I recommend starting with printer drivers. Many printer drivers are bundled with numerous other services that are completely unnecessary. Some printer drivers even contain services that are designed to generate pop-up messages encouraging you to buy ink and other supplies. Do you really want to waste hardware resources on pop-up advertisements?
It's also good idea to remove auto updates. These components not only consume system resources, but they also are a waste. If your VDI environment is set to automatically revert virtual desktops to a pristine state at the end of each user session, any updates that have been applied by an auto-update service will be removed any way.
Finally, go through the Control Panel and look for any operating system components or application options that can be safely removed without impacting the user in the process.
2. Watch the I/O. As you attempt to reduce the virtual desktop footprint, keep an eye out for anything that you can do to reduce the virtual desktop's storage I/O requirements. Inadequate storage I/O is perhaps the most common cause of virtual desktop performance problems. Anything that you can do to reduce I/O consumption within your virtual desktop images will have a compounded impact across an entire pool of virtual desktops.
3. Apply available data reduction. It is a good idea to check to see if your virtual desktop platform supports deduplication. If you are able to deduplicate the virtual desktop storage pool, you can vastly decrease the volume of physical space that the virtual desktops within the pool are consuming. If you can shrink the storage footprint enough, it may become cost effective to move the virtual desktop pool to solid-state storage, which will typically improve I/O responsiveness.
Don't make the mistake of underestimating storage requirements for VDI
Ten tips for configuring VDI storage the right way