Proxmox Virtual Environment

Proxmox Virtual Environment (Proxmox VE or PVE) is a virtualisation platform designed for the provisioning of hyper-converged infrastructure.

Proxmox allows deployment and management of virtual machines and containers. It is based on a modified Ubuntu LTS kernel. Two types of virtualization are supported: container-based with LXC (starting from version 4.0 replacing OpenVZ used in version up to 3.4, included ), and full virtualization with KVM.

It includes a web-based management interface. There is also a mobile application available for controlling PVE environments.

Proxmox is released under the terms of the GNU Affero General Public License, version 3.

History
Development of Proxmox VE started when Dietmar Maurer and Martin Maurer, two Linux developers, found out OpenVZ had no backup tool and no management GUI. KVM was appearing at the same time in Linux, and was added shortly afterwards.

The first public release took place in April 2008. It supported container and full virtualization, managed with a web-based user interface similar to other commercial offerings.

Features
Proxmox VE is an open-source server virtualization platform to manage two virtualization technologies: Kernel-based Virtual Machine (KVM) for virtual machines and LXC for containers - with a single web-based interface. It also integrates out-of-the-box-tools for configuring high availability between servers, software-defined storage, networking, and disaster recovery.

Proxmox VE supports live migration for guest machines between nodes in the scope of a single cluster, which allows smooth migration without interrupting their services. Since PVE 7.3 there is experimental feature for migration between unrelated nodes in different clusters.

To authenticate users to the web GUI, Proxmox can use its own internal authentication database, PAM, OIDC, LDAP or Active Directory. Multi-factor authentication is also available using TOTP, WebAuthn, or YubiKey OTP.

Since PVE 8.1 there is a full Software-Defined Network (SDN) stack implemented and is compatible with Secure Boot.

Guest machines backup can be done using the included standalone vzdump tool. PVE can be also integrated with separate machine Proxmox Backup Server (PBS) using web GUI or with text based Proxmox Backup Client application.

Since PVE 8 along with standard GUI installer there's a semi-graphic (TUI) installer integrated into the ISO image. From PVE 8.2 it's possible to make automatic scripted installation.

High-availability cluster
Proxmox VE (PVE) can be clustered across multiple server nodes.

Since version 2.0, Proxmox VE offers a high availability option for clusters based on the Corosync communication stack. Starting from the PVE v.6.0 Corosync v.3.x is in use (not compatible with the earlier PVE versions). Individual virtual servers can be configured for high availability, using the built-in ha-manager. If a Proxmox node becomes unavailable or fails, the virtual servers can be automatically moved to another node and restarted. The database and FUSE-based Proxmox Cluster filesystem (pmxcfs ) makes it possible to perform the configuration of each cluster node via the Corosync communication stack with SQLite engine.

Another HA-related element in PVE is distributed filesystem Ceph, which can be used as a shared storage for guest machines.

Virtual appliances
Proxmox VE has pre-packaged server software appliances which can be downloaded via the GUI.