Hypervisor is a software layer that is used in creating, managing and deploying virtual machines on a single physical server. This is also referred to as a virtual machine monitor (VMM) and enables the running of multiple operating systems on a single physical hardware platform through providing an interface between the physical resources including CPU, memory and storage and the virtual machines. This is because virtualization is a standard practice in cloud computing, data centers and any other IT structures in enterprises.
Virtual Machine Creation: A hypervisor enables the establishment of several virtual machines whereby every virtual machine can have its own operating system and is not affected by others. These VMs can be tailored to a specific need and some of the features include the number of CPU cores, RAM, disc space and number of Network Interfaces among others.
Resource Allocation: The hypervisor at run time, assigns the physical resources of the host machine to the virtual machines. This involves controller of CPU time, memory and I/O operations. The hypervisor manages the resources and guarantee that the VMs get what they need without interference and at the same time, the system runs efficiently.
Isolation: Also it is of paramount importance for the hypervisor to ensure that each of the VM’s is installed in a way that does not interconnect or inter dependency with other VM’s. This is because even in a situation where one of the VMs undergoes a failure or is hacked the rest of the other VMs in the host will not be affected in any way. This isolation is very essential when it comes to security and stability in multi-tenant scenarios as is the case in this implementation.
VM Management: The hypervisor also has a set of control mechanisms and interfaces that are used to manage the VMs for instance; to start, stop, pause or even transfer the VMs between physical hosts. It also tracks the performance and health of each VM and offers information and management to the administrators of the virtual environment.
Live Migration: Most of the hypervisors have the capability of live migration of a VM, which means the running VM can be transferred from one physical server to another without shutting it down. This is very crucial in load sharing whereby the workload is partitioned among the available computers to get optimal results, system upgrading, and to reduce the effect of hardware failure.
There are two main types of hypervisors.
Hypervisors are a type of hypervisor that are installed directly on the hardware layer of the host machine without use of a host operating system. Due to the fact that they resides in the hardware tier, they are fast and provide optimal performance, thus suitable for enterprise and cloud environments.
Examples: Some of the well known ones include, VMware ESXi, Microsoft Hyper-V, Xen and KVM.
Advantages:
The second type of hypervisors are known as hosted hypervisors and they run on top of an underlying operating system. The hypervisor runs as an application on the host OS and VMs are processes in the same way as any other application. This type is quite simple to deploy and manage and can be considered to be less complex than Type 1 hypervisors but might be more costly.
Examples: Oracle VM VirtualBox, VMware Workstation, and Parallels Desktop.
Advantages:
Server Virtualization: Hypervisors have become popular in server virtualisation where a number of virtual servers are created on a single physical server. This enhances resource sharing, minimises on the cost of hardware, and lowers the degree of management. This allows the organizations to not only reduce the number of servers they use in their network.
Desktop Virtualization: Hypervisors are application that help in the management of desktop virtualization where one can have a number of operating systems on the same machine. It is quite useful for the developer, testers and IT professionals who need to work on different flavors of OS and configuration.
Cloud Computing: Hypervisors are key inside the clouds for assistance in development of instances that can be deployed easily, scaled up and also being monitored easily. The hypervisors are used by the public cloud providers such as Amazon Web Services (AWS), Microsoft Azure, and Google Cloud for providing IaaS.
Disaster Recovery: Hypervisors make disaster recovery easier through provision of ways of backing up, replicating, and restoring of VMs in the event of failed hardware or other forms of disruptions. This helps in the continuity of operations of business and reduce on the time that the business is not in operation.
Testing and Development: Developers and testers deploy hypervisors for making virtual platforms for testing of software, applications and operating system on which the host system will not be impacted in any way. This is particularly helpful in the assessment of the compatibility of a particular software in different systems.
Cost Efficiency: When virtualizing hardware, organizations can install several virtual machines on one physical machine and decrease expenses on hardware as well as increase the overall efficiency.
Scalability: Hypervisors enable one to easily increase or decrease the number of VMs in environments as this is simply a matter of adding or removing the VMs as the case may be, this is important in view of the fact that organizations are able to meet the dynamics of the market since they can easily adjust the number of VMs they have.
Flexibility: They are easily portable, can be backed up, and can be easily managed, which makes the IT environment to be quite dynamic.
Improved Disaster Recovery: It is easier and quicker to back up, replicate and restore VMs than physical servers hence improving on disaster recovery.
Performance Overhead: However, hypervisors when compared to bare metal offer some overhead as they run multiple Virtual Machines on the same host mainly because of Type 2 hypervisors.
Complexity: The main problem is that managing a large number of VMs and proper configuration, security, and monitoring are sometimes rather a time-consuming and advanced process which may need particular skills.
Security Concerns: However, hypervisors are capable of offering isolation and, therefore, loopholes in the hypervisor can expose several virtual machines to security threats.
In essence, a Hypervisor is a core element of a virtualization platform that provides an interface between the physical machine and one or more virtual machines in order to allocate the physical hardware resources. There are two main types of hypervisors: There are two types of vSphere: Type 1 (Bare-metal) and Type 2 (Hosted), each is used in different scenarios, has its benefits and issues. The hypervisors have become very important in modern computing scenarios for usage in server virtualization, cloud computing, disaster recovery among other uses. However there are some drawbacks associated with them, yet their advantages of cost, scalability and flexibility make hypervisors as the foundation of modern IT environment.