
Made paths to include files relative to doc source. This is needed for downstream builds and is good practice for reusability. Fixed some include statements with broken syntax. Added missing section labels to include file. Signed-off-by: Ron Stone <ronald.stone@windriver.com> Change-Id: I0423c2008445b49e0bb60b9690925041d7acd6f6 Signed-off-by: Ron Stone <ronald.stone@windriver.com>
27 KiB
Restore OpenStack from a Backup
You can restore from a backup with or without Ceph.
- You must have a backup of your installation as described in
Back up OpenStack <back-up-openstack>
. - You must have an operational deployment.
Delete the old OpenStack application and upload it again.
Note
Images and volumes will remain in Ceph.
~(keystone_admin)$ system application-remove wr-openstack ~(keystone_admin)$ system application-delete wr-openstack ~(keystone_admin)$ system application-upload wr-openstack.tgz
Restore .
You can choose either of the following options:
- Restore only system. This option will not restore the Ceph data
(that is, it will not run comands like
rbd import
). This procedure will preserve any existing Ceph data at restore-time. - Restore system data, Cinder volumes and Glance images. You'll want to run this step if your Ceph data will be wiped after the backup.
Restore only OpenStack application system data: Run the following command:
~(keystone_admin)$ ansible-playbook /usr/share/ansible/stx-ansible/playbooks/ \ restore_openstack.yml \ -e 'initial_backup_dir=<location_of_backup_filename> \ ansible_become_pass=<admin_password> \ admin_password=<admin_password> \ backup_filename=wr-openstack_backup.tgz'
Restore OpenStack application system data, cinder volumes and glance images: Run the following command:
~(keystone_admin)$ ansible-playbook /usr/share/ansible/stx-ansible/playbooks/ \ restore_openstack.yml \ -e 'restore_cinder_glance_data=true \ initial_backup_dir=<location_of_backup_filename> \ ansible_become_pass=<admin_password> \ admin_password=<admin_password> \ backup_filename=wr-openstack_backup.tgz'
When this step has completed, the Cinder, Glance and MariaDB services will be up, and Mariadb data restored.
- Restore Ceph data.
- Restore Cinder volumes using
rbd import
command.
- Restore Cinder volumes using
For example:
~(keystone_admin)$ rbd import -p cinder-volumes /tmp/611157b9-78a4-4a26-af16-f9ff75a85e1b
Where tmp/611157b9-78a4-4a26-af16-f9ff75a85e1b is a file saved earlier at the backup procedure as described in .
- Restore Glance images using the
image-backup
script.
For example if we have an archive named image_3f30adc2-3e7c-45bf-9d4b-a4c1e191d879.tgz in the/opt/backups directory we can use restore it using the following command:
~(keystone_admin)$ sudo image-backup.sh import image_3f30adc2-3e7c-45bf-9d4b-a4c1e191d879.tgz
Use the
tidy\_storage\_post\_restore
utilitary to detect any discrepancy between Cinder/Glance DB and rbd pools:~(keystone_admin)$ tidy_storage_post_restore <log_file>
After the script finishes, some command output will be written to the log file. They will help reconcile discrepancies between the database and CEPH data.
Run the playbook again with the restore_openstack_continue flag set to true to bring up the remaining Openstack services.
~(keystone_admin)$ ansible-playbook /usr/share/ansible/stx-ansible/playbooks/ \ restore_openstack.yml \ -e 'restore_openstack_continue=true \ initial_backup_dir=<location_of_backup_filename> ansible_become_pass=<admin_password> \ admin_password=<admin_password> \ backup_filename=wr-openstack_backup.tgz'
- Restore only system. This option will not restore the Ceph data
(that is, it will not run comands like