Restore a volume backup

Backups are an essential part of any infrastructure and system. Within the OpenStack Environment you can use the cinder service to create backups of volumes. These can be used to restore a volume in case of data loss or corruption.

This article will guide you through the process of restoring a backup of a volume using the OpenStack Dashboard and the OpenStack CLI. If you do not yet have a backup which you want to restore then please refer to the Create a volume backup article.

Using the OpenStack Dashboard

Step 1
Log in to the OpenStack Dashboard.

Step 2
Navigate to the VOLUMES section and click on Backups.

Step 3 Click on RESTORE BACKUP next to the backup you want to restore.

Step 4a (Restoring to an new volume)
If you want to restore the backup to a new volume then select the CREATE A NEW VOLUME option and click on Restore Backup.

Step 4b (Restoring to an existing volume)
Select the volume you want to restore the backup to and click on Restore Backup.


Using the OpenStack CLI

To restore a backup using the OpenStack CLI you can use the following command:

To restore a backup to a new volume please proceed to the Restore backup to a new volume section.

To restore a backup to an existing volume please proceed to the Restore backup to an existing volume section.

Restore backup to a new volume

Restoring a backup to a new volume can be really useful if you want to keep to original volume for comparison or for investigation on what went wrong. To restore a backup to a new volume you can use the following steps.

If you want to restore a backup to an existing volume please proceed to the Restore backup to an existing volume section.

Step 1
First make sure you have setup the OpenStack CLI and that you are able to execute commands using the openstack command. For more information please refer to the Using the OpenStack CLI article.

Step 2
Now we list all backups to get the ID and to the size of the backup we want to restore.

openstack volume backup list

Step 3
Now we can create a new volume. Replace <backup_id> with the ID of the backup and <volume_name> with the name of the new volume. Replace <size> with the size of the volume which should be equal to or bigger then the size of the backup.

openstack volume create --os-volume-api-version 3.47 --size 10 --backup <backup_id> <volume_name>

A new volume will now be created with the data from the backup.

Note: In older versions of the OpenStack the --os-volume-api-version 3.47 option might not work, in this case you need to create a new volume and then restore the backup to the new volume using the instructions in the Restore backup to an existing volume section.

Note: If you want to restore the backup to an other availability zone, you can add --availability-zone <availability-zone> argument to the command above.

Note: If you want to restore the backup to a specific volume type you can add --type <volume-type> argument to the command above. For example --type ssd to restore the backup to a volume with the ssd volume type.

Restore backup to an existing volume

Step 1
First make sure you have setup the OpenStack CLI and that you are able to execute commands using the openstack command. For more information please refer to the Using the OpenStack CLI article.

Step 2
List all volumes to get the ID of the volume you want to backup.

openstack volume list

Step 3
Now we list all backups to get the ID of the backup we want to restore.

openstack volume backup list

Step 4
Now that we have the ID of the backup and the volume where we want to restore the backup to we can execute the following command to restore the backup.

openstack volume backup restore <backup_id> <volume_id>

You have now restored your backup! We hope this article was helpful and that you have successfully recovered your data using your volume backup!