Hypervisors#
The hypervisor is what enables virtualization to happen. There are different classifications or types of hypervisors: type 1 and type 2. A type 1 hypervisor is what can call a "bare metal" hypervisor and a type 2 hypervisor is a "hosted" hypervisor. These two types lead to the same result at the end of the day - virtualised servers/operating systems - but provide different features and performance.
Here's a visualisation that shows how each hypervisor is used on a piece of hardware:
From this diagram we can determine two things.
Firstly, that type 1 hypervisors are installed directly onto the physical server themselves. From there you can use them to create virtual machines which you use to create operating system installations - so essentially the type 1 hypervisor is an operating system itself that specialises in just handling virtual machine management
And second, we know type 2 hypervisors are installed on top of an existing operating system and from there can create virtual machines for installing additional operating systems in virtual machines.
Each type offers pros and cons, but the one primary thing that stands out is speed: a type 1 hypervisor is going to offer far better performance for the guest operating system because there are less "layers" to get through before the guest is interacting with the hardware. Type 2 hypervisors aren't as fast, but they offer a higher level of convenience.
Type 1 hypervisors aren't something you're going to be faced with all that much from a day to day perspective. In fact you'll likely never interact with one directly. Type 2, however, is much more common and in fact this chapter's task is to install and use a type 2 hypervisor.
There are different hypervisor classifications. I'll list them below. Unless you're building custom Cloud or clustered computing solutions knowing about each type of hypervisor classification isn't really important. It only really becomes important outside of public Cloud providers like AWS and GCP, when you want to build - in essence - your own AWS/GCP/Azure.
I wouldn't stress too much about the differences in hypervisors right now. Instead simply understand what is meant by a hypervisor and what its job is.