Database Reference
In-Depth Information
Virtualization
Very few subjects have been discussed as extensively in the last decade as virtualization. Unfortunately the hype
around virtualization makes it difficult to fully understand what it actually is. A multitude of terms exist, describing
different aspects of the same subject. Some examples include platform virtualization, operating system virtualization,
network virtualization, storage virtualization, server virtualization, and many more. Not all of these technologies
are relevant from a database administration point of view. This is why the following section will primarily focus on
platform virtualization. Platform virtualization is probably the best understood of all virtualization technologies. Even
if you have not used enterprise-grade virtualization software you may be familiar with desktop virtualization products.
Why has virtualization received so much attention? This requires a little bit of travel back in time. Virtualization
has been with IT professionals for a long time, and made its first appearance on IBM hardware in the 1960s. In the
next 50 years it did not receive widespread adoption. Before virtualization became a truly mainstream subject around
2005, many servers were oversized to deal with sudden peaks and expected workload growth. Administrators looking
at top , glance , nmon , and other utilities often showed that the systems were badly underutilized. Underutilized
systems are not only used inefficiently, but they still cost almost as much as fully utilized machines. Power, cooling,
and rack space are still required even if a server is running at 10-20% capacity.
When the IT industry became a lot more cost conscious it didn't take long for engineers to think of better ways of
utilizing machines and, as mentioned previously, platform virtualization received a lot of attention. Instead of just one
instance of an operating system to run on a physical server, engineers developed an abstraction layer, called a virtual
machine monitor or hypervisor. You see this layer in Figure 1-2 .
Figure 1-2. Simplified view on a virtualized system
Note
this section discusses enterprise-class virtualization only!
Platform virtualization is sometimes also referred to as hardware virtualization. The hypervisor is the only
software on the server with direct access to the hardware-processor, storage, and memory. It is responsible for
presenting virtual hardware to the virtual machines, or “guests,” executing on the server.
The hypervisor has to translate system calls issued by the guest operating system and executes them in a safe way
so as to ensure the guests can operate safely side-by-side on the same hardware. Early x86-64 hypervisors struggled
since many functions in the i386 instruction set were not easy to virtualize. As a result many instructions had to be
translated in software. This led to an overhead for fully virtualized hosts. The main x86-processor vendors tried to
address this problem by adding hardware support for virtualization. The Intel chips use an extension called VT-d
 
 
Search WWH ::




Custom Search