Many small businesses currently enjoy cost savings as a result of their decision to consolidate an IT infrastructure via server virtualization -- that is, replacing multiple physical servers with software-only "virtual" ones that can co-exist within a single physical server. Another form of virtualization gaining traction and known as VDI (Virtual Desktop Infrastructure) extends the benefits of virtualization out to users' PCs; having employees work off virtual desktops running on a central server means less money spent buying, deploying and maintaining new desktop and laptop computers.
But while server virtualization is a relatively mature technology that's within reach of most small businesses, the same can't currently be said for a VDI. Virtualizing a handful of servers is one thing, but virtualizing dozens, scores or hundreds of individual user desktops -- and doing so with acceptable levels of performance and reliability -- tends to be cost-effective only for larger organizations. It requires pricey specialized hardware and complex software components to manage the interactions between a user's virtual desktop and his or her physical PC.
Figure 1: Citrix VDI-in-a-Box templates let you specify virtual desktop operating parameters for individual users or groups.
Citrix's VDI-in-a-Box 5.0 (which is the result of the company's 2011 acquisition of Kaviza) aims to make VDI feasible for small business IT departments; it combines all the pieces necessary for VDI into an integrated package that can run comfortably on garden-variety server hardware. To be sure, if VDI-in-a-Box actually came in a box it would be labeled "SOME ASSEMBLY REQUIRED", but what's noteworthy is how streamlined that assembly process is and how thoroughly Citrix walks you through it in the form of detailed wizards and copious online documentation (in both written and video form). Indeed, we managed to get a basic, small-scale VDI-in a-Box system up and running in about a day.
VDI-in-a-Box System Requirements
If your small business is currently using virtual servers, chances are you're already using one of the three major hypervisor platforms VDI-in-a-Box 5.0 supports: Citrix's own XenServer (naturally), Microsoft's Hyper-V, and VMWare's VSphere. (Hyper-V support in particular is new to version 5.0.)
VDI-in-a-Box's system requirements depend on several usage variables, most notably how many and what kind of virtual desktops you want to deploy. Those virtual desktops can run either Windows 7 SP1 (Professional or Enterprise, 32- or 64-bit) or Windows XP Professional SP3 (32-bit).
General hardware guidelines for a server running VDI-in-a-Box are six to 10 virtual desktops supported per CPU core and 512 MB to 2GB of RAM needed per virtual desktop. Disk space requirements depend on the size of the OS image(s) used to generate virtual desktops, but 1 TB of space should be enough to comfortably accommodate as many as 50 desktops. (Consult Citrix's VDI-in-a-Box Server Sizing Guide for more detail.)
For our test setup, we installed VDI-in-a-Box on a quad-core 2.9 GHz AMD Phenom II with 12 GB of RAM, and a 1 TB hard disk, using the free version of XenServer 6 as the underlying hypervisor.
The first step to getting VDI-in-a-Box off the ground is to import its VDI manager virtual appliance file into your hypervisor. We used Citrix's XenCenter management console to import the file into XenServer and assign it an IP address with a few mouse clicks.
A few minutes later the VDI-in-a-Box appliance was up and running; and we were able to point a Web browser to its IP address to run the initial setup wizard. This prompts the hypervisor's administrative account credentials and other parameters VDI-in-a-Box needs to operate, such as whether you want to set up a user account database or pull accounts from Active Directory.
VDI-in-a-Box uses grid architecture to provide redundancy (servers are organized into a grid, and all the servers in a grid are functionally identical, so if one dies any of the others act in its place). The first time you set up a VDI-in-a-Box server you're also creating a new grid. You can add another VDI-in-a-Box server to an existing grid, and the first server replicates the data to the new machine for fault tolerance (though we didn't have an opportunity to test this).
After VDI-in-a-Box has been configured, the next step is to import a Windows image that forms the basis for the so-called "golden image" that's used to generate the virtual desktops. Unless you already have an image, this requires creating a new virtual machine in your hypervisor, installing a pristine version of Windows on it (along with hypervisor management tools) and making sure Remote Desktop access is enabled.