If you've got a data center with more than a handful of servers, a quick way to save some money is to consolidate two or more servers. This usually means combining two or more software applications on a single computer and hoping that they don't trample each other competing for system resources.
There is a simpler way. Virtualization achieves the same goal without the hassle. It has the added advantages of simplifying security, server management and disaster recovery.
All is not rosy, however. Virtualization makes heavy hardware demands and can turn minor equipment problems into major disasters. Here's what you need to know about virtual servers in order to fully leverage their advantages while avoiding the pitfalls.
So what is virtualization?
As is often the case with technology, there are multiple answers to that question. Many computer components can be virtualized from the central processor to storage devices to many hardware peripherals. There are also a variety of techniques for achieving virtualization. In this article, virtualization refers to creating a simulated computer hardware environment using software.
Our focus is the "virtual machine" or VM. A virtual machine is a software application running on a host operating system in a physical computer. The VM creates an environment that appears to be another computer.
A guest operating system can be installed in the VM and attached to the corporate network. The VM can run software applications and behave just like any other PC on the network while the underlying host computer can independently run any other software.
The guest and the host function as two completely separate PCs. If they need to communicate, they must use network protocols just like other host machines. Even though they may share the same hard disk, they cannot simply access each others' files without using a network share.
To make things more interesting, the host and the guest do not have to be running the same operating system. For example, the host may be running Windows Server 2003 while the VM is running Windows 2000 or Linux. It is easy to run several different guest operating systems simultaneously if the underlying hardware environment is robust enough.
Running multiple guest operating systems requires several gigabytes of memory and a fast hard drive or multiple hard drives. While this would be an expensive computer, it would be less costly than buying separate computers for each operating system.
This sounds interesting enough from an intellectual curiosity perspective but what are the advantages of running multiple VMs on a single box?
Portability - It is easy to move software configurations around for load balancing or to create a multi-server cluster (virtual machines are just big disk files that can be copied from server to server like any other file).
Transportability - VM configurations can operate on a variety of hardware platforms so you don't have to worry about cloning the hardware for each new server. Just clone the VM.
Security - The host operating system is protected. If one of the guests gets infected or corrupted, it is easily destroyed and re-created. (Caution: If a virtual machine attracts a virus infection, it may transmit the infection to other guest or host machines on the network.)
Lower total cost of ownership - Less hardware to maintain means less money spent on new purchases, repairs and maintenance agreements.
Higher server utilization - It's common for physical servers to operate at well below 50% utilization. By installing one or more guests, full value can be extracted from the hardware.
Faster disaster response - In an emergency situation, it is faster to get virtual machines up and running than to prepare and configure lots of replacement hardware.
Perfect playpen - Virtual machines are ideal for experimenting with new software, new configurations or patches. If something goes wrong or you want to go back to an initial state, simply destroy the VM and start over.
Of course, no solution is perfect. There are a few disadvantages to virtual machines.
Slower performance - A virtual machine will never be as fast as a physical machine due to the overhead of emulating the hardware. This is rarely a blocking issue but requires some testing before committing to a virtual approach.
Multiple server failure risk - Having less hardware means having fewer hardware failures. However, when a hardware failure happens, multiple virtual servers will be offline. Be sure to evaluate the impact of this scenario and plan accordingly.
Initial setup cost - Your current servers may not have enough memory or disk space to accommodate one or more virtual machines. Upgrades may be required.
The leading virtual machine software supplier is EMC with its VMware product line. VMware supports both Windows and Linux as host or guest. Microsoft also has an excellent product called Virtual PC that supports Windows and OS/X as a host but only Windows as a guest.
In addition, there are two open-source projects worth investigating, Bochs and Xen. Bochs supports Windows and Linux while Xen is Linux only.
Within a few months, Intel and AMD will be shipping microprocessors with built-in support for virtualization. This will provide standardization for VMs and result in better performance. Once this happens, expect to see an explosion in virtual machine usage.
The flexibility and relatively low cost of virtual machines makes them a data center upgrade well worth considering.
Vin D'Amico is Founder and President of DAMICON, your ADJUNCT CIO. He is an expert in IT Business Continuity Planning, Network Security Policies, and Freelance Writing focused on white papers, case studies, and handbooks. DAMICON services firms worldwide.
This article appeared in Vin's monthly Virtual Business column for the IndUS Business Journal in March 2006.
To learn more about how DAMICON can help your business, please take a look at our service programs.
This column appears monthly in the IndUS Business Journal.