Defining Virtualization in a Hybrid Cloud Environment
Virtualization separates resources and services from the underlying physical delivery environment in the hybrid cloud. With virtualization, you can create many virtual systems within a single physical system. A primary driver for virtualization is consolidating servers, which provides organizations with efficiency and potential cost savings.
Characteristics of virtualization
Virtualization has three characteristics that make it ideal for cloud computing:
Partitioning: In virtualization, many applications and operating systems are supported in a single physical system by portioning (separating) the available resources.
Isolation: Each virtual machine is isolated from its host physical system and other virtualized machines. Because of this isolation, if one virtual instance crashes, the other virtual machines aren’t affected. In addition, data isn’t shared between one virtual container and another.
Encapsulation: A virtual machine can be represented (and even stored) as a single file, so you can identify it easily based on the services it provides. For example, the encapsulation process could be a business service. This encapsulated virtual machine could be presented to an application as a complete entity. Thus, encapsulation could protect each application so that it doesn’t interfere with another application.
Here’s a nontechnical analogy to help you think about virtualization. Some experts have likened virtualization to an apartment building. Individual apartments share a building. They are each isolated, but they share utilities in a more efficient model than a house might.
In server virtualization, one physical server is partitioned into multiple virtual servers. For example, the hardware resources of a machine — including the random access memory (RAM), CPU, hard disk, and network controller — can be virtualized into a series of virtual machines that run their own applications and operating system. A thin layer of software is actually inserted onto the hardware that contains a virtual machine monitor, or hypervisor.
Using a hypervisor in virtualization
System virtualization can be approached through hardware partitioning or hypervisor technology. Hardware partitioning subdivides a physical server into fractions, each of which can run an operating system. Although this model supports consolidation of hardware, according to experts, it doesn’t have the full benefits of resource sharing and emulation that hypervisors do.
A hypervisor allows multiple operating systems to share a single host. It knows how to act as a traffic cop to make things happen in an orderly manner. The hypervisor sits at the lowest levels of the hardware environment and uses a thin layer of code in software to enable dynamic resource sharing. The hypervisor makes it seem like each operating system has the resources all to itself.
Because you need to support many different operating environments in cloud computing, the hypervisor becomes an ideal delivery mechanism. The hypervisor lets you show the same application on lots of systems without having to physically copy that application onto each system.
One twist: Because of the hypervisor architecture, it can load any (or many) different operating systems as though it were just another application. So, the hypervisor is a very practical way of getting things virtualized quickly and efficiently.
You need to understand the nature of the hypervisor. It’s designed like a mainframe OS rather than like the Windows OS. The hypervisor, therefore, schedules the access that guest operating systems have — the CPU, memory, disk I/O, and other I/O mechanisms. With virtualization technology, you can set up the hypervisor to split the physical computer’s resources. Resources can be split 50:50 or 80:20 between two guest operating systems, for example.
The beauty of this arrangement is that the hypervisor does all of the heavy lifting. The guest operating system doesn’t care (or have any idea) that it’s running in a virtual partition; it thinks it has a computer all to itself.
There are basically two types of hypervisors:
Type 1 hypervisors run directly on the hardware platform and thus achieve higher efficiency.
Type 2 hypervisors run on the host operating system. They are often used when a broad range of I/O devices needs to be supported.