The Ceph backup driver backs up volumes of any type to a Ceph back-end store. The driver can also detect whether the volume to be backed up is a Ceph RBD volume, and if so, it tries to perform incremental and differential backups.
For source Ceph RBD volumes, you can perform backups within the same Ceph pool (not recommended) and backups between different Ceph pools and between different Ceph clusters.
At the time of writing, differential backup support in Ceph/librbd was quite new. This driver attempts a differential backup in the first instance. If the differential backup fails, the driver falls back to full backup/copy.
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. It takes far less time to restore a volume than to take a full copy.
Note | |
---|---|
Block Storage Service enables you to:
|
To enable the Ceph backup driver, include the following
option in the cinder.conf
file:
backup_driver=cinder.backup.driver.ceph
The following configuration options are available for the Ceph backup driver.
Configuration option=Default value | Description |
backup_ceph_chunk_size=134217728 | (IntOpt) the chunk size in bytes that a backup will be broken into before transfer to backup store |
backup_ceph_conf=/etc/ceph/ceph.conf | (StrOpt) Ceph config file to use. |
backup_ceph_pool=backups | (StrOpt) the Ceph pool to backup to |
backup_ceph_stripe_count=0 | (IntOpt) RBD stripe count to use when creating a backup image |
backup_ceph_stripe_unit=0 | (IntOpt) RBD stripe unit to use when creating a backup image |
backup_ceph_user=cinder | (StrOpt) the Ceph user to connect with |
restore_discard_excess_bytes=True | (BoolOpt) If True, always discard excess bytes when restoring volumes. |
This example shows 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