This VDI approach has numerous benefits, beginning with almost complete application compatibility, because single-user applications don’t need to be modified to run in a multiuser environment. Moreover, desktop isolation means that problems arising in a single desktop instance do not affect other instances and that virtual desktop systems can be automatically built from templates as the need arises. Furthermore, desktop VMs can be pooled; when VMs are combined with Windows roaming profiles, it doesn’t matter what VM a user connects to because they’re all the same.
But VDI has its downsides, too. Virtual desktops lose out on all the administration benefits of terminal services. Applications must be installed in each virtual desktop individually, as must patches. And the management tools for virtual desktop systems are very new -- when they exist at all -- so standard tools such as Windows Server Update Services need to be called into play to manage all the moving parts. As Chris Barclay, director of product management at VirtualIron, notes: “We’re starting to see adoption, mostly in the state and local government space, and lots of financial market pilots. It’s being viewed as an alternative to ClearCube for floor traders.”
In time some of these drawbacks will melt away as vendors introduce complete, robust management frameworks for VDI. But it’s still in the early days, according to Jerry Chen, director of enterprise desktop platforms and solutions at VMware. “We’ve had some customers who’ve been running VDI for several years after writing their own brokers, but it’s only been in the last year or so that the space has really taken off.”
Share and share alike
The only fair way to evaluate VDI is to compare it to the status quo of thin-client computing. One of the major benefits of terminal services and Citrix installations has been desktop density. Since these solutions rely on multiuser platforms, they gain from the fact that a single system is running multiple sessions. This means that the underlying OS runs many core processes only once, and there’s only one kernel and memory footprint to worry about. Each session will spawn duplicate processes to maintain the unique session, but the core of the system is largely unchanged.
VDI is essentially the opposite of that. Each session runs a full instance of Windows XP, with all associated processes, and that equals less density per server. VMware has a leg up here, since under ESX Server, multiple static processes and libraries can be shared among VMs. This means that some core services and libraries are loaded into RAM once and shared among other identical VM instances, so some of those lost resources are regained. Yet if one session bombs, it still won’t affect the others.
On the other hand, terminal services and Citrix buildouts generally utilize lots of smaller-spec servers to reduce the number of eggs in each basket. In those instances, the loss of a single server due to memory corruption, disk failure, or human error results in only a few dropped sessions.
With VDI, larger-spec servers can be used, resulting in more desktops per server. Because each desktop is largely autonomous, the likelihood of human error, application crashes, or hardware failures is reduced. Also, most desktop sessions deployed with VDI do not require significant resources; a user spending all day in an Excel spreadsheet with Outlook running in the background consumes surprisingly little CPU, and 256MB of RAM should be about right.