Cloud 101: Flavors of hypervisors

TwitterFacebookGoogle+LinkedInRedditStumbleUpon

Virtualization, as we know in information technology (IT), is not a new technology. Its history goes back to the early 1960s when IBM invented virtualization to run multiple software contexts on the IBM mainframe. In the 1960s no one knew that this technology would be of immense importance to IT after 50 years.

Virtualization has created a revolution in the IT landscape. Simply put, virtualization is a process of abstraction of computing resources (CPU, memory, storage, network and so on) from users and applications. Although virtualization is not a requirement for cloud computing, cloud computing offerings without virtualization are not very common. In this blog post, we’ll see how virtualization is achieved by means of a hypervisor or virtual machine manager (VMM).

I would recommend that those who are new to hypervisor technology read an interesting blog entitled “What is a hypervisor?” by David Beaumont. A hypervisor or VMM is a virtualization software that allows multiple operating systems (OS) to share the resources of the same physical server. This physical server is known as the host server. We denote the operating systems as the guest operating systems. Virtual machines (VM) are software-based abstractions of the hardware. As VMs are decoupled to the underlying hardware, it becomes very easy to move VMs from one physical server to another. Cloud computing relies heavily on this feature because of the distributed nature of computing environments and operations.

Hypervisors can be categorized into two main types. The first one is called a native, bare metal or type 1 hypervisor. The second type is called a type 2 or hosted hypervisor.

types of hypervisorsFigure 1: Types of hypervisors (Image source: Infrastructure as a Service)

As we can see in figure 1, a bare metal hypervisor runs directly on the physical server. It has control over the server’s resources and can allocate resources to guest operating systems or VMs as required. VMs run on top the bare metal hypervisor. Finally, the applications run on the VMs like any other operating systems. Normally applications are not aware of the virtualization. The underlying hardware is abstracted from the applications running on VMs. Examples of bare metal hypervisors are IBM z/VM, Microsoft Hyper-V, VMWare ESXi and Citrix XenServer. It is important to remember that there are two layers of software stack in a bare metal hypervisor.

On the contrary, a hosted hypervisor has three layers of software stack. As indicated in figure 1, a host operating system runs directly on the physical server. It is known as level 1. A hypervisor sits in level 2 on top of the host operating system. As we can see in figure 1, both the hypervisor and traditional non-virtualized applications run on a host operating system as level 2 software. Finally, the VMs run on top of the hypervisor at level 3. VMs contain guest operating systems and applications running on the guest OS. Like a type 1 hypervisor, applications running on guest operating systems in type 2 hypervisors are also not aware of virtualization. Some examples of type 2 hypervisors are VMware Server, Oracle VM VirtualBox and Microsoft Virtual PC.

nested hypervisorsFigure 2: Nested virtualization and hypervisors (Image source: Nested virtualization for the next-generation cloud)

We can see another variant of virtualization known as nested virtualization in figure 2. In this arrangement one hypervisor sits on top of a host hypervisor. This will provide a greater flexibility in the cloud, as VMs are totally decoupled from the host hypervisor.

I hope that this blog post has provided you with an overview of hypervisors. In my future blogs on hypervisors, I will present how hypervisors control data traffic between VMs. Leave a comment below or connect with me on Twitter @shamimshossain.

TwitterFacebookGoogle+LinkedInRedditStumbleUpon
Comments: 37
Shamim Hossain

About Shamim Hossain

Shamim is an experienced technical team leader and project manager leading a number of complex and global projects with involvement in the full project lifecycle ranging from planning, analysis, design, test and build through to deployment. He is an IBM Certified Cloud Solution Advisor and Cloud Solution Architect. As a Redbooks Thought leader and official IBM Cloud Computing and Smarter Computing Ambassador, he publishes regularly on http://thoughtsoncloud.com and http://www.smartercomputingblog.com. He holds a Master of Telecommunications Engineering and a Bachelor of Computer System Engineering (First class honours). His expertise and interests include different areas of cloud computing, mobile computing, optical fibre communications, broadband, Internet engineering and the Internet of Things. He is a published author. He co-authored a book entitled “Cloud Computing Service and Deployment Models: Layers and Management” by IGI Global.
This entry was posted in Cloud 101 and tagged , , , , , , . Bookmark the permalink.

37 Responses to Cloud 101: Flavors of hypervisors

  1. I love this, Shamim "Virtualization, as we know in information technology (IT), is not a new technology. Its history goes back to the early 1960s when IBM invented virtualization to run multiple software contexts on the IBM mainframe. In the 1960s no one knew that this technology would be of immense importance to IT after 50 years". Thank you for the blog.

    • Thanks for your kind words! I am glad that you liked it. It is fascinating to find that IBM has always been at the technology forefront. Have a nice weekend!

Comments are closed.