Linux and Virtualization

  • Linux, like any operating system, will spend the majority of its time being virtualized. It is rare that a server operating system would be deployed directly to bare metal today, although situations do, of course, exist for this. Linux is especially well suited, probably more than any other operating system, to being virtualized with the broadest support, most inclusive support and largest array of virtualization options.

    All four enterprise type 1 (bare metal) hypervisors currently on the market (Xen, KVM, Hyper-V and VMware ESXi) fully support all of the major Linux server distros (RHEL, CentOS, Oracle, Suse, OpenSuse, Ubuntu and many more) as do all major, and essentially all minor as well, cloud providers and VPS providers.

    Linux has some advantages over other OSes here that are worth noting for people coming from other operating system backgrounds:

    • Linux is supported everywhere in regards to hypervisors, unlike the BSD, Solaris and other families which mostly work but are rarely officially supported.
    • Linux is supported everywhere in the cloud space unlike BSD whose support is spotty, Windows whose support is limited to certain types of providers, Solaris and others that are almost never available at all.
    • Linux is the only operating system to support full paravirtualization on Xen (which is the only paravirtualization platform.) This Xen/Linux Paravirtualization option is unique.
    • On KVM and Xen, Linux high performance paravirtualization drivers are built into Linux and no additional driver management is needed. This is often true on Hyper-V as well, but is distro specific for support.
    • Linux minimal footprint is often very small making it ideal for high density server consolidation through virtualization.

    Linux can, of course, be virtualized on type 2 hypervisors such as VMware Fusion and Oracle VirtualBox.

    Linux itself is an important part of several virtualization ecosystems. Inside the Linux kernel is the KVM hypervisor meaning that Linux can directly be used as a type 1 hypervisor. Linux is also intimately tied to the Xen hypervisor project, while the two are separate, they share a tight affinity. You can also, of course, use Type 2 virtualization products like VirtualBox on top of a Linux installation.

    Linux lives within a world heavily defined by virtualization. Whether Linux runs on top of a hypervisor, is a hypervisor, assists the hypervisor or a hypervisor runs on top of it, Linux offers a broad range of options.

    Additionally, Linux supports containerization and has for a very long time. Multiple container technologies are available for Linux. Another topic that we will tackle later in the process.

    We will tackle using Linux for virtualization at another time.

    Part of a series on Linux Systems Administration by Scott Alan Miller