A Short Essay on Popular Virtualization Technologies

This post reviews four main virtualization options in short.

💡 VM technologies are essentially considered by people when addressing on-premise use cases or when building DR for data centers.

VMware Virtualization

  • Started at (2003).

  • Offers type-1 hypervisor that runs on bare-metal called ESXi with minimum disk image footprint (32MB), with resources, storage, and networking capabilities, and UI console (DCUI).

  • Includes distributed management system (vCenter) for managing ESXi hosts, access control, migration (vMotion), HA, and distrusted resource scheduler (DRS).

  • vSphere client UI: A web client for managing multiple ESXi hosts and vCenter resources.

Fig.1: Outline setup for VMware.

KVM

  • Started at (2007).

  • Linux based kernel virtual machines.

  • Free and open-source .

  • Basically, it’s a kernel module that allows the kernel to function as a hypervisor.

  • Originally designed for x86 processors then ported to others (ARM, ESA/390, PowerPC).

  • Supports HAV (hardware-assisted virtualization).

  • Libvirt is an abstraction library which facilitates working with KVM toolchains and its adapters.

  • License: GNU GPL v2.

Fig.2: KVM Internal Design.

Red Hat Virtualization

  • Started at (2009).

  • An enterprise solution based on Linux KVM.

  • Has integrations with AD and FreeIPA for domain and access control.

  • Servers management UI.

  • Superseded by OpenShift, now in maintenance mode since 2020.

Fig.3: RedHat virtual manager UI.

Hyper-V

  • Started at (2008) by Microsoft.

  • A native hypervisor for x86-64 systems only.

  • Separates VMs using isolated partitions running their guest OSs.

  • A single hyper-v with command line (CMD) is free.

  • Requires HAV (hardware-assisted virtualization).

Fig. 4: Hyper-V overview.
Fig. 5: Installation screen for Hyper-V 2019.

Takeaway:

VMware stands out as enterprise solution for corporate and regularity requirements, especially when the support is a must. Conversely, for small projects and applications, I find KVM-QEMU based setup a good option.

Comments