Ceph Backup Driver
The Ceph backup driver supports backing up volumes of any type
to a Ceph backend store. It is also capable of detecting whether
the volume to be backed up is a Ceph RBD volume and if so,
attempts to perform incremental/differential backups.
Support is also included for the following in the case of source
volume being a Ceph RBD volume:
backing up within the same Ceph pool
(not recommended)
backing up between different Ceph pools
backing up between different Ceph clusters
At the time of writing, differential backup support in
Ceph/librbd was quite new so this driver accounts for this
by first attempting differential backup and falling back to
full backup/copy if the former fails.
If incremental backups are used, multiple backups of the same
volume are stored as snapshots so that minimal space is
consumed in the backup store and restoring the volume takes
a far reduced amount of time compared to a full copy.
Note that Cinder supports restoring to a new volume or the
original volume the backup was taken from. For the latter
case, a full copy is enforced since this was deemed the safest
action to take. It is therefore recommended to always
restore to a new volume (default).
To enable the Ceph backup driver, include the following option
in cinder.conf:
backup_driver=cinder.backup.driver.ceph
The following configuration options are available for the
Ceph backup driver.
Here is an example of the default options for the Ceph backup
driver.
backup_ceph_conf=/etc/ceph/ceph.conf
backup_ceph_user=cinder
backup_ceph_chunk_size=134217728
backup_ceph_pool=backups
backup_ceph_stripe_unit=0
backup_ceph_stripe_count=0