With budgets shrinking, you need to do more with less hardware

Despite tightening IT budgets, businesses still need new applications and the hardware to run them. Doing more with less is nothing new to IT management, and virtual machine (VM) software is one way to meet these conflicting demands. VM software enables a computer to run several OSs simultaneously, thus letting you make more efficient use of hardware resources and letting some employees work more productively.

Connectix and VMware produce VM software for PCs. Developers and quality-assurance and Help desk personnel can use these products to test code and diagnose problems on multiple platforms without requiring the company to purchase separate hardware for each OS. Unlike more common dual-boot system configurations, VM software lets you load several guest OSs at the same time.

VMware also produces VM software for servers, letting you consolidate applications that run on different OSs onto fewer servers. Figure 1 shows VMware GSX Server's management interface. Although VM software for servers lets you run multiple OSs on one piece of hardware, it also makes hardware redundancy essential because a hardware failure will bring down all virtual machines that were running on the failed server.

Most VM software is installed on top of your computer's OS (aka the host OS) and lets you install and run additional OSs (aka guest OSs) as virtual machines. VMware ESX Server, however, runs directly on the hardware, reducing I/O overhead and providing finer-grained resource management. All VMware and Connectix VM products support most Windows versions and several Linux variants as guest OSs. Table 1 lists the host and guest OSs that each vendor has tested with its products. Before you purchase a product, you should double-check that the vendor supports the guest OSs and versions that you want to run.

Although both vendors offer products that run on Windows, VMware also sells versions of its VMware Workstation 3.0 ($299) and VMware GSX Server 1.02 ($2,499) products that run on Linux. Connectix offers a Virtual PC For Mac version ($99 to $249, depending on the host OS) in addition to Virtual PC For Windows 4.2 ($199).

Getting Up and Running
Because all the Windows products (except VMware ESX Server) run on top of Windows, they'll run on any Intel x86 processor that the host OS supports. According to VMware's Web site, VMware's server products won't work with multiprocessor servers that use AMD Athlon MP CPUs. However, that situation could change, so you should check with VMware before you rule out a VMware server product for that reason.

During product installation, the VM software creates a virtual hardware platform for the guest OSs. For each virtual machine, the software provides a BIOS, which resides on the hard disk rather than in firmware. The VM software emulates widely supported network, graphics, audio, and I/O controllers (Connectix's Virtual PC For Mac also emulates a Pentium II processor). After installation is finished, you map serial ports, assign RAM and hard disk space, and define which emulated devices are present. Then, you select and install the guest OSs for each VM. Unlike the Connectix products, which emulate only an IDE disk controller, VMware's products let you define either a virtual SCSI or EIDE controller even if the physical controller is the IDE type.

With both vendors' VM products, you need to purchase the guest OSs separately. Virtual PC For Windows users can purchase guest OS disk images from Connectix. Costs are $149 for Windows XP Home Edition, Windows Me, and Windows 98 Second Edition (Win98SE); $249 for XP Professional Edition; and $199 for Windows 2000 Professional. These OS packs install more quickly than the OSs typically do. Figure 2 shows Virtual PC For Windows running Win2K Pro, Win98, and Win 95 virtual machines on top of Win2K Pro. VMware plans to make available similar XP Pro, XP Home, and Win2K image packs for VMware Workstation by the time you read this.

In Action
Because of the overhead involved when VM software emulates hardware, you'll pay a performance price for using these products. The penalty will depend on the application. Users of graphics or I/O-heavy applications, such as CAD or database management software, probably will notice the biggest hit. For mainstream desktop business applications, the vendors claim that the performance penalty is likely to be between 10 percent and 20 percent. But for developers testing new applications and for Help desk personnel, performance isn't an overriding consideration—in most such cases, the time saved by not having to reboot and load another OS is much more significant.

Production servers, however, are a different story. If server performance is paramount, check out VMware ESX Server, which runs natively on the hardware rather than on top of Windows. This approach to VM software minimizes overhead. VMware ESX Server also provides more precise resource management, letting you guarantee service levels for mission-critical applications.

VMware ESX Server targets performance-critical applications running on four-way and eight-way systems supporting as many as 20 virtual machines. This level of functionality doesn't come cheaply: VMware ESX Server sells for $9999 for a server that has from five to eight processors, $6999 for a server that has three or four CPUs, and $3749 for a one- or two-processor system. By contrast, VMware GSX Server sells for $2499 and is intended for machines with as many as four processors running as many as eight virtual machines.

As with all the products I've mentioned, however, each VMware ESX Server virtual machine maps to one processor. For this reason, applications that require multiple processors probably aren't good candidates for today's VM environments. Both of VMware's server products provide a Web-based remote management capability and remote keyboard/video/mouse (KVM) consoles so that administrators can start, stop, and reset virtual machines and remotely view and reconfigure a virtual machine.

Because VMware ESX Server runs natively on the server rather than on top of Windows, hardware compatibility becomes a concern. VMware claims the product will run on most servers from Compaq, Dell, Hewlett-Packard (HP), and IBM, but you'll need to call the vendor to confirm compatibility with your specific configuration.

A Good Choice?
When deciding whether VM software makes sense in your PC environment, you'll need to consider the suitability of your applications, ensure that your application vendors will support using their products with VM software, and factor in the cost of the VM software as well as the additional memory and storage needed to support its use. VM software is definitely a plus for developers and quality-assurance personnel who need to test code on multiple platforms and for Help desk staffs that support multiple OSs.

The benefits of employing VM software on production servers are less clear cut. Because each virtual machine maps to one processor, VM software might not currently be a workable approach for applications that need to scale to multiple CPUs. (VMware is planning to support symmetric multiprocessing virtual machines in an upcoming release.) You'll also need to confirm that your application vendors will support their applications on such a configuration.

If your applications are a good fit for a VM environment, determine the cost of purchasing the VM software and of increasing your system's memory and storage capacity to accommodate each additional OS and application. These additional outlays, although likely to be less than those necessary to buy new systems, reduce the attractiveness of VM solutions. Nevertheless, VM software can still make sense, especially for servers that aren't heavily utilized and for small IT departments that might not have the expertise to tune applications for optimal performance and peaceful coexistence.


CONTACT THE VENDORS
CONNECTIX VIRTUAL PC FOR WINDOWS 4.2
Connectix * 650-571-5100 * http://www.connectix.com

VMWARE WORKSTATION 3.0, VMWARE GSX SERVER 1.02, VMWARE ESX SERVER
VMware * 650-475-5000 or 877-486-9273
http://www.vmware.com