VDI-in-a-Box 4.0 Cuts Costs, Complexity
Deploying and configuring the Kaviza package is a breeze.
Although Virtual Desktop Infrastructure (VDI) is a promising technology, it has so far been used almost exclusively by large organizations due to its inherent cost and complexity. Kaviza has changed that by bringing VDI to the masses with VDI-in-a-box. Here, I take a look at version 4.0 of Kaviza VDI-in-a-box to see if the product lives up to the marketing hype.
The Problems with VDI
Before you can really appreciate the Kaviza approach to VDI, you must understand some of the challenges associated with implementing VDI in the traditional manner. As I stated, the two biggest barriers to VDI implementation are cost and complexity.
Most of the VDI products on the market are extensions of server-virtualization technologies in which a hypervisor is used to host virtual client computers rather than virtual servers. Unlike server virtualization, though, having a host server alone isn't enough. You must have a way of attaching users' physical devices to the virtual desktop. The method for doing so varies from one VDI product to another, but usually involves a connection broker, a virtual machine (VM) composer and an Active Directory infrastructure.
Needless to say, deploying, configuring and maintaining these components can be complex. This is especially true when you consider that the server components outlined here represent the bare-minimum components necessary to implement VDI in the traditional manner. Most real-world VDI implementations also require redundant servers as a way of providing fault tolerance to the VDI infrastructure. Real-world VDI deployments also tend to make use of performance-enhancing mechanisms such as load balancers and storage-attached network (SAN) arrays.
Because so many different servers can be involved in a VDI deployment, implementing VDI can be expensive. There's a certain minimum investment that must be made in VDI infrastructure before you can virtualize even one desktop. As such, smaller organizations have typically found VDI to be cost prohibitive.
The Kaviza Approach
Like the other VDI products on the market, Kaviza VDI-in-a-box is based on server-virtualization technology -- but the similarities between VDI-in-a-box and other VDI solutions end there, which makes this product interesting.
The Kaviza software is designed to reduce the costs and complexity of VDI in several ways. First, VDI-in-a-box uses a "shared nothing" architecture. What this means is that there are no requirements for expensive shared storage, or for shared infrastructure components such as connection brokers or external load balancers. Any required components are seamlessly integrated into the software.
Another way in which VDI-in-a-box is designed to reduce costs is that Kaviza has designed it to run on commodity hardware. The only firm requirement for the VDI hardware is that it must support hardware virtualization. If you create a fault-tolerant grid consisting of multiple VDI servers, then Kaviza doesn't even require matching hardware. In a recent demo I saw someone deploy a fault-tolerant, load-balanced VDI infrastructure using a couple of PCs and a laptop.
Finally, Kaviza has attempted to make setting up a VDI infrastructure idiot-proof by greatly simplifying what's involved in deploying the VDI architecture. As someone who has built VDI deployments, I can assure you that this is no small feat -- yet Kaviza has done it. The software is designed so that you can create a full-blown VDI deployment using a single server (or PC). If you require fault tolerance, just install the Kaviza software onto another server and connect it to the grid that was created when you deployed the first VDI server. The Kaviza software uses the servers within the grid to automatically provide fault tolerance and load balancing for client sessions. Because the Kaviza software doesn't use shared storage, the VM templates are replicated to each server in the grid. All of the Kaviza servers store the VM images locally.
The Deployment Process
Like other VDI solutions on the market, VDI-in-a-box makes use of a hypervisor. Presently, VDI-in-a-box supports VMware ESX and ESXi, as well as Citrix XenServer. Kaviza also plans to add support for Microsoft Hyper-V in the second quarter of 2011.
For my tests, I set up a server running VMware ESXi 4.0, and connected to the server using the vSphere Client. I also downloaded the version of Kaviza VDI-in-a-box that was designed for VMware ESX. The download consisted of a 652MB .zip file, which decompressed to reveal a set of files that could be imported as a virtual appliance.
Because I'm a Microsoft MVP, the majority of my virtualization experience has been with Hyper-V. That being the case, I'd never attempted to import a virtual appliance into VMware before. Kaviza provided step-by-step instructions for the import process, but the instructions didn't match up to what I was seeing through the vSphere client.
When I contacted Kaviza technical support regarding the issue, I was told that the documentation was incorrect and that the instructions I was using were actually for a Citrix deployment. The technician I spoke to immediately provided me with the correct procedure and assured me the documentation would be corrected immediately.
Once I was able to import the Kaviza virtual appliance into VMware, the rest of the deployment and configuration process was a breeze. In fact, there are only four steps required to create a Kaviza grid:
- The first step in the process is to provide VDI-in-a-box with root access to the hypervisor. This involves providing an IP address, some authentication credentials, the name of the datastore and a network label.
- Next, you decide if you want to create a new grid, or if you'd prefer to join an existing grid. If you decide to create a new grid, you must provide a name for that grid.
- The third step in the deployment process is to connect to Active Directory (if you have one). That way, VDI-in-a-box can set up the permissions required to allow your existing users to connect to the virtual desktops that the server will eventually be hosting.
- The last step in the process is telling Kaviza whether the servers in the grid will be managed by vCenter. That's it!
Once you complete these four simple steps, you'll have a VDI grid up and running. The Enter Deployment and Configuration process takes less than half an hour. Of course, that's only taking into account the process of preparing the VDI grid for use. Creating the VMs is another story. Before you can host VMs, you have to create a template, which in turn is used to create the VMs. Creating a template is a tedious process.
You must create a VM that you'll use as a working image. There are a number of different configuration tasks that must be performed on the working image before you can begin using it as a template (see Figure 1). After you've finished configuring the working image, you must use the Kaviza software to prepare the template for use by using a process similar to Sysprep.
[Click on image for larger view.]
|Figure 1. You must prepare the working image for use as a template.|
Once you've finished creating the template, Kaviza is able to use the template to dynamically create Windows desktops on an as-needed basis. In my tests, I created four Windows 7 desktops. Because I manually generated these desktops, they're up and running and are ready to service up to four concurrent users. If a fifth user were to log in, though, the Kaviza software would use the template to generate another desktop on the fly. This dynamically generated desktop wouldn't be available to the user quite as quickly as a desktop that was already up and running would be, but the new desktop should be generated in a reasonable amount of time.
Kaviza has designed VDI-in-a-box to be remarkably flexible in terms of client connectivity. Users can establish virtual desktop sessions through a Web browser, a Java-based desktop client or a native Citrix receiver. Because Citrix receivers are supported, it's even possible to interact with a virtual Windows desktop using an Apple iPad.
Someone at Kaviza told me that VDI-in-a-box is designed so that it can be used by desktop-level IT technicians, without a server engineer having to get involved in the deployment process. When it comes to setting up a VDI grid, I think Kaviza has scored a monumental success in achieving its goal of keeping VDI simple.
Having said that, I did find the process of creating a desktop template (which is used to create a virtual desktop) to be non-intuitive. But I think that the fact that I was able to get my virtual desktops up and running is a testament to how good the Kaviza documentation is. Granted, I did discover an error early in the evaluation process, but the rest of the documentation was accurate and relatively easy to follow. (The error has since been corrected.) If you don't have at least some desktop management and server virtualization experience, you may struggle a bit in getting everything set up.
The first time I set up an enterprise-class VDI deployment, it took me a couple of weeks to get everything up and running. Once I got past the error in the Kaviza documentation, it only took me three hours to create a VDI infrastructure and begin hosting some virtualized Windows XP desktops. My point is that, even though I found the template-creation process to be tedious, the overall experience was nothing compared to working through a traditional VDI deployment.
Kaviza VDI-in-a-box is licensed according to the number of concurrent users accessing virtual desktops. A license costs $125 per user if users are connecting to their virtual desktops using Remote Desktop Protocol, but the price increases to $160 per concurrent user if High-Definition User Experience, or HDX, connectivity is used.
There's a page on the Kaviza Web site that shows how to achieve VDI for under $500 per desktop. The numbers on this page don't seem to account for the cost of the user's desktop hardware; nor do they take into account the cost of a fault-tolerant deployment. Still, the overall cost is far less than that of traditional VDI architectures.
Brien Posey is a 16-time Microsoft MVP with decades of IT experience. As a freelance writer, Posey has written thousands of articles and contributed to several dozen books on a wide variety of IT topics. Prior to going freelance, Posey was a CIO for a national chain of hospitals and health care facilities. He has also served as a network administrator for some of the country's largest insurance companies and for the Department of Defense at Fort Knox. In addition to his continued work in IT, Posey has spent the last several years actively training as a commercial scientist-astronaut candidate in preparation to fly on a mission to study polar mesospheric clouds from space. You can follow his spaceflight training on his Web site.