 e54d4a5827
			
		
	
	e54d4a5827
	
	
	
		
			
			Minor style updates done. Removed the footnote and added the document reference :ref: Updated the Footnote [#]. Signed-off-by: Elaine Fonaro <elaine.fonaro@windriver.com> Change-Id: Icafcab66634237bef72d253cec3f6240f1c67d45
		
			
				
	
	
	
		
			4.6 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 -openstack ~(keystone_admin)$ system application-delete -openstack ~(keystone_admin)$ system application-upload -openstack.tgz 
- Restore . - You can choose either of the following options: - Restore only system data. This option will not restore the Ceph data
(that is, it will not run commands 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 system data. This option will not restore the Ceph data
(that is, it will not run commands like 
Restore only application system data
Run the following command:
~(keystone_admin)$ ansible-playbook /usr/share/ansible/stx-ansible/playbooks/ restore_openstack.yml -e "@localhost-restore.yaml"cat << EOF > localhost-restore.yaml
---
ansible_become_pass: "<admin_password>"
admin_password: "<admin_password>"
initial_backup_dir: "<location_of_backup_filename>"
backup_filename: "<openstack_tgz_backup_filename>"
...
EOFRestore 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 "@localhost-restore.yaml"- cat << EOF > localhost-restore.yaml --- ansible_become_pass: "<admin_password>" admin_password: "<admin_password>" initial_backup_dir: "<location_of_backup_filename>" backup_filename: "<openstack_tgz_backup_filename>" restore_cinder_glance_data="true" ... EOF- 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 the - rbd importcommand.- For example: - ~(keystone_admin)$ rbd import -p cinder-volumes /tmp/611157b9-78a4-4a26-af16-f9ff75a85e1b- Where - tmp/611157b9-78a4-4a26-af16-f9ff75a85e1bis a file saved earlier at the backup procedure as described in- Back up OpenStack<back-up-openstack>.
- Restore Glance images using the - image-backupscript.- For example, if we have an archive named - image_3f30adc2-3e7c-45bf-9d4b-a4c1e191d879.tgzin the- /opt/backupsdirectory, 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_restoreutility 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_continueflag set to- trueto bring up the remaining OpenStack services.- ~(keystone_admin)$ ansible-playbook /usr/share/ansible/stx-ansible/playbooks/ restore_openstack.yml -e "@localhost-restore.yaml"- cat << EOF > localhost-restore.yaml --- ansible_become_pass: "<admin_password>" admin_password: "<admin_password>" initial_backup_dir: "<location_of_backup_filename>" backup_filename: "<openstack_tgz_backup_filename>" restore_openstack_continue="true" ... EOF