Proxmox Backup Server (short Proxmox BS) is an
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
backup software project supporting
virtual machines
In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized hard ...
,
containers
A container is any receptacle or enclosure for holding a product used in storage, packaging, and transportation, including shipping.
Things kept inside of a container are protected on several sides by being inside of its structure. The term ...
, and physical hosts.
The
Bare-metal server is based on the
Debian
Debian (), also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of De ...
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which i ...
distribution, with some extended features, such as out-of-the-box
ZFS
ZFS (previously: Zettabyte File System) is a file system with volume management capabilities. It began as part of the Sun Microsystems Solaris operating system in 2001. Large parts of Solaris – including ZFS – were published under an ope ...
support and
Linux kernel
The Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU ...
5.4 LTS.
Proxmox Backup Server is licensed under the
GNU Affero General Public License
The GNU Affero General Public License (GNU AGPL) is a free, copyleft license published by the Free Software Foundation in November 2007, and based on the GNU General Public License, version 3 and the Affero General Public License.
The Free Sof ...
, version 3.
Technology
Proxmox Backup Server is written mostly in
Rust
Rust is an iron oxide, a usually reddish-brown oxide formed by the reaction of iron and oxygen in the catalytic presence of water or air moisture. Rust consists of hydrous iron(III) oxides (Fe2O3·nH2O) and iron(III) oxide-hydroxide (FeO(OH), ...
and implements
data deduplication
In computing, data deduplication is a technique for eliminating duplicate copies of repeating data. Successful implementation of the technique can improve storage utilization, which may in turn lower capital expenditure by reducing the overall amou ...
to reduce the storage space needed. Data is split into chunks.
History
Development of Proxmox Backup originally began in October 2018 to provide more efficient backup for the virtualization platform
Proxmox Virtual Environment than the integrated vzdump backup tool which only allows full backups. In July 2020, the first public beta was announced. Its first stable release was announced in November, 2020.
Operation
Proxmox Backup uses a
client-server model where the server stores the backup data. The client tool works on most modern Linux systems. The software is installed bare-metal with an ISO image, which includes management tools and a web-based GUI. Administrators can manage the system via a Web browser or a command-line interface (CLI). Proxmox Backup Server also provides a
REST
Rest or REST may refer to:
Relief from activity
* Sleep
** Bed rest
* Kneeling
* Lying (position)
* Sitting
* Squatting position
Structural support
* Structural support
** Rest (cue sports)
** Armrest
** Headrest
** Footrest
Arts and ente ...
API for third party tools.
Proxmox Backup Server supports
incremental backups,
data deduplication
In computing, data deduplication is a technique for eliminating duplicate copies of repeating data. Successful implementation of the technique can improve storage utilization, which may in turn lower capital expenditure by reducing the overall amou ...
,
Zstandard
Zstandard, commonly known by the name of its reference implementation zstd, is a lossless data compression algorithm developed by Yann Collet at Facebook.
''Zstd'' is the reference implementation in C. Version 1 of this implementation was re ...
compression and
authenticated encryption
Authenticated Encryption (AE) and Authenticated Encryption with Associated Data (AEAD) are forms of encryption which simultaneously assure the confidentiality and authenticity of data.
Programming interface
A typical programming interface for ...
(AE).
The first backup is a full backup, and subsequent backups are sent incrementally from the client to the Proxmox Backup Server, where data is deduplicated.
For the
Proxmox VE
Proxmox Virtual Environment (Proxmox VE or PVE) is an open-source software server for virtualization management. It is a hosted hypervisor that can run operating systems including Linux and Windows on x64 hardware. It is a Debian-based Linux ...
platform, the Proxmox Backup client is tightly integrated; the backup storage is configurable as a storage backend on a Proxmox VE node and supports deduplicated backups of
QEMU
QEMU is a free and open-source emulator (Quick EMUlator). It emulates the machine's processor through dynamic binary translation and provides a set of different hardware and device models for the machine, enabling it to run a variety of g ...
virtual machines and
LXC
Linux Containers (LXC) is an operating-system-level virtualization method for running multiple isolated Linux systems (containers) on a control host using a single Linux kernel.
The Linux kernel provides the cgroups functionality that allows li ...
containers. The platform also leverages QEMU dirty-bitmaps, which allows for fast backups from the Proxmox VE client to the server, as the disk images do not need to be scanned for changes.
Backups can be stored on-premises or synchronized to remote locations with Remotes, and multiple, unrelated hosts can use the same backup server. All client-server traffic is transferred over
TLS-1.3 to protect against
eavesdropping
Eavesdropping is the act of secretly or stealthily listening to the private conversation or communications of others without their consent in order to gather information.
Etymology
The verb ''eavesdrop'' is a back-formation from the noun ''eaves ...
. To further protect backup data at rest, optional encryption of all backed-up-data is available using
AES-256
The Advanced Encryption Standard (AES), also known by its original name Rijndael (), is a specification for the encryption of electronic data established by the U.S. National Institute of Standards and Technology (NIST) in 2001.
AES is a variant ...
in
Galois/Counter Mode
In cryptography, Galois/Counter Mode (GCM) is a mode of operation for symmetric-key cryptographic block ciphers which is widely adopted for its performance. GCM throughput rates for state-of-the-art, high-speed communication channels can be achie ...
.
As the backup server can not access the backup data without the matching encryption keys, it can even be an untrusted host.
Data retention policy can be defined in Proxmox Backup Server. Removing expired data is done in two phases: first, prune removes indices of the backups which are no longer needed, and then
garbage collector process is running to physically delete the orphaned data chunks.
See also
*
Bacula
Bacula is an open-source, enterprise-level computer backup system for heterogeneous networks. It is designed to automate backup tasks that had often required intervention from a systems administrator or computer operator.
Bacula supports Li ...
*
Amanda
References
External links
* {{Official website, https://pbs.proxmox.com/wiki/
Backup software
Free backup software
Software using the GNU AGPL license