Saturday, March 22, 2008

Virtualization - definition, methodologies and utilization


  • From virtualization wiki
"[Virtualization is] a technique for hiding the physical characteristics of computing resources from the way in which other systems, applications, or end users interact with those resources. This includes making a single physical resource (such as a server, an operating system, an application, or storage device) appear to function as multiple logical resources; or it can include making multiple physical resources (such as storage devices or servers) appear as a single logical resource."

  • From webopedia:

virtualization means to create a virtual version of a device or resource, such as a server, storage device, network or even an operating system where the framework divides the resource into one or more execution environments.

Three main methodologies used for providing virtualization:

  • System emulation:

The execution environment is called a virtual machine and it emulates all the hardware resources. This emulation layer in turn uses the real hardware resources from the host. This enables the emulator to run a guest operating system without any modifications, as the guest OS can use the hardware resources by going through the hardware emulation layer, instead of the real hardware. The VMM executes the CPU instructions that need more privileges than are available in the user space. This approach is followed by products such as VMware (http://vmware.com/), Microsoft Virtual PC (http://www.microsoft.com/windows/products/winfamily/virtualpc/default.mspx), and Parallels (http://www.parallels.com/).

  • Paravirtualization:

There is no hardware emulation. The operating system that runs on a guest needs to be a modified version that is aware of the fact that it is running inside a hypervisor. This cuts down the number of privileged CPU instructions that need to be executed, and as there is no hardware emulation involved, the performance is much better and closer to native speeds. This is the technique used by Xen (http://www.cl.cam.ac.uk/research/srg/netos/xen/) and User-Mode Linux (http://user-mode-linux.sourceforge.net/).

  • Operating System level virtualization:

Each guest instance is isolated and runs in a secure environment. However, you can execute only multiple instances of guests that run the same operating system as the host. If the host operating system is FreeBSD, you can run only multiple instances of FreeBSD. This is the approach used by the FreeBSD jails (http://www.freebsd.org/) and Solaris10 zones (http://www.sun.com/software/solaris/).


Virtualization is highly utilized and visible in three areas of information services, server virtualization, network virtualization and storage virtualization ..

  • Server virtualization:
It is the abstraction of server resources. The virtual server includes the number and identity of individual physical servers, processors, and operating systems from server users. The intention is to shield the user from having to understand and manage complicated details of server resources while increasing resource sharing and utilization and maintaining the capacity to expand later. The example could be deployment of various business applications on server racks and deployment user has to remember all the server ipaddresses,available ports etc.

  • Network virtualization
it combines the existing and the available resources in a network by splitting up the available bandwidth into channels. Each channel is independent from the others. Each of these channels can be assigned (or reassigned) to a particular server or device in real time. virtualization disguises the true complexity of the network by splitting it into manageable modular chunks.

  • Storage virtualization:
It is the pooling of physical storage from multiple network storage devices into what appears to be a single storage device that is managed from a central console. Storage virtualization is commonly used in storage area networks (SANs).

Predications about offerings and solutions:
Virtualization: Desktops The Next Wave Desktop virtualization enables solution providers to change the kinds of conversations they're having with customers
By Joseph F. Kovar, ChannelWeb
6:00 PM EDT Fri. Mar. 14, 2008
From the March 17, 2008 issue of CRN

Top Choices PRODUCTS


1 Server hosted virtualization
2 Virtual desktop PCs
3 Hypervisor-based server virtualization
4 Storage virtualization software
5 Processors optimized for virtualization (AMD (NYSE:AMD) Opteron, Intel (NSDQ:INTC) Xeon)


1 Server consolidation
2 Disaster-recovery solutions
3 Storage virtualization
4 Network virtualization
5 Testing and training environment solutions



1.Introduction to Virtualization

Introduction to Virtualization presentation was created for technical and non-technical audience with no or small knowledge of virtualization technologies.

In 10 minutes you'll have an overview of problems modern virtualization technologies can solve and what alternatives the market is offering today.

btw, you can even download the video for later viewing here http://www.virtualization.info/webcasts/WhatisVirtualization.swf

2. virtualization WiKi

3. virtualization
"The only online dictionary and search engine you need for computer and Internet technology definitions."

4. XenExpress tutorial: Introduction and installation

5. VMWorld 2008 (Europe),2007 to 2004 Free Sessions and Labs

This has free keynotes, sessions videos/mp3 as well as labs pdf. very interesting collection.

6.Xen and the Art of Virtualization

7. More Virtualization Resources:

This list is by no means complete. Please feel free to add your favorite virtualization engines here in comments.

a. OPEN Source

i.qemu - open source processor emulation

QEMU is a generic and open source machine emulator and virtualizer.

When used as a machine emulator, QEMU can run OSes and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performances.

When used as a virtualizer, QEMU achieves near native performances by executing the guest code directly on the host CPU. A host driver called the QEMU accelerator (also known as KQEMU) is needed in this case. The virtualizer mode requires that both the host and guest machine use x86 compatible processors.

Xen™ is a virtual machine monitor for x86 that supports execution of multiple guest operating systems with unprecedented levels of performance and resource isolation. Xen is Open Source software, released under the terms of the GNU General Public License.

b. VMWare

VMWare is the pioneer in virtualization technology. They have tons of virtual appliances and free tools to play with them. Please visit VMWare downloads sections to download VMWare server (Includes Drivers & Tools and Open Source ) and VMWare Player.

c.Microsoft Virtual PC

Microsoft has caught up with virtualization very fast and has great offerings available as multiple versions of Microsoft virtual PC available for its windows product line. To learn more about Microsoft and virtualization, please visit the Virtualization Web site, or the Virtualization TechCenter.

Windows Server 2008 Hyper-V, the next-generation hypervisor-based server virtualization technology, allows you to make the best use of your server hardware investments by consolidating multiple server roles as separate virtual machines (VMs) running on a single physical machine. Microsoft has reached another key milestone in the development of Hyper-V, with a feature-complete version now available for download as a release candidate (RC).

d. Citrix XENserver

e. Video: Intro to Novell SuSE XEN Virtualization

more to come...soon...

No comments: