Hardware and OS Virtualization: Multiple Solutions May Be the Answer

Finding the appropriate virtualization technology to fit an organization's requirements depends on the needs of the environment, combined with the feature sets of each virtualization architecture. Oftentimes, organizations find that a single approach doesn't complete the picture and multiple virtualization technologies are required.

The two basic server virtualization architectures, hardware and operating systems (OS), are each designed with different workloads and environments in mind. Some environments are more suited to OS virtualization, specifically those with naturally high levels of homogeneity or those with requirements for high-performance or consolidation ratios. Other environments, where varying OS support is a high priority, may work better with hardware virtualization.

It's All About the Layer
When it comes to virtualization products and solutions, it's all about the layer. The "layer" refers to the level at which the virtualization occurs. Hypervisor-based hardware virtualization solutions include their layer of processing either above an existing operating system or directly on top of the hardware, an approach known as "bare metal."

Putting the hypervisor in close proximity to the physical hardware enables it to robustly support multiple operating systems on a single physical host. Those individual virtual machines are fully independent from each other and don't rely on any other machines for their composition or processing.

This complete isolation from individual virtual machines is hardware virtualization's greatest strength and greatest area of management complexity. As virtual machines are effectively segregated units, they must be managed similarly to segregated physical machines. Patching, software management, resource allocation, and security are all horizontally scaled as the number of virtual machines increases. This can lead to a virtual "sprawl" of devices to manage as the environment scales. In effect, the same level of management effort is required as compared with physical machines because each virtual machine is managed individually.

Compare this scenario to what is experienced in environments that leverage OS virtualization, or containers, where the layer operates atop an existing full operating system, such as Microsoft Windows or Red Hat Linux. Rather than making use of a hypervisor layer, it uses the virtualization layer as a mechanism for extending the resources of a single operating system to multiple, isolated, additional virtual systems that all reside on the same host.

Although a fully independent computer, an individual container is often made up of files similar to those that make up its hosted OS. Individual files, registry settings, and libraries within the container are updated throughout the computer's lifespan, creating uniqueness between the container and its host. Thus, running 25 containers atop a single host creates 25 individual machines, even though those machines share many of the same files. When the files on an individual container change, the file is changed for that container only.

With some OS virtualization products, server templating is an additional advantage that reduces the overall management cost associated with a horizontally scaled OS virtualization environment. With this technology, a template is the collection of links residing in a container that points back to the original application or OS. The linkage between the host and its containers means that any update of files on the host has the ability to directly impact all residing containers. Patching the host can immediately patch all the containers. Adding an application to the host and creating a corresponding template can make it simple to deploy and rapidly update that application in selected containers.

Multiple Solutions May Be the Best Answer
Selecting a single one-size-fits-all solution may not be the best answer, as different virtualization solutions work best with different types of workloads. Finding the correct technology that matches the needs of the computing environment is critical to getting optimal results.

In some situations the environment may require operating systems of different types to work together in supporting a network service - for example, a Linux-hosted database that works with a Windows-based web server. The performance of that service is better when its servers are co-located onto a single virtual host. This situation might work best with a hardware virtualization solution like VMware Virtual Infrastructure or Parallels Server.

In another example, a different environment might be focused on a single operating system. The individual configuration of servers in this environment may be similar to each other - for example, a code development activity that requires multiple testing environments or a hosted desktop environment. These environments require high consolidation ratios and the lowest possible management overhead due to similar composition and high turnover. A situation like this might work best with OS virtualization like Parallels Virtuozzo Containers.

The two technologies can complement each other well.

Similar, But Different
For hardware and operating systems, some of the mechanisms used to facilitate performance management are very similar. The OS virtualization and hardware virtualization solutions both have the ability to adjust physical resources assigned to virtual machines. Virtual machines can be assigned quantities of memory, processor, networks and disk resources as necessary. However, the resource assignment between the two technologies is very different.

With hardware virtualization, a limitation associated with the hardware virtualization architecture means that only a preconfigured quantity of resources can be assigned to virtual machines. With OS virtualization, there are no limitations. Any hardware resources available to the host can be made available to the residing virtual machines. This results in a highly optimized use of available resources and the potential for high efficiency in resource use.

In addition, manipulating the level of resources with OS virtualization can be done without an impact to the virtual machine. Doing the same with a hardware virtualization often requires a reboot of the virtual machine, enhancing the ability to dynamically adjust resources as necessary to support the needs of the environment.

With OS virtualization's high level of resource optimization, it is well suited for traditionally heavy workloads like e-mail systems and databases.

Hardware virtualization has an interface for the centralized management of all virtual machines on all physical hosts within the datacenter. This single, unified interface allows for virtual machines to be managed from one place, no matter where they are hosted or on which operating system they run. Intrinsic to the interface is the ability to schedule and script management of virtual machines.

OS virtualization has similar functionality to hardware virtualization, and also extends to directly manage the internal configuration of each residing container.

Similarly, containers can be backed up, re-configured, created, templated, and have their configurations changed as one through this same interface. In environments where management of individual machine configurations is important and desired through the same interface as management of virtual machine configurations, these capabilities can enhance overall manageability.

Above all, when using OS virtualization, there is only one operating system to update and manage. The residing virtual machines, though segregated, are components of the host operating system.

Virtualization Is Not Just a Fad
The drive toward virtualization is a drive toward more efficient use of available resources. The needs of a computing environment will determine which virtualization solution is appropriate.

Hardware virtualization integrates multiple operating systems into a single platform. OS virtualization incorporates high levels of consolidation and in-machine management as part of the platform. Both can successfully support virtual machines and operating systems of many types, including Microsoft Windows and various versions of Linux.

The most important facet of this determination is the understanding of how each virtualization concept functions, the features it provides, and where it can provide the best results for your virtualization and consolidation project. As with most choices, one size does not fit all.

© 2008 SYS-CON Media