Printer Friendly

Hardware or OS virtualization software for servers? Server virtualization: the capability of partitioning a physical server into smaller virtual servers.

Server virtualization has recently been gaining greater attention by enterprise IT professionals. There's a good chance that you have come across someone using, promoting or writing about the wares of consolidating servers or adding virtualization capabilities to their enterprise. What has been missing from the conversation is the fact that there are generally two different approaches to server virtualization: hardware emulation (VMware and Microsoft) and OS partitioning (such as Virtuozzo and VServer). Each technology has its advantages, and each was developed to address particular IT organizational needs.

Hardware Virtualization

Hardware emulation or virtualization is currently the best known virtualization technology. VMware is well known and Microsoft has just introduced a similar technology, its Virtual Server solution purchased from Connectix last year. Hardware emulation technology creates a full emulation of hardware at the host OS level, usually running as a single process inside the host OS. Full emulation typically runs some part of the guest OS code on native CPU, but some privileged instructions are emulated and handled separately. In addition to CPU, the software has to emulate BIOS, video adapters, network adapters, storage and input/output devices to provide a normal environment for the guest OS operation. The extent of the emulation allows almost any existing OS to run inside the virtual environment. Each virtual environment (generic term used across all technologies for virtual machine, virtual server, and virtual private server or VPS) has an entire OS structure, keeping all software and processes completely isolated. The primary use of this technology has been to provide multiple different OS flavors on the same physical piece of hardware. Multiple OSes are, in particular, a requirement in development and testing scenarios, where engineers are developing software simultaneously on different operating systems.

[GRAPHIC OMITTED]

OS Virtualization

OS partitioning or virtualization is a newer virtualization technology offered by Virtuozzo, Zones in Sun's Solaris OS, and also open source projects such as VServer. OS virtualization technology leverages a single common OS and creates separate, isolated virtual environments on a single physical server to share hardware, licenses and management effort. Processes and software are kept separate when necessary to distinguish between different virtual environments, but the design intent is to share the same software (when appropriate) across virtual environments. The primary use of this technology is to deploy production application and data on live servers. Each server runs an OS and may run other similar OSes, but since most enterprise applications run on one of a few OSes this tends to not be a barrier for production servers.

Which is the Best Approach for Production Servers?

Most IT organizations are considering virtualization as an answer to controlling runaway IT infrastructure growth. In many cases organizations are considering technology that could create drawbacks in other areas such as server performance or failing to fully capitalize on other benefits of virtualization such as decreased management cost.

Examine the full emulation partitioning technology as a solution for server consolidation, as an example, for existing and/or future applications. The host structure itself provides some initial overhead and typically 20%+ of the RAM is reserved for server overhead to run the virtualization software. Full hardware emulation is designed to mimic hardware to make it flexible enough to run any OS and completely separate virtual environments but making it inflexible from resource control and allocation perspective.

The OS partitioning implementation was designed to solve the issues of production servers so the architecture and design fit the consolidation criteria well. Typically when applications are deployed, they are grouped on the same OS for ease of management, maintenance and performance. The common OS affords a much more efficient server resource design and smaller overhead allowing hundreds of virtual environments (VEs) to run well on a single physical server and share resources effectively. In addition to this flexibility, resource allocations for VEs can be changed in real time without a reboot or service interruption. The low system overhead, dynamic resource management and high performance make VEs nearly as scalable as the host server in its native format.

Other Considerations?

Technology aside, each of these software solutions comes with a different set of features and capabilities. Here are a few additional considerations that may help in making the correct decision on a software virtualization solution:

* What OS do you require? Many of theses solutions have limited OS support, and few have the ability to manage virtual environments across OSes from a single management console.

* How many different OSes will you place on a single server? The first part of this article described the two major virtualization technologies; hardware emulation allows multiple OSes while OS virtualization places a single OS on a server.

* How much resource flexibility is required for server resources? Would applications at peak loads benefit from additional resources? Would the ability to reassign resources without downtime or service interruption be beneficial?

* How virtual are the environments? Can the virtual environment be moved to another server with no or close to no downtime?

* Does the virtualization technology speed or ease provisioning time for both virtual environments and applications?

* Are there tools to help move existing servers into virtual environments?

* Do you have high-powered applications that will require assigning multiple CPUs to a single virtual environment?

* Does the virtualization software help administrators manage software and application patches and upgrades?

* Are there tools for virtual environment owners to have full control and management over the virtual environment without the support of the IT organization?

* Is there resource and accounting reporting information to facilitate charge backs to organizations? As companies attempt to move to a more utility computing model, virtualization and system resource allocation measurement are key enablers.

Conclusion

The two virtualization technologies were each built to meet the needs of a particular operational application. Hardware emulation virtualization was designed to allow multiple OSes to reside and operate independently on a single box, which solves a very important problem particularly for development and testing servers. OS virtualization was developed to allow many production servers to be consolidated onto a single server, its resource management and processing efficiencies are optimized to equal or surpass the performance of standalone servers.

It is likely that an IT organization's virtualization strategy will successfully incorporate both almost "complementary" approaches for different scenarios. Virtualization technology provides real benefits to IT professionals due to the enablement of lower costs, high flexibility, increased server uptime and more. Furthermore, hardware and OS virtualization are true contributing enablers to Utility Computing and Dynamic Datacenter visions which are now becoming planned and implemented more broadly.

[GRAPHIC OMITTED]
Technology Comparison For Production Servers:

 Hardware Virtualization OS Virtualization

Platform Support Broadest support for operating Broad support for
 system versions and types, Linux operating system
 including capability to and forthcoming
 flexibly mix and match them on support by Virtuozzo
 the same physical server. for the Windows
 platform but with
 inability to mix and
 match operating
 systems such as Linux
 and Windows on the
 same physical server.
Application Supports applications out of Supports applications
Support the box without modification out of the box without
 or reconfiguration. modification or
 reconfiguration.
Hard Drive Each server has a host OS and One single OS
 additional guest OSes, using environment exists on
 resources to create multiple a server, maximizing
 environments flexibly. system resources by
 sharing OS and
 application software
 as appropriate.
System Calls Most system calls or kernel OS virtualization
 access operations have shares a single kernel
 additional overhead; hardware for the host system
 emulation commands and and all VEs. VEs are
 exceptions processes are very isolated by additional
 CPU-consuming and add load access control
 to the memory and CPU. mechanisms inside the
 kernel which do not
 create overhead for
 the common code path
 of system calls.
Network Hardware emulation OS virtualization
Performance technologies make copies of makes the same number
 each packet. Delivery of of data copies that
 packets requires additional are made in the host
 context switches (TLB operiang system. VEs
 flushes), consuming CPU cycles add nearly no network
 and reducing the system overhead and do not
 performance. noticeably impact
 system performance.
Filesystem All common code and data is OS virtualization uses
 duplicated. Every virtual a copy-on-write file
 environment has its own copy system. Common data is
 of OS, code, and data. stored only once and
 is available to
 multiple environments.
Filesystem Each file operation copies OS virtualization uses
Performance data at least one additional a copy-on-write file
 time between the OS kernel, system and efficient
 host OS user space and the system call design
 guest OS kernel. The extra creates very small CPU
 copies cause even simple usage overhead. With
 operations to have higher CPU no additional data
 usage and reduced server copies made, VEs place
 performance. no noticeable overhead
 on CPU resources.
Filesystem The host and each guest OS OS virtualization
buffers/cache in each have a separate buffer places a single
memory and cache. The same data is instance of data and
 cached in the host system cache across the
 kernel and in each guest OS server, maximizing
 kernel that accesses the data, memory efficiency.
 unnecessarily duplicating
 data.
Memory Virtual environments created OS virtualization has
Management using hardware emulation very flexible memory
 technology are bound to its management. Memory
 assigned memory resources. resources can be
 Non-dynamic memory assignment "dedicated" to VEs in
 makes it very difficult for real-time to
 production servers with accommodate varying
 varying workloads to use work loads.
 system resources well.


Carla Safigan is senior product manager at SWsoft (Herndon, VA)

www.swsoft.com
COPYRIGHT 2005 West World Productions, Inc.
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2005, Gale Group. All rights reserved. Gale Group is a Thomson Corporation Company.

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Storage Management
Author:Safigan, Carla
Publication:Computer Technology Review
Geographic Code:1USA
Date:Feb 1, 2005
Words:1574
Previous Article:Take control of corporate IM: implement best management practices now!
Next Article:Storage virtualization, Part 1 of 3: delivering non-disruptive operations, flexibility and simplified management.
Topics:


Related Articles
Storage Virtualization--Strategic For SANs.
Virtualization: One Of The Major Trends In The Storage Industry -- What Are You Getting For Your Money?
Virtual Worlds: Virtualization Layers In The SAN.
Unisys: availability of VMware GSX Server on ES7000 servers.
Virtual storage and real confusion: a big disconnect between what vendors offer and what users want.
Virtualization's new voice: virtualization plays an important role in an overall data management strategy.
Virtual machines: they're the way forward to platform independence.
Beyond storage consolidation: the benefits of iSCSI SANs.
Real world virtualization: realizing the business benefits of application and server virtualization; Dealing with virtualization challenges.
Hitachi Provides Unique Server Virtualization System on Its Integrated Service Platform.

Terms of use | Copyright © 2017 Farlex, Inc. | Feedback | For webmasters