Virtualization is a hot topic right now in IT circles. Consolidating servers to save time, energy, and money sounds like a great idea...if it works out that way. We think running virtual servers works in specific instances for small and medium businesses like our clients, and outside of that it is not always a viable option.
To consolidate several servers into one, one uses software to emulate a PC. Several PCs, actually. These emulated, or virtual, computers run their own operating system and applications completely independent from each other. For instance, let's say you have an older program that runs on Windows 2000 Server but not Windows Server 2003, another program that requires Windows Server 2003, and yet another that runs only on UNIX. You could run them all on one physical server by creating virtual servers for the Windows 2000 Server, Windows 2003 Server, and UNIX machines, as in this basic example:
Each virtual server thinks it has its own CPU, memory, hard drive, and other hardware, but in reality is sharing that with other virtual machines.
Virtualization can work on desktops, too...it can be used to run an older operating system on a newer PC, for example, to allow older applications to work.
Single Point of Failure, But Easy Recovery
Running several virtual servers on one physical server, as in the illustration above, creates a single failure point that would affect all three virtual servers, if the physical server had a problem. There are two ways to counter this: either spend lots of money on redundant hardware that is fault-tolerant (offsetting some of the cost savings of having a single server), or plan to quickly move affected virtual PCs to a different physical server. Proponents say that is actually a strength of virtualization, since virtual servers can be moved so easily. This is even easier if the virtual "hard drives" are stored on a network storage device...the server image can be re-mounted and turned on within minutes. The IT department can therefore quickly get the affected servers running again on a spare physical server, and have time to properly diagnose and replace faulty hardware.
Scale To Save Power And Space
If a company has 100 servers, they can save a lot of space by consolidating. Energy costs are often reduced, in the form of less power usage as well as lower heat output (resulting in a lower air conditioning bill). A company with two servers won't achieve that scale, however. Often, consolidating servers means overall utilitization increases, meaning that two servers that are each idle 80% of the time can both run on one physical server with headroom to spare. Companies that need to run different software on different shifts can simply shut one virtual server down and start another up, using the same hardware.
Running virtual servers adds complication. If the scale is not there, the benefits may not outweigh managing this extra layer of software. However, sometimes the fast recovery time above is benefit enough.
When Virtualization Works For Smaller Businesses
ITS feels the main benefit to smaller businesses lies in the speedy recovery time. If a company has servers that needs to stay running to keep the business operating, there are basically two ways to accomplish that. One is to set up a server "cluster" that forces multiple servers to work together, and if one fails the others pick up the slack.
Running the servers as virtual machines, by contrast, a company can set up the hard drives to be on high-availability network storage. Then if a physical server does fail, the virtual servers that were running on it can be started on another physical server and run there, potentially resulting in downtime of a few minutes, versus several hours to repair the original server. This approach isolates the servers' disk storage from the hardware on which it is running, adding flexibility.
Another use of virtual servers is to save on hardware costs. Say a client has Microsoft's Small Business Server to save money on Microsoft Exchange liceses, but wants remote users to log in using Terminal Services. SBS does not support remote workers, but one can run the regular Windows 2003 Server in a virtual machine on the SBS server, and have remote users connect to it. That saves on hardware costs and avoids the expense of a second server computer that will be lightly used.
Naperville, IL 60563