VDI (Virtual Desktop Infrastructure) is a growing trend. The idea is to stream a standard boot image from a central storage repository so you can save on desktop support and maintenance costs. You avoid having to run endpoint protection products, or patching individual desktops, and you can distribute your desktops around the world as long as you have a reasonably fast Internet connection and a Web browser to kick things off.
But VDI is fraught with complexities. There isn't a single VDI solution to fit all circumstances, and each solution is composed of a multitude of products that have to fit together in very precise ways. There are several strategies to consider before plunging into these waters, and we'll consider several of them so you can figure out the right collection of products for your own particular circumstances.
First, before you assume VDI is right for you, consider the following circumstances:
- Bi-directional audio applications across your network
- Synchronizing PDAs and smartphones from your desktops
- Applications that depend on low-latency network connections
- Heavy graphics users such as CAD and desktop publishing
- Other oddball peripherals attached to your desktops such as scanners and specialty printers
If any of these apply, then stop right here because you aren't cut out for VDI. The more of these situations that you have, the more problems you will find with deploying VDI to these specific users. That isn't to say that eventually the VDI vendors will figure out solutions eventually, but for the time being, stick with more vanilla use cases to deploy your first collection of virtual desktops.
1. Start small. Many full-blown VDI implementations require storage area networks (SANs), deep experience with hypervisors such as VMware's ESX, and high-speed multigigabit networks to handle the increase in network traffic patterns. But if you just want to get started, start small with a bundled product from one of these vendors that include management and desktop deployment (and in HP's case the actual thin clients) as part of the package:
- HP Virtualization Bundle
- Ericom PowerTerm WebConnect
- Sychron OnDemand Desktop
- Quest Software Virtual Desktop Management
2. Pick your hypervisor. There are four major VM hypervisor suppliers: VMware, Citrix Xen Server, Microsoft and Sun -- listed in order of their suitability for VDI from best to least. All sell VM servers such as VMware's ESX that are good solutions for VDI, (and in Citrix' case, Xen Server is now free) but once you start down the path of one vendor's products, it isn't easy to switch or mix and match. As part of this step, think about what actual server hardware will be used to house all of your virtual desktop images. You'll want to have a machine with as much RAM installed as possible, because each virtual session eats up this memory quickly. As part of this step, look carefully at what servers you will end up hosting all your virtual desktop sessions and make sure that it can handle all these VMs properly.
3. Understand connection brokers. This is the software piece that determines what remote desktop a user is assigned to and how they connect to the central storage repository of boot images. They include management and monitoring functions as well. The all-in-one bundles include their own brokers as part of their VDI solutions, but a notable third-party solution is LeoStream's Virtual Desktop Connection Broker.
4. Consider thin or embedded clients. The logical next step is to understand what will be sitting on top of your end users' desktops. Based on which hypervisor and whether you are using a bundled product, it is time to consider what your eventual client device is going to be that will run your virtual desktop. Some clients work with specific brokers, remote protocols, and applications better than others. There are several vendors that sell specialized thin client devices, including:
In addition to these devices there are other choices too. First is a special embedded version of Windows XP called the Windows Fundamentals for Legacy PCs that is attractive for some installations. Or you can choose to reuse older PCs and run a virtual machine from them. Realize that not every thin client will work with every hypervisor so it is important to check into that compatibility too. Thin clients don't always work for all situations -- remember our list above?
5. Consider moving eventually to a SAN. When your installation is big enough, consider a SAN with special VDI deduplicating properties, such as what NetApp offers. (They have this document that shows you how you can deliver a very dense VDI installation on their Web site.) This cuts down on your storage requirements and improves performance to the virtual desktops.
6. Gain experience with VM image management tools. Once you have your VDI deployed, you want to be able to manage them. What do these tools really do? They allow you the same centralized management that you once had in the mainframe era over terminal users: to view your entire desktop network at a glance, to be able to deploy new desktops by instantly cloning existing images, to easily patch all of your virtual images at once, or update them with new applications, as your needs or user population expands.
There are a number of management tools from the VM server vendors directly. For example, VMware offers vSphere and View Composer for its ESX line, while Citrix offers its Essentials for both its own Xen Server and Microsoft's Hyper V hypervisors. Microsoft has a large collection of add-ons to its System Center management software too. But realize that these tools are more for generalized VM management than addressing VDI needs directly. There are also a number of third-party tools that are available because they offer more features and can scale better as your VDI population increases, such as:
7. Examine application streaming. An alternative to creating a specific desktop image for each particular set of users is to virtualize all of your applications and stream them directly to the desktop when they are needed. The idea is simple to understand: just as you stream a video or music file to your desktop from across the Internet without actually making a copy of it to your hard disk, the same happens with your applications. A streaming server sends all the information needed to run the application at the moment it is needed.
There are several advantages to doing this. First and foremost, you can run multiple versions of Office, or a Web browser, on the same desktop. This comes in handy when you are making a transition from an older to newer version and need both to handle incompatibilities. You don't consume individual client licenses for each streaming application. You save on desktop disk storage space and installation issues. And you regain some control over runaway version-itis, too, because your apps are always patched and current, and upgrades are trivial. The downsides is that this is yet another collection of software tools to learn and manage, and they all can be fairly quirky to deal with.
There are three major streaming providers here: VMware's ThinApp, Symantec's Endpoint Virtualization Suite, and Microsoft's App-V. Microsoft and VMware both work best with their own hypervisors, while Symantec's can run on any platform. (To get an idea of how complex these streaming tools are, take a look at a screencast video that I prepared for Symantec here.)
8. Know your licensing costs. With all these products coming together, the ultimate understanding of your software and operating system licensing needs isn't simple. Microsoft has made things harder by saying that VDI deployments will require Windows Virtual Enterprise Centralized Desktop (VECD) licenses. This could be another motivation to get behind application streaming.
As you can see, the universe of VDI is not an easy one to master. But the benefits can outweigh the challenges, and deliver a quick unified desktop platform to a wide installed base if done correctly.