The key is to enable hypervisor virtualization. In its simplest form, a hypervisor is specialized firmware or software, or both, installed on a single hardware that will allow you to host multiple virtual machines. This allows physical hardware to be shared across multiple virtual machines. The computer on which the hypervisor runs one or more virtual machines is called the host machine.
Virtual machines are called guest machines. The hypervisor allows the physical host machine to run various guest machines. It helps to get maximum benefit from computing resources such as memory, network bandwidth and CPU cycles.
Advantages of Hypervisor
Although virtual machines operate on the same physical hardware, they are isolated from each other. It also denotes that if one virtual machine undergoes a crash, error, or malware attack, it does not affect other virtual machines.
Another advantage is that virtual machines are very mobile because they do not depend on the underlying hardware. Since they are not connected to physical hardware, switching between local or remote virtualized servers becomes much easier than with traditional applications.
Types of Hypervisors in Cloud Computing
There are two main types of hypervisors in cloud computing.
Type I Hypervisor
A Type I hypervisor operates directly on the host’s hardware to monitor the hardware and guest virtual machines, and is referred to as bare metal. Typically, they do not require the installation of software ahead of time.
Instead, you can install it directly on the hardware. This type of hypervisor is powerful and requires a lot of expertise to function well. In addition, Type I hypervisors are more complex and have few hardware requirements to run adequately. Because of this it is mostly chosen by IT operations and data center computing.
Examples of Type I hypervisors include Oracle VM Server for Xen, SPARC, Oracle VM Server for x86, Microsoft Hyper-V, and VMware’s ESX/ESXi.
Type II Hypervisor
It is also called a hosted hypervisor because it is installed on an existing operating system, and they are not more capable of running more complex virtual tasks. People use it for basic development, testing and simulation.
If a security flaw is found inside the host OS, it can potentially compromise all running virtual machines. This is why Type II hypervisors cannot be used for data center computing, and they are designed for end-user systems where security is less of a concern. For example, developers can use a Type II hypervisor to launch virtual machines to test software products prior to their release.
Hypervisors, their use, and Importance
A hypervisor is a process or a function to help admins isolate operating systems and applications from the underlying hardware.
Cloud computing uses it the most as it allows multiple guest operating systems (also known as virtual machines or VMs) to run simultaneously on a single host system. Administrators can use the resources efficiently by dividing computing resources (RAM, CPU, etc.) between multiple VMs.
A hypervisor is a key element in virtualization, which has helped organizations achieve higher cost savings, improve their provisioning and deployment speeds, and ensure higher resilience with reduced downtimes.
The Evolution of Hypervisors
The use of hypervisors dates back to the 1960s, when IBM deployed them on time-sharing systems and took advantage of them to test new operating systems and hardware. During the 1960s, virtualization techniques were used extensively by developers wishing to test their programs without affecting the main production system.
The mid-2000s saw another significant leap forward as Unix, Linux and others experimented with virtualization. With advances in processing power, companies built powerful machines capable of handling multiple workloads. In 2005, CPU vendors began offering hardware virtualization for their x86-based products, making hypervisors mainstream.
Why use a hypervisor?
Now that we have answered “what is a hypervisor”, it will be useful to explore some of their important applications to better understand the role of hypervisors in virtualized environments. Hypervisors simplify server management because VMs are independent of the host environment. In other words, the operation of one VM does not affect other VMs or the underlying hardware.
Therefore, even when one VM crashes, others can continue to work without affecting performance. This allows administrators to move VMs between servers, which is a useful capability for workload balancing. Teams seamlessly migrate VMs from one machine to another, and they can use this feature for fail-overs. In addition, a hypervisor is useful for running and testing programs in different operating systems.
However, the most important use of hypervisors is consolidating servers on the cloud, and data centers require server consolidation to reduce server sprawl. Virtualization practices and hypervisors have become popular because they are highly effective in solving the problem of underutilized servers.
Virtualization enables administrators to easily take advantage of untapped hardware capacity to run multiple workloads at once, rather than running separate workloads on separate physical servers. They can match their workload with appropriate material resources, meeting their time, cost and service level requirements.
What are the different Types of Hypervisors?
Type 1 Hypervisors (Bare Metal or Native Hypervisors): Type 1 hypervisors are deployed directly over the host hardware. Direct access to the hardware without any underlying OS or device drivers makes such hypervisors highly efficient for enterprise computing. The implementation is also inherently secure against OS-level vulnerabilities. VMware ESXi, Microsoft Hyper-V, Oracle VM, and Xen are examples of type 1 hypervisors.
Type 2 Hypervisors (Hosted Hypervisor): Type 2 hypervisors run as an application over a traditional OS. Developers, security professionals, or users who need to access applications only available on select OS versions often rely on type 2 hypervisors for their operations. KVM, VMware Server and Workstation, Microsoft Virtual PC, Oracle VM VirtualBox, and QEMU are popular type 2 hypervisors.
Need of a Virtualization Management Tool
Today, most enterprises use hypervisors to simplify server management, and it is the backbone of all cloud services. While virtualization has its advantages, IT teams are often less equipped to manage a complex ecosystem of hypervisors from multiple vendors. It is not always easy to keep track of different types of hypervisors and to accurately monitor the performance of VMs. In addition, the ease of provisioning increases the number of applications and operating systems, increasing the routine maintenance, security and compliance burden.
In addition, VMs may still require IT support related to provisioning, de-provisioning and auditing as per individual security and compliance mandates. Troubleshooting often involves skimming through multiple product support pages. As organizations grow, the lack of access to proper documentation and technical support can make the implementation and management of hypervisors difficult. Eventually, controlling virtual machine spread becomes a significant challenge.
Different groups within an organization often deploy the same workload to different clouds, increasing inefficiency and complicating data management. IT administrators must employ virtualization management tools to address the above challenges and manage their resources efficiently.
Virtualization management tools provide a holistic view of the availability of all VMs, their states (running, stopped, etc.), and host servers. These tools also help in performing basic maintenance, provisioning, de-provisioning and migration of VMs.
Key Players in Virtualization Management
There are three broad categories of virtualization management tools available in the market:
- Proprietary tools (with varying degrees of cross-platform support): VMware venter, Microsoft SCVMM
- Open-source tools: Citrix XenCenter
- Third-party commercial tools: Dell Foglight, Solar Winds Virtualization Manager, Splunk Virtualization Monitoring System.