22b20d04b4
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
133 lines
4.5 KiB
ReStructuredText
133 lines
4.5 KiB
ReStructuredText
Introduction
|
|
============
|
|
|
|
This documentationm is written in :term:`reStructuredText` and formatted with :term:`Sphinx`.
|
|
|
|
|
|
What is Proxmox Backup
|
|
----------------------
|
|
|
|
Proxmox Backup is an enterprise class client-server backup software,
|
|
specially optimized for `Proxmox Virtual Environment`_ to backup
|
|
:term:`virtual machine`\ s and :term:`container`\ s. It is also
|
|
possible to backup physical hosts.
|
|
|
|
It supports deduplication, compression and authenticated encryption
|
|
(AE_). Using RUST_ as implementation language guarantees high
|
|
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.
|
|
|
|
|
|
Architecture
|
|
------------
|
|
|
|
Proxmox Backup uses a `Client-server model`_. The server is
|
|
responsible to store the backup data, and provides an API to create
|
|
backups and restore data. It is also possible to manage disks and
|
|
other server side resources using this API.
|
|
|
|
A backup client uses this API to access the backed up data,
|
|
i.e. ``proxmox-backup-client`` is a command line tool to create
|
|
backups and restore data. We also deliver an integrated client for
|
|
QEMU_ with `Proxmox Virtual Environment`_.
|
|
|
|
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
|
|
of the backup, without having to scan the whole backup.
|
|
|
|
|
|
Main features
|
|
-------------
|
|
|
|
: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.
|
|
|
|
:Deduplication: Incremental backup produces large amounts of duplicate
|
|
data. The deduplication layer removes that redundancy and makes
|
|
inkremental backup small and space efficient.
|
|
|
|
:Data Integrity: The built in `SHA-256`_ checksum algorithm assures the
|
|
accuracy and consistency of your backups.
|
|
|
|
:Remote Sync: It is possible to efficently synchronize data to remote
|
|
sites. Only deltas containing new data are transfered.
|
|
|
|
:Performance: The whole software stack is written in :term:`Rust`,
|
|
which provides high speed and memory efficiency.
|
|
|
|
:Compression: Ultra fast Zstandard_ compression is able to compress
|
|
several gigabytes of data per second.
|
|
|
|
:Encryption: Backups can be encrypted at client side using AES-256 in
|
|
GCM_ mode. This authenticated encryption mode (AE_) provides very
|
|
high performance on modern hardware.
|
|
|
|
:Open Source: No secrets. You have access to the whole source tree.
|
|
|
|
:Support: Commercial support options available from `Proxmox`_.
|
|
|
|
|
|
Why Backup?
|
|
-----------
|
|
|
|
The primary purpose of backup is to protect against data loss. Data
|
|
loss can happen because of faulty hardware, but also by human errors.
|
|
|
|
A common mistake is to delete a file or folder which is still
|
|
required. Virtualization can amplify this problem, because it is now
|
|
easy to delete a whole virtual machine by a single button press.
|
|
|
|
Backups can also serve as a toolkit for administrators to temporarily
|
|
store data. For example, it is common practice to perform full backups
|
|
before installing major software updates. If something goes wrong, you
|
|
can just restore the previous state.
|
|
|
|
Another reason for backups are legal requirements. Some data must be
|
|
kept in a safe place for several years so that you can access it if
|
|
required by law.
|
|
|
|
Data loss can be very costly as it can severely restrict your
|
|
business. Therefore, make sure that you regularly perform a backup
|
|
and run restore tests.
|
|
|
|
|
|
Software Stack
|
|
--------------
|
|
|
|
.. todo:: Eplain why we use RUST (and Flutter)
|
|
|
|
|
|
License
|
|
-------
|
|
|
|
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_.
|
|
|
|
|
|
History
|
|
-------
|
|
|
|
.. todo:: Add development History of the product
|
|
|