Server virtualization is one of those rare technologies that sounds too good to be true, but it’s real. Its earliest use was to consolidate underutilized server hardware onto a smaller number of machines. Since those early days, it has grown into a multipurpose solution that enables greater reliability, improved management, and other benefits that make it an all-but-indispensable tool for enterprise datacenter administrators.
The rocket science that makes virtualization work is as easy to summarize as, well, a rocket. To use an oversimplified definition, a virtual server mimics, using software alone, the behavior and capabilities of a stand-alone computer.
The nomenclature of virtualization is simple. The bottom of the software stack is occupied by a single instance of an ordinary operating system that’s installed directly onto the server hardware. Above that, a virtualization layer handles the redirection and emulation that make up the virtual computer. The combination of these two lower layers is referred to as the host. The host provides the full workings of a familiar PC right down to its BIOS ROM, and it can spawn as many independent PCs -- using varying user-defined configurations -- as you choose.
As are physical servers, a virtual PC is useless until you install an operating system on it. The operating systems that you install on your virtual hosts are called guests. Installing a guest OS can be as easy as booting from the OS’s installation CD. It’s just like installing an OS on a PC, and in general, if you wonder how virtualization will behave, that’s the answer: Just like a PC.
In fact, in an all-Windows environment, it’s easy to lose your place: Are you looking at your Windows host OS or at one of the four Windows guest OSes you just installed? You might get confused, but your guest OSes and their applications never do. Each guest OS believes it has the whole machine to itself. And, in a sense, it does.
Operating systems and applications running on virtual servers don’t have direct control over resources such as memory, hard drives, and network ports. Instead, the VM that sits beneath the OS and applications intercepts requests for interaction with hardware and handles them as it sees fit.
The real mindblower that turns this technology into something close to magic is that a world-class virtualization solution such as VMware ESX Server can synthesize an entire hardware configuration that has little resemblance to the underlying hardware. For example, the host might simulate the initialization process of a SCSI controller to the last detail, convincing the guest OS that this initialization is being performed even when no physical SCSI controller exists. It can make IDE drives look like SCSI drives, convert network shares into locally attached storage, turn one Ethernet adapter into several, and create gateways between older operating systems and unsupported modern hardware such as Fibre Channel adapters. You build your own servers that precisely fit the needs of your applications, but you use a mouse instead of a screwdriver.