To Serve and to Virtualize

Virtualization on the server side can add up to big savings in hardware costs.

Server virtualization has evolved steadily since our last close look (see the October 2004 Redmond Roundup, "Virtual Servers in the Real World"). Perhaps the biggest news in the virtualization world these days is that Microsoft will include its "Hypervisor" virtual computing technology in Windows Server. This software layer will also work closely with processor-based virtualization technologies forthcoming from Intel and AMD.

The Hypervisor technology will essentially replace Microsoft's Virtual Server 2005, while easing the migration path for existing Virtual Server 2005 users. That day is at least a year away by even the most optimistic estimates. The need for server-class virtual computing, however, is growing stronger by the day.

There are several distinctions between server virtualization and workstation virtual computing, which includes products like Microsoft Virtual PC and VMware Workstation (see "Living in a Virtual World," July 2006). While the workstation products are good for software testing, server-class virtual computing is geared for production environments.

One of the primary goals of server virtualization is server consolidation. The idea behind server consolidation is reducing the number of physical boxes in your data center without reducing the number of logical servers. In other words, you can still run that old Windows NT 4.0 machine you need to in order to run a mission-critical legacy application, but it won't need dedicated hardware. Instead, it will operate on a virtual machine, running on a powerful "host" server capable of simultaneously running a half-dozen or more (sometimes many more) virtual servers.

VMware GSX Server and ESX Server
VMware is the oldest player in the virtualization market. It has two tools for server virtualization -- GSX Server and ESX Server. Both have essentially the same goal, which is to recreate a hardware environment in which you can "install" Intel-compatible operating systems and software.

For each virtual machine, VMware creates a virtual keyboard, memory, hard drive and any other resources typically associated with a physical machine. The nature and extent of these resources are dependent on the host machine's actual physical peripherals, memory, hard drive and so on. For example, a physical machine with a 10GB hard drive could not run a virtual machine with a 15GB hard drive.

Enter the matrix.
[Click on image for larger view.]
Figure 1. VMware’s Resource Map view gives you a look at physical resources available for your virtual servers.

While the goals are similar, there are major operational differences between GSX and ESX. You can install GSX Server over Linux or Windows. ESX Server is itself an operating system and installs on "bare metal."

The idea behind ESX Server is to create a dedicated virtual hosting machine that does nothing but host virtual machines. There's an obvious performance benefit with a single-purpose OS like this, but it has its downsides as well. For example, you can't make ESX Server a member of your Active Directory domain. Nor can you manage it with traditional Windows management tools (although VMware does provide robust management tools for ESX Server).

GSX Server provides slightly less robust performance, but it runs on top of Windows, which simplifies management. You can use familiar tools to manage your Windows or Linux-based virtual machines.

You'll appreciate that VMware's product line works in a consistent fashion. The tabbed user interface in VMware Workstation, for example, lets you work with multiple virtual machines simultaneously. On the server side, the administration client for GSX Server is nearly identical.

Redmond Roundup Ratings
[Click on image for larger view.]

Another nice touch is that VMware has created a VMware Technology Network, or VMTN. You can acquire virtual appliances through the VMTN. These are essentially pre-built virtual machines you can download and start using immediately, just as if you purchased a preconfigured server from an OEM. Options include Web and application servers, database servers, operating systems and so on. Companies providing these virtual appliances include StillSecure, Oracle, Zeus, Zimbra and Ubuntu.

VMware is introducing a new product on the server side that will change its lineup a bit. VMware Server was just released. VMware is positioning Server for "users new to server virtualization." It comes across as a "GSX Server Lite," particularly because it's free.

VMware Server will eventually replace GSX Server in the product lineup, and is clearly a response to Microsoft incorporating Hypervisor into Longhorn. It will provide an easy migration path to ESX Server when your needs grow. It will support up to four virtual machines per processor core versus ESX's eight per core. Because VMware Server is replacing GSX Server, you'll be able to purchase technical support, even though the base product will be free.

Overall, VMware's offerings are tops in terms of manageability. All of its products support NIC teaming, virtual machine clustering (including the ability to have different cluster nodes on different physical hosts), support for SANs, SAN path failover, hot migration of running virtual machines (called VMotion, which lets you move a virtual machine to a different host while the virtual machine is running), centralized management for multiple users (via VirtualCenter) and more.

Microsoft Virtual Server 2005 R2
Virtual Server 2005 is Microsoft's latest and greatest server-class virtualization product. It will also be the last. Recently updated to R2, it will soon fade away as its capabilities are rolled into Windows Server through Hypervisor. Microsoft has already announced the newest member of the System Center family (which includes future versions of both SMS and MOM) called System Center Virtual Machine Manager. This will be a centralized management solution for data center virtualization that will ship in late 2007 or early 2008.

Getting back to Virtual Server 2005, one of the biggest changes to R2 is x64 host support. This lets it run a crazy amount of virtual machines. With a four-way, dual-core x64 box holding an incredible 128GB of memory, I was able to easily run a dozen virtual machines with almost no disk activity.

Keep tabs on all your virtual machines.
[Click on image for larger view.]
Figure 2. Virtual Server gives you a complete status view for your virtual machines, including I/O activity and process or status.

With the virtual machines' disks loaded into RAM, it was an amazing experience. It reflected a level of performance that until then, I had only been able to achieve with VMware ESX Server (which again is a dedicated operating system). The only limitation with Virtual Server R2 is that the guest operating systems (those running on the virtual machines) can only be 32-bit.

With R2 also comes official tech support for running Linux virtual machines. Virtual Server has always been able to run Linux as a guest operating system, but now Microsoft will help you if you have any problems while doing so. R2 also has a few other useful updates, like PXE boot capabilities for virtual network adapters and a Virtual Server Migration Toolkit (for moving physical machines into virtual machines).

My chief complaint with Virtual Server 2005 has always been its entirely Web-based administrative interface. I find it clunky and much less efficient than VMware's Windows-based interface. It's extremely odd that Microsoft wouldn't deliver a Windows application while their competition does. Microsoft missed the mark on this one and R2 doesn't change it in any way.

What Virtual Server lacks in an administrative interface, it makes up for in its scriptability and automation. It has a robust Component Object Model (COM) interface and comes with a plethora of VBScript examples that show you how to automate everything involved in virtual machine provisioning and management.

Virtuozzo for Windows
Virtuozzo is a slightly different breed of virtualization. Rather than creating virtual machines with private virtual hardware resources, Virtuozzo virtualizes the host operating system. In other words, when you install Virtuozzo on Windows Server 2003, your virtual machines all run Windows Server 2003. This provides significantly less flexibility, but has other advantages.

You can't, for example, host legacy Windows NT machines in Virtuozzo while you're simultaneously hosting a Windows 2000 Server machine. On the other hand, by not virtualizing the hardware, Virtuozzo provides significantly better performance for virtual machines. This lets you run a couple dozen virtual machines on a single host server. You could even run more. The recommended maximum limit is 50.

Therefore, Virtuozzo is perfectly suited for something like consolidating a Web farm onto one or two massive host servers. It would also be good for providing "dedicated" servers to Web server hosting customers. Each virtual machine essentially has a private copy of the host operating system from which to build. This helps keep resources separate.

The robust management tools make it easy to administer the Virtuozzo environment. It's easily on par with VMware. In fact, Virtuozzo also supports cross-host migration of virtual machines, virtual machine templates, cloning and physical-to-virtual migration tools. You can allocate resources -- like memory -- between virtual machines to help fine-tune performance. Like the other solutions reviewed here, Virtuozzo offers x64 support, meaning it can take advantage of the enormous amounts of RAM you can pack into an x64 server.

Clone, start and run!
[Click on image for larger view.]
Figure 3. The Virtuozzo Management Console lets you handle tasks like cloning, starting and running your virtual servers.

Virtuozzo's underlying technology is impressive. Access to kernel-based resources, for example, passes through an abstraction layer that ensures if one virtual machine crashes, it won't take the rest of the system down as well.

The bummer for Virtuozzo is simply its lack of flexibility for running different operating systems on the same host. Granted, that's not its goal, but many Windows enterprises are looking at server consolidation as a slick way to reduce hardware costs and overhead while continuing to run legacy applications and older versions of Windows.

Virtuozzo can't really help with that, but if you have a number of homogenous servers you need to consolidate, Virtuozzo's worth a good look for its performance and manageability.

The Virtualization Verdict
Today's virtualization products are increasingly mature and robust. VMware's GSX Server (and to only a slightly lesser degree, the new VMware Server) takes the cake for its combination of manageability and flexibility.

You can't ignore Virtuozzo, but because it can't run multiple different operating systems, you'll find it suitable for a smaller range of server consolidation and virtualization scenarios. Microsoft's Virtual Server 2005 is powerful, but its Web-based administrative interface is slightly lacking. It does, however, offer best-in-class automation capabilities through an extremely detailed COM interface.

There are many scenarios for which a company may need a virtualization platform. Considering the differences with these three, you should be able to find one that suits your needs quite closely.


comments powered by Disqus

Subscribe on YouTube