Understanding Virtualization and Hypervisors
What is Virtualization?
Virtualization is the process of converting physical IT resources to the virtual IT resources like servers to Virtual machines, storage to virtual storage and networks to virtual networks.
We can also define Virtualization as an Abstraction Layer where it will abstract all physical resources.
Let’s understand it in more detail. Traditionally in a server architecture, there will be a physical hardware on which an OS will be hosted and on which applications will be installed. If we want more than one machine we need to buy that many hardware and host an OS and on which our applications should install and this is a very expensive process and more maintenance. Instead, why can’t we have a high-end hardware with huge compute and storage power on which we can host more than one OS? Yes, it is possible and this the process we called it as Virtualization.
On a Hardware, there will be another layer we called it as Virtualization Layer or Hypervisor. On this layer, we can host any number of virtual machines (depends on physical hardware compute power). Below is the picture which gives you the same information what we have discussed here.
As you can see from above picture, in Virtualized Server Architecture, there is a physical hardware on which a virtual layer is hosted which we called as Virtual Host. On this Virtual Host, there are more than one containers where each container was installed with the independent OS like one container with windows and another with Linux as there is no limit because each container is independent system virtually. And these container is known as Virtual Machine.
Hypervisor creates the Virtualization Layer and monitors manages all virtual machines (VMM – Virtual machine management/Monitor). In other terms, we can say it will provide an illusion that each OS is running on their own physical hardware.
There are two types of Hypervisors
Type-1 Hypervisor: These type of Hypervisors will load directly on physical hardware. It means there will be no OS hosted on physical layer as these Type-1 hypervisors will take care of everything to manage VM’s and its underlying physical hardware.
some of the Type-1 Hypervisors are
- Microsoft Hyper – V
- VMWare ESX/ESXi
- Citrix XenServer
Type-2 Hypervisor: These type of Hypervisors will install as an application on the Operating System hosted on Physical Server. These type of Hypervisors can be used on our regular laptop’s or desktops where we can install and create a new Virtual Machine hosted with Linux or Mac.
Some of the Type-2 Hypervisors are
- VMWare Workstation
- Microsoft Virtual Server
- VMWare Fusion supports only on Mac OS
Whatever we discussed above are about creating Virtual Machines, we can even use Virtualization process for
- Desktop: Creating remote desktops.
- Network: Creating Virtual Network on top of the physical network to communicate between Virtual Machine sharing same physical hardware.
- Storage: Managing Virtual storage or temp storage for storing files by VM’s.
- Application: For example, in case we want to provide an MS Office to our employees it could be more expensive for licenses, with Virtualization, we can install on one server and provide a simple click and use executable file for each employee where it will share the same MS office instance on their local desktops.
Hope you enjoyed this article and happy learning 🙂