Sitting at the core of virtualization is a well-known but little-discussed technology called the Hypervisor. The hypervisor is a layer of software which enables single hardware to host multiple, isolated virtual machines. It also helps with the management of those virtual machines. But before we talk about how the hypervisor works, the types of hypervisors and the benefits of this technology, let’s put some basic definitions in place. We’ll start with a technology that is tied very closely to hypervisors – virtualization.
What is virtualization?
Virtualization is the creation of a “virtual” form of a resource, such as a server, a desktop, an operating system, storage space, network or files. With virtualization, traditional computing is transformed, as these resources become scalable as per a client or organisation’s needs. Virtualization has been around for decades and is now split into three distinct types – Operating System (OS) virtualization, hardware virtualization and server virtualization.
Virtualization is used to consolidate workloads, systems and multiple operating environments on one single physical system. Essentially the underlying hardware is partitioned, and each partition runs as a separate, isolated Virtual Machine – which has its own Operating System. Now, this is where the hypervisor comes in.
What is a hypervisor?
The function of partitioning, or more specifically, abstracting and isolating these different OS and applications from the underlying computer hardware is what the hypervisor does. Therefore, it wouldn’t be incorrect to say that virtualization is enabled by the functions of the hypervisor.
What this means is that the underlying hardware (which is known as the host machine) can independently operate and run one or more virtual machines (known as guest machines). The hypervisor also helps manage these independent Virtual Machines by distributing hardware resources such as memory allotment, CPU usage network bandwidth and more amongst them. It does this by creating pools of abstracted hardware resources, which it then allocates to Virtual Machines. It also can stop and start virtual machines, when requested by the user.
Another key component of hypervisors is ensuring that all the Virtual Machines stay isolated from others – so when a problem occurs in one Virtual Machine, the others remain unaffected. Finally, the hypervisor also handles the communication amongst Virtual Machines over virtual networks – enabling VMs to connect with one another.
How does a hypervisor work?
To understand how hypervisors work, it’s important to understand – what are the types of hypervisors? How do they work? What is the difference?
There are 2 types of Hypervisors. They’re also referred to as Native or Bare Metal Hypervisors (Type 1) and Hosted Hypervisors (Type 2).
Type 1 Hypervisors:
Type 1 hypervisors run on the host machine’s hardware directly, without the intervention of an underlying Operating System. This means that the hypervisor has direct hardware access without contending with the Operating System and drivers.
Type 1 is widely acknowledged as the best-performing and most efficient hypervisors for enterprise computing. The ability to directly assign resources makes these hypervisors more scalable, but the advantages go further than that:
- Optimisation of Physical Resources: Organisations often burn funds quickly by buying separate servers for different applications – an endeavour that is time-consuming and takes up data centre space. With Type 1 hypervisors, IT can utilize server hardware, which frees up data centre costs and real estate and cuts down on energy usage.
- Greater Resource Allocation: Most Type 1 hypervisors give admins the opportunity to manually set resource allocation, based on the application’s priority. Many Type 1 hypervisors also automate resource allocation as required, allowing resource management to be a dynamic and customised option.
The best-known examples of Type 1 hypervisors are VMware’s ESXi and Microsoft’s Hyper-V.
Type 2 Hypervisors
Typically, these hypervisors are built on top of the Operating System. Because of its reliance on the host machine’s underlying Operating System (in direct contrast to Type 1), it is referred to as “hosted hypervisor”. The hypervisor runs as an application within the Operating System, which then runs directly on the host computer. Type 2 hypervisors do support multiple guest machines but are not allowed to directly access the host hardware and its resources. The pre-existing Operating System manages the calls to the CPU for memory, network resources and storage. All of this can create a certain amount of latency.
However, this is only the case for more complex and high-performance scenarios. Type 2 hypervisors are still popular home and test labs. Furthermore, Type 2 hypervisors come with their own set of benefits, like:
- Type 2 Hypervisors are much easier to set up and to manage as you already have an Operating System to work with.
- It does not require a dedicated admin.
- It is compatible with a wide range of hardware.
Examples of type-2 hypervisors include Oracle Solaris Zones, Oracle VM Server for x86, Oracle VM Virtual Box, VMware Workstation, VMware Fusion and more.
KVM
KVM (Kernel-based Virtual Machine) a popular and unique hypervisor – seeing as it has characteristics of both Type 1 and Type 2 hypervisors. This open sourced virtualization technology is built into Linux, and more specifically turns Linux into a hypervisor.
To be clear, KVM is a part of the Linux code, which means it benefits from every Linux innovation or advancement, features and fixes without additional engineering.
KVM converts Linux into a Type-1 (native/bare-metal) hypervisor. It is a secure option, that gives you plenty of storage, hardware support, memory management, live migration of your VM (without any service interruption), scalability, scheduling and resource control, low latency and greater prioritization of apps. KVM also creates more secure and better isolated Virtual Machines, while ensuring that they continue to run at peak performance. Excited to use all of these features? Well, when you sign up for a Linux VPS Hosting plan with us, KVM will automatically become a part of the packages you create. Check out our array web hosting packages, here.