ited to running on single-processor hosts and cannot support symmetric multiprocessing (SMP).
SMP was introduced on RISC platforms, such as Sun Sparc and
DEC Alpha chipsets, before being adopted on the x86 Intel Xeon and
AMD Athlon processors. SMP allows multiple, identical chipsets to
share one memory bank.
Instructions can be shared among the processors or isolated to a
dedicated processor on the system. The system can share a workload,
and with increased efficiency. A variation of SMP is AMD’s Opteron
technology, which allows dual-processor chips. The Opteron uses
DDR SDRAM memory dedicated to each processor, as opposed to a
single shared memory bank. The multiprocessing nature of numerous
virtual machine guest servers on one host makes dual-core Opteron
chips an attractive platform.
Paravirtualization is a variant of full operating system virtualization. Paravirtualization avoids “drawbacks of full virtualization by presenting a virtual machine abstraction that is similar but not identical
to the underlying hardware” [ 18]. This technique allows a guest operating system to be “ported” through a special API (application programming interface) to run. The Xen paravirtualization research
project, at the University of Cambridge, is a virtual machine monitor
(hypervisor) that allows commodity operating systems to be consolidated and effectively mobilizes guests across physical devices. Xen currently supports only open source guest systems, though a Windows XP
port is being developed. Denali is another paravirtualization implementation, but it requires significant modification to host system binaries and focuses on high-performance virtual machines.
EMC’s VMWare technology is the market leader in x86 virtualization technology. VMWare ESX server uses a special hypervisor to
“dynamically rewrite portions of the hosted machine code to insert
traps wherever VMM intervention might be required” [ 1]. The
VMWare solution is more costly, but it provides a robust management
console and full-virtualization support for an array of guest operating
systems including Solaris, Linux, Windows, and DOS.
A recent Gartner survey revealed that “less than one-quarter of enterprises use virtual machines. However, more than 70 percent say they
plan to test them in the near future” [ 12]. Data center floor space and
rack space are prime real estate in computing environments. Cooling
and electricity costs have risen in recent years. Infrastructure managers are looking to maximize the investment in existing computing
power while keeping server sprawl and overhead costs in check.
Virtual servers generate hardware cost savings by allowing devices
to be used to their full potential. Most distributed computing environments underutilize server capacity. Estimates for distributed,
Windows-based servers indicate average capacity of 8 to 12 percent;
UNIX servers use 25 to 30 percent of their capacity on average [ 3].
Virtual server technology unlocks unused capacity and allows the
CPU, memory, disk, and controllers to be maximized for each physical device. Based on performance measurements, testing, estimates,
and trial and error, any number of virtual servers can be added to a
physical device, thereby increasing server utilization to sustainable
levels. Instead of purchasing expensive servers with unused or excess
capacity, a new virtual machine could be created for an application.
Maintenance costs are avoided on the idle servers, and floor space is
freed for virtual server hosts. A manageable growth plan can be created to add virtual servers, host servers, and related services.
The cost to implement virtual machines has significantly decreased.
Recent virtual machine monitors, hypervisors, and paravirtualization
tools make it easy to create virtual machine instances, instead of developing virtual machine code. The 1980 paper “A Virtual Operating System” identifies two costs to implement virtual machines: cost to write virtual machine software and implementation costs. The estimated cost of
labor to develop the initial virtual machine monitor was eight to ten person-months and an estimated four person-months to port the entire system [ 7]. With current virtual machine monitors, an engineer can have an
Oracle 10g cluster hosted on Red Hat Enterprise Linux running within
minutes—basically, the amount of time it takes to download the binaries.
While the development and implementation costs of virtual
machines are significantly less today than in 1980, “A Virtual Operating
System” touches on another benefit of virtual machines: migration
costs. Traditional systems are tied to server or desktop hardware. The
life expectancy of servers is typically three to five years. When server
technology becomes obsolete, the data must be migrated to a new platform, and applications must be reconfigured in the new environment.
Worse, if the equipment is leased or acquired under a capacity services
agreement, large scale system migrations must occur at the end of the
term in order to avoid contract penalties. Virtual machines make those
transitions easier. VMWare offers a migration tool called P2V, physical
to virtual machine, which helps engineers move from legacy environments to virtual servers. Platespin Ltd. offers a flexible suite of tools to
automatically migrate between virtual and physical machines (and
back again), dynamically reallocate disk space, network configuration,
unique identifiers, and other configuration settings. In contrast to traditional standalone systems, migrating virtual machines from one host
platform to another host platform is relatively simple, in terms of configuration, man-hours, and resources required.
Virtual servers can provide opportunities for software consolidation
and reduced licensing costs. A Forrester study concludes Windows
licenses and maintenance costs total $5,800 per year. Adapting to new
virtual machine technology, many vendors have changed their licensing models to a “cost per instance” model instead of the “cost per
Saving licensing fees when migrating from physical to virtual
servers may not be effective under the cost per instance model. For
example, Microsoft recently announced its new licensing model, noting that “per-processor licensed software will be licensed by virtual
processor when used in a virtual OS environment and by physical
processor when run in physical OS environments” [ 12]. However, virtual servers offer the ability to consolidate similar systems and software
packages on common platforms to recognize license cost savings.
Consolidation is a key driver for many organizations implementing
virtual machine technology. Nearly 60 percent of IT managers are
considering consolidation [ 11] projects. Consolidation efforts represent an attempt by IT management to capture cost savings by retiring
or decommissioning legacy devices and standardizing support
processes. Consolidation projects present the opportunity to minimize the number of physical devices as well as software licenses, various packages, and management tools.