2019-02-27 20:35:05 +03:00
Introduction
============
2020-04-14 18:12:47 +03:00
This documentation is written in :term: `reStructuredText` and formatted with :term: `Sphinx` .
2019-02-28 21:09:55 +03:00
2019-11-16 13:43:14 +03:00
2019-03-02 20:08:00 +03:00
What is Proxmox Backup
----------------------
2019-02-27 20:35:05 +03:00
2019-03-02 20:08:00 +03:00
Proxmox Backup is an enterprise class client-server backup software,
2020-04-14 18:12:47 +03:00
specially optimized for the `Proxmox Virtual Environment`_ to backup
2019-11-16 13:43:14 +03:00
:term: `virtual machine` \ s and :term: `container` \ s. It is also
possible to backup physical hosts.
It supports deduplication, compression and authenticated encryption
2020-01-29 17:14:37 +03:00
(AE_). Using :term: `Rust` as implementation language guarantees high
2019-11-16 13:43:14 +03:00
performance, low resource usage, and a safe, high quality code base.
Encryption is done at the client side. This makes backups to not fully
trusted targets possible.
2019-03-02 19:51:18 +03:00
2019-11-11 15:26:08 +03:00
Architecture
------------
Proxmox Backup uses a `Client-server model`_ . The server is
2020-04-14 18:12:47 +03:00
responsible to store the backup data and provides an API to create
backups and restore data. It is possible to manage disks and
2019-11-16 13:43:14 +03:00
other server side resources using this API.
2019-11-11 15:26:08 +03:00
A backup client uses this API to access the backed up data,
i.e. `` proxmox-backup-client `` is a command line tool to create
2020-04-14 18:12:47 +03:00
backups and restore data. We deliver an integrated client for
2019-11-11 15:26:08 +03:00
QEMU_ with `Proxmox Virtual Environment`_ .
2019-11-17 10:47:22 +03:00
A single backup is allowed to contain several archives. For example,
when you backup a :term: `virtual machine` , each disk is stored as a
separate archive inside that backup. The VM configuration also gets an
extra file. This way, it is easy to access and restore important parts
2020-04-14 18:12:47 +03:00
of the backup without having to scan the whole backup.
2019-11-17 10:47:22 +03:00
2019-03-02 19:51:18 +03:00
2020-04-14 18:12:47 +03:00
Main Features
2019-03-02 20:08:00 +03:00
-------------
2019-03-02 12:31:32 +03:00
:Proxmox VE: The `Proxmox Virtual Environment`_ is fully
supported. You can backup :term: `virtual machine` \ s and
:term: `container` \ s.
:GUI: We provide a graphical, web based user interface.
2020-04-14 18:12:47 +03:00
:Deduplication: Incremental backups produce large amounts of duplicate
2019-03-02 12:31:32 +03:00
data. The deduplication layer removes that redundancy and makes
2020-04-14 18:12:47 +03:00
incremental backups small and space efficient.
2019-03-02 12:31:32 +03:00
2019-03-02 18:56:01 +03:00
:Data Integrity: The built in `SHA-256`_ checksum algorithm assures the
2019-12-18 18:56:40 +03:00
accuracy and consistency of your backups.
2019-03-02 18:56:01 +03:00
2020-04-14 18:12:47 +03:00
:Remote Sync: It is possible to efficiently synchronize data to remote
sites. Only deltas containing new data are transferred.
2019-03-02 12:31:32 +03:00
:Performance: The whole software stack is written in :term:`Rust`,
2020-04-14 18:12:47 +03:00
to provide high speed and memory efficiency.
2019-03-02 12:31:32 +03:00
2019-11-11 21:07:03 +03:00
:Compression: Ultra fast Zstandard_ compression is able to compress
2019-03-02 18:56:01 +03:00
several gigabytes of data per second.
2019-03-02 12:31:32 +03:00
2020-04-14 18:12:47 +03:00
:Encryption: Backups can be encrypted client-side using AES-256 in
2019-11-11 21:07:03 +03:00
GCM_ mode. This authenticated encryption mode (AE_) provides very
high performance on modern hardware.
2020-04-14 18:12:47 +03:00
:Open Source: No secrets. You have access to all the source code.
2019-03-02 20:23:48 +03:00
2020-04-14 18:12:47 +03:00
:Support: Commercial support options are available from `Proxmox`_.
2019-03-02 20:23:48 +03:00
2019-11-11 21:07:03 +03:00
2019-03-02 20:08:00 +03:00
Why Backup?
-----------
2020-04-14 18:12:47 +03:00
The primary purpose of a backup is to protect against data loss. Data
loss can be caused by faulty hardware, but also by human error.
2019-03-02 20:08:00 +03:00
A common mistake is to delete a file or folder which is still
2020-04-14 18:12:47 +03:00
required. Virtualization can amplify this problem. It is now
easy to delete a whole virtual machine by pressing a single button.
2019-03-02 20:08:00 +03:00
2020-04-14 18:12:47 +03:00
Backups can serve as a toolkit for administrators to temporarily
2019-03-02 20:08:00 +03:00
store data. For example, it is common practice to perform full backups
before installing major software updates. If something goes wrong, you
2020-04-14 18:12:47 +03:00
can restore the previous state.
2019-03-02 20:08:00 +03:00
Another reason for backups are legal requirements. Some data must be
2020-04-14 18:12:47 +03:00
kept in a safe place for several years by law, so that it can be accessed if
required.
2019-03-02 20:08:00 +03:00
2019-12-03 10:18:52 +03:00
Data loss can be very costly as it can severely restrict your
2020-04-14 18:12:47 +03:00
business. Therefore, make sure that you perform a backup regularly
2019-12-03 10:18:52 +03:00
and run restore tests.
2019-03-02 20:08:00 +03:00
2019-11-11 21:07:03 +03:00
Software Stack
--------------
2020-01-29 17:14:37 +03:00
.. todo :: Eplain why we use Rust (and Flutter)
2019-11-16 13:50:56 +03:00
2019-11-11 21:07:03 +03:00
License
-------
2019-11-11 21:21:27 +03:00
Copyright (C) 2019 Proxmox Server Solutions GmbH
This software is written by Proxmox Server Solutions GmbH <support@proxmox.com>
Proxmox Backup is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but
`` WITHOUT ANY WARRANTY `` ; without even the implied warranty of
`` MERCHANTABILITY `` or `` FITNESS FOR A PARTICULAR PURPOSE `` . See the GNU
Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see AGPL3_.
2019-03-02 20:08:00 +03:00
2019-02-27 20:35:05 +03:00
History
-------
2019-11-16 13:50:56 +03:00
.. todo :: Add development History of the product