Wednesday, June 12, 2013

Hyper-V and VMware vSphere - Architecture and hypervisor footprint differences



Some of the most obvious differences between VMware and Hyper-V lie in the product architecture and footprint.  Both Microsoft Hyper-V and VMware are using a virtualization architecture named TYPE 1VM to implement their server virtualization technologies, but the Hypervisor design implemented is completely different.  Before to go in deep on this topic, considering that the classification of specific hypervisor implementations as Type 1 or Type 2 is not always clear cut I will before explain the differences:

  • Type 1 (or native, bare metal) hypervisors run directly on the host's hardware to control the hardware and to manage guest operating systems.  VMware Vsphere and Hyper-V are example of Type 1 hypervisor. (On the architecture front, Hyper-V is often mistaken for what’s known as a Type 2 hypervisor when in reality is TYPE 1)
  • Type 2 (or hosted) hypervisors run within a conventional operating system environment. The main difference to consider is that with the hypervisor layer need to be considered as a second software level; guest operating systems run at the third level above the hardware. VMware Workstation and VirtualBox are examples of Type 2 hypervisors.

To summarize, Type 1 hypervisor sits directly atop the hardware and runs directly on it; a Type 2 hypervisor runs on another operating system, such as Linux, or Windows.


We will focalize on Type 1VM and for that reason we can analyse the two subcategories, where the differences between the two products lie: Monolithic Hypervisor Design and Microkernelized Hypervisor Design.  



  • Monolithic Hypervisor Design (used by VMware vSphere):  should be considered as one big program where process and memory management, interrupt handling and I/O communication, run in kernel space.  The advantage of being monolithic is it deals with resource management rapidly but it require more time during initialization.
  • Microkernelized Hypervisor Design (used by Microsoft Hyper-V):  the kernel take care only of the basic process and I/O control, the other system services has been moved in the user space in form of normal process (as so called servers).  Less initialization time is required but Microkernelized Hypervisor Design requires an operating system to be installed in the "Controlling Layer" before the "Hypervisor Layer" can operate.  




Both the designs have pros and cons and, but in my opinion, at present, vSphere 5 holds a considerable lead in features and performances. One of the main reason is that VMware ESXi inserts a robust virtualization layer directly on the server hardware for near-native virtual machine performance, reliability and scalability. VMware ESXi is a compact, hypervisor.  It is a fraction of the size of a general purpose operating system for unparalleled security and reliability.



Microkernel  Hypervisor is a new approach used  to implement an hypervisor (It should provide much more than Virtual machine) Monolithic Hypervisor is specifically designed for that scope.  It is a native solution that not requires operating system for controlling all the components of the virtualization product.  

 
This is also the primary reason for this significant space difference of the two hypervisor solutions.VMware vSphere Hypervisor installation requires only 144 MB of disk space; a Hyper-V installation requires a minimum of 3 GB for a Server Core installation.  Hyper-V relies on the installation of the general purpose Windows Server 2008 R2 operating system (when the Hyper-V role is enabled, the existing Windows instance becomes a virtualized root partition) while vSphere does not have such weight attached to it.

1 comment: