Types of Server Virtualization in Computer Network
The division of a physical server into a number of tiny virtual servers, each running a different operating system, is known as server virtualization. They are referred to as "guest operating systems." These are operating on a different OS, referred to as the host OS. In this setup, no other guests on the same host are aware of the existence of the other guests. To achieve this transparency, various virtualization techniques are used.
Types of Server virtualization :
1. The hypervisor
Between the operating system and the hardware, there is a layer known as a hypervisor or VMM (virtual machine monitor). It offers the features and services required for the efficient operation of several operating systems.
In addition to handling the queuing, dispatching, and returning of the hardware requests, it recognises traps and responds to privileged CPU instructions. The hypervisor is topped by a host operating system that controls and manages the virtual machines.
2. Virtualization in Para
The foundation is Hypervisor. This model takes care of a large portion of the emulation and trapping overhead in software implemented virtualization. Earlier than being installed into the virtual machine, the guest operating system is modified and recompiled.
Performance is improved as a result of the modified guest operating system's direct communication with the hypervisor and the elimination of emulation overhead.
Example: To support the administrative environment known as domain 0, which is used by Xen primarily, a tailored Linux environment is used.
3. Complete virtualization
It and paravirtualization are very similar. When necessary, it can simulate the underlying hardware. The operating system's machine operations for I/O and changing the status of the system are captured by the hypervisor. After trapping, these operations are software-emulated, and the status codes that are returned are remarkably similar to what real hardware would produce. Because of this, an unaltered operating system can function on top of the hypervisor.
This approach is used, for instance, by VMWare ESX server. As the administrative operating system, Service Console is a modified version of Linux. Compared to Paravirtualization, it is slower.
4. Virtualization with Hardware Assist
In terms of functionality, it is comparable to Full Virtualization and Paravirtualization, with the exception that it needs hardware support. By relying on the hardware extensions of the x86 architecture, a large portion of the hypervisor overhead caused by trapping and simulating I/O operations and status instructions executed within a guest OS is dealt with.
Unmodified OS can be used to handle hardware access requests, privileged and protected operations, and communication with the virtual machine as the hardware support for virtualization would be used.
Examples of hardware that supports virtualization include AMD's V Pacifica and Intel's VT Vanderpool.
5. Virtualization at the kernel level
It runs a different Linux kernel and sees the associated virtual machine as a user-space process on the physical host rather than using a hypervisor. As a result, managing multiple virtual machines on a single host is simple. For communication between the virtual machine and the main Linux kernel, a device driver is utilised.
Virtualization requires processor support (Intel VT or AMD - v). The display and execution containers for the virtual machines are modified versions of the QEMU process. Kernel-level virtualization resembles server virtualization in many ways.
Examples include Kernel Virtual Machine and User-Mode Linux (UML) ( KVM )
6. System-level or operating system virtualization
utilises a single instance of the operating system kernel to run multiple, logically separate environments. Also known as the "shared kernel approach" because the host operating system kernel is shared by all virtual machines. based on the "chroot" change root concept.
During boot, chroot begins. Root filesystems are used by the kernel to load drivers and carry out other early system initialization tasks. The system continues system initialization and configuration within that file system after switching to a different root filesystem using the chroot command to mount an on-disk file system as its final root filesystem.
This idea is expanded upon by the chroot mechanism of system-level virtualization. By doing so, the system is able to launch virtual servers with independent sets of processes that run in relation to their own filesystem root directories.
The ability to run different operating systems on different virtual systems is the primary distinction between system-level and server virtualization. Server virtualization is when different servers can have different operating systems, including different versions of the same operating system, as opposed to system-level virtualization, which requires all virtual servers to share the same copy of the operating system.
Examples include FreeVPS, Linux Vserver, and OpenVZ.