Contents
Comparison
There are many different computer platforms, and thus many different virtualization technologies. See wp:Comparison of platform virtualization software for a comprehensive list. We will be focusing on current, non-proprietary, mainstream projects so not FreeBSD jails, or Parallels Desktop for Mac
Leading Choices
Kubernetes
Kubernetes is an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation (CNCF).
OpenStack
OpenStack is a set of software components that provide common services for cloud infrastructure. There are many components. Within OpenStack, there is an API service called Magnum which "makes container orchestration engines such as Docker Swarm, Kubernetes, and Apache Mesos available as first class resources in OpenStack."[1]
Linux containers
Infrastructure for container projects. Sponsored by Canonical. https://linuxcontainers.org is the umbrella project behind LXC, LXD and LXCFS. (See wp:LXC).
Linux containers are implementations of operating system-level virtualization for the Linux operating system. Several implementations exist, all based on the virtualization, isolation, and resource management mechanisms provided by the Linux kernel, notably Linux namespaces and cgroups. Docker is an example, although it no longer uses LXC as it's default execution environment. Podman is another example.
The goal is to offer a distro and vendor neutral environment for the development of Linux container technologies.
Our main focus is system containers. That is, containers which offer an environment as close as possible as the one you'd get from a VM but without the overhead that comes with running a separate kernel and simulating all the hardware.
https://linuxcontainers.org/lxd/try-it/
VirtualBox (Oracle)
The VirtualBox base package is GPL licensed. It's now controlled by Oracle. wp:VirtualBox
VMWare (Dell)
Converting to Virtual
See wp:Physical-to-Virtual (often known as P2V).
There are many tools in the virtualization space for converting from one format to another. For example, translating from a docker-compose.yml file to a Kubernetes YAML file.