Server Virtualization Shootout
Whether consolidating servers or using computing resources more efficiently, server virtualization products come into their own.
- By Peter Varhol
The goal of server virtualization is to leverage your processing power to greater business advantage, in roles such as server consolidation, energy efficiency, application stability, high availability, development and testing. These are all worthwhile goals, but you also have to look at what you're paying to achieve them, and what kind of effort you have to make to get there.
There are currently three primary commercial players in server virtualization: VMware's ESX , Citrix's XenServer and Virtual Iron. (Microsoft's Hyper-V will be another competitor when released later this year; currently it's in beta. Also note that Parallels is building a traditional hypervisor, but it had not been released as of press time.)
All products require virtualization-tuned processors from Intel or AMD for at least Windows guest OSes. Because the hypervisor is foundational technology, and because Xen is available to any vendor, a big part of any review of server virtualization is management tools for virtual machines (VMs). You need the ability to easily switch VMs in and out, to schedule VMs and jobs, and to monitor the health of the image and applications running on it. Organizations looking at virtualization solutions should observe how these tools are developing on open source products as a part of their evaluation process.
Pricing for the three solutions examined here can be difficult to compare, as they offer multiple editions of their flagship server products. At the level at which an enterprise might go to production, VMware is around $2,600 (two processors, three years of support) and Virtual Iron is $499 per socket. In April Citrix announced new per-server pricing for XenServer. Customers pay one license per server, regardless of the number of sockets. Pricing is $600 per server for an annual license; and $900 per server for a perpetual license.
Don't expect any slam-dunk winner from this evaluation. Every approach involves tradeoffs, typically in the areas of cost, features and openness. Choosing the best approach for your organization depends on a combination of goals, budget and other resources, and the amount of control you have to exercise over the environment. The server virtualization market is still in its youth, but the alternatives among both proprietary and open source solutions are good and getting better. It's time to give them a look.
$499 per socket
Virtual Iron Software Inc. | 978-849-1200 | www.virtualiron.com
Virtual Iron uses the Xen hypervisor. While the company says it has made some of its own changes and additions to the Xen distribution, it remains fundamentally Xen.
[Click on image for larger view.]
|Figure 1. Virtual Iron's Virtualization Manager management console.
The foundation of Virtual Iron is the Virtualization Manager, the management console that provides for virtual infrastructure environment creation and hierarchy, visual status dashboards, access controls, performance statistics and event monitoring. The console uses a client/server architecture, with the server portion directly controlling the servers, storage and VMs, and the console providing for PC-based control of the VM environment. The Virtualization Manager is written in Java, and performs a neat trick of redirecting VGA output from the VM to the console for remote viewing of the displays of any and all VMs.
Creating and provisioning a new VM from the management console (see Figure 1) is easy. You can copy an existing VM just by performing a copy command. Alternatively, if you need a fresh VM, you can start by putting a DVD containing the OS installation in a drive accessible to the VM infrastructure (or you can simply store ISO images on your SAN or other networked storage device). You allocate the VM to a machine, then install the OS onto that VM, just as you would to a physical system. By opening a window into the VM, you can watch and direct the installation, just as you would with a physical OS. You can also configure it for a silent install if supported by the OS.
A key Virtual Iron feature is the live migration of VMs. Let's say that you have a VM running on one server, and want to move it to another, perhaps for better performance or because another VM needs the original server. You can initiate a move of a running VM from one server to another. On the management dashboard, you simply select a running VM on one server, and designate which server you would like to move it to.
I engaged such a move and watched the VM through a continuous ping as it did so. I had a single ping failure before I was up and running on the second server, a loss that would be made up in real network activity through a resend of those packets. This provides an indication that such a migration is both possible and fast.
Virtual Iron enables server partitioning for single and multi-server configuration, management capabilities for high availability and disaster recovery, as well as capacity management. Virtual Iron's tools are easy to use and let you do a lot to manage your VMs and your virtualization strategy in general. Some areas need improvement, of course. For example, it doesn't provide a good view of the health of the applications running on a given VM.
Overall, the tools are intuitive and provide a lot of flexibility in managing your VM infrastructure. Virtual Iron works with any Windows or Linux server (or desktop, for that matter, although that's not really its purpose). If you're looking for an open source-based approach to comprehensive server VM creation and management, Virtual Iron provides a high level of features and convenience.
$2,600 for two processors (three years of support)
VMware Inc. | 877-486-9273 | www.vmware.com
ESX, part of VMware's Infrastructure 3 suite, provides a server-based hypervisor environment for running one or more VMs on a physical server. You install ESX on one or more x86 physical servers. Following initial installation, the next step is to install the VirtualCenter management software. This management software runs on top of a Windows machine and is the administration point for one or more ESX hosts. Now you're ready to start creating VMs from existing physical machines. This is done through a tool in VirtualCenter called VMware Converter, which is VMware's physical-to-virtual (P2V) conversion tool.
[Click on image for larger view.]
|Figure 2. VirtualCenter is ESX's management console.
Once you've installed ESX and created or migrated VMs over to its servers, you're ready to run your computing environment from the management server. The management tools surrounding ESX are outstanding, as you might expect of the most mature product on the market. VirtualCenter consists of five separate parts:
- VirtualCenter Management Server
- VirtualCenter Database
- Virtual Infrastructure Client
- VirtualCenter Agent
- Virtual Infrastructure Web Access
The key parts are the Management Server, which provides the console; and the Database, which manages data used by the console. The Database can run on Oracle as well as any version of SQL Server, including MSDE.
VMware Converter takes the disks from a physical machine and converts them into bootable virtual disks. You run it from the console, and it's highly intuitive, with several useful features. In addition to converting physical images, it can also convert VM formats such as Microsoft Virtual Server or Virtual PC, backup images of physical machines such as Symantec Backup Exec LiveStateRecovery and Ghost backup images to running VMs.
One of the really nice features of VirtualCenter, shown in Figure 2 on p. 39, is the ability to visualize the relationships between physical servers, VMs, networks and storage. The graphic nature of this information makes you more productive and able to respond to rapid changes in the operating environment far better than a tabular listing of systems and VMs.
ESX provides an interesting network configuration by enabling virtual bridges between physical and virtual NICs. You can establish direct connections to physical NICs to improve performance and to designate a specific IP address to use for a VM. VMware also offers live migration of VMs through VMotion. There is also a live migration option to and from storage arrays, called VMotion Storage.
VMware has other management packages for different uses. In addition to VirtualCenter, it includes Site Recovery Manager, Virtual Desktop Infrastructure, Lab Manager and Stage Manager (the latter two mainly for software development and testing use). This level of specialization makes it possible to choose the feature set that best meets your use case. I didn't look at the other consoles, but the targeting to particular environments has the potential to make each highly productive in its intended problem domain.
VirtualCenter and ESX have many features that make setting up and managing a virtual IT environment easy and straightforward. It represents the third generation of a mature product line, and it shows in the smooth installation, setup, and execution. This product continues to set the standard for virtualization in the data center, albeit at a price not everyone is willing to pay.
$600 per server for annual license; $900 per server for perpetual license; unlimited sockets
Citrix Systems Inc. | 800-424-8749 | www.citrix.com
With Xen now part of Citrix, the product has all the advantages of an open source project coupled with the resources, support and direction from a large company that has a history of nimble responses to technology trends. XenServer comes in three versions: Express, Standard and Enterprise, along with a recently announced Platinum Edition that adds more enterprise features. I tested the Enterprise version, which is available for a wide variety of hardware, including systems using both Intel and AMD processors. In addition to Windows guest support (Windows Server 2003, Windows 2000 Server and Windows XP), it also supports several different flavors of Linux, including Red Hat Enterprise Linux, Novell SuSE Linux Enterprise Server and Debian.
[Click on image for larger view.]
|Figure 3. The XenServer management console, which is called XenCenter..
The current release uses a XenCenter console (see Figure 3) that requires XP, Windows 2003 server or Windows Vista to run. The new console is capable of managing physical and virtual environments from a single point. All versions of XenServer use the Xen open source hypervisor, a stripped-down Linux implementation that provides the underlying foundation for the virtual environment. Both XenServer Enterprise and Standard use a true 64-bit hypervisor, which supports significantly more memory and improves performance. For example, physical servers running XenServer can have up to 128GB RAM, while memory on each VM can be set up to as much as 32GB.
Installing XenServer on a bare metal, dual Intel processor server was straightforward, with no hiccups. Its documentation claims a 10-minute process, and while it took me longer, it was still less than 30 minutes. You can use the XenCenter console to create new VMs easily; the console also provides tools to start and stop VMs, monitor their performance and perform load balancing across multiple VMs. Generally, you'll run the console on a Windows machine (it also supports Linux), and use VNC or Remote Desktop (for Windows guests) to get to a console for each of the VMs.
Like ESX, XenServer supports live migrations from one physical server to another. I set up a ping on the VM to be migrated, and it missed only one response during the migration, an almost unnoticeable pause in communication. You can also suspend VMs to disk without changing their original state, which is a flexible way of both testing applications and ensuring high availability in production. You can dynamically allocate resources such as disks, CPUs and network connections.
In general, the XenCenter console is highly functional, with a smooth and easy-to-navigate interface. The product's feature set continues to grow, although it still needs some additional capabilities to provide lifecycle support of a VM. With XenServer, Linux is a full first-class virtual citizen, so if you're supporting a mixed OS environment, XenServer is a natural choice. Windows guests require VT processor support, while Linux doesn't, but it's good to have under all circumstances.
Xen has changed the industry in a number of ways, including price and accessibility for virtual computing. For example, XenServer Express Edition is not only readily downloadable, but also free. And scaling up to the Enterprise Edition makes it possible to leverage the largest hardware boxes in pursuit of virtualization operations. XenEnterprise is price-competitive with similar solutions (and priced significantly lower than VMware), making it a natural choice for mixed environments where the IT staff is willing to put in a little extra manual effort to support the full VM lifecycle.
The Winner Is ... What Works Best for You
I found Virtual Iron easy to use, with a feature set that is quite nice. But at this point you get more features-and a more mature UI-with ESX. If your budget is limited, Virtual Iron will get you about 80 percent of the way there. If you have the money, you'll get the confidence of a mature solution with VMware. At this point in the market, VMware gives you the premier solution, albeit for a premier price.
While XenServer and Virtual Iron share the same hypervisor (VMware's ESX is proprietary), the user environments are strikingly different. I won't say that one is better or worse than the other, but skills with one won't translate easily to the other. Of course, both are still catching up with ESX, which remains the last word in both ease of use and power at your fingertips.