cc_staff
1,486
edits
No edit summary |
(First substantial draft of Backing-up persistent VMs, much editing still required.) |
||
Line 4: | Line 4: | ||
==Persistent VMs== | ==Persistent VMs== | ||
Persistent VMs are designed to boot from volumes (see [[OpenStack#Booting_from_a_Volume]]) and as such to back a persistent VM a copy can be created of the volume(s) the VM has attached to it. | Persistent VMs are designed to boot from volumes (see [[OpenStack#Booting_from_a_Volume| booting from a volume]]) and as such to back-up a persistent VM a copy can be created of the volume(s) the VM has attached to it. The best way to create a copy of a volume for backup purposes is to create an image from that volume. An image can be downloaded and reused to create multiple new VMs, can be accessed by VirtualBox on your Desktop or laptop, and uploaded to other clouds. | ||
To be able to create an image from a volume, that volume must be detached from the VM. In addition, if the volume is the root volume of the VM it can not be detached unless the VM is deleted. If you are sure that when you created the VM you did not check the box "Delete Volume on Instance Delete" then you can delete your VM knowing you will not loose any data. However, if you are unsure if you checked this box or not OpenStack unfortunately doesn't tell you if this box was checked when you created the VM after the fact. One trick which maybe useful for getting around this, is to create a snapshot of the volume provided you have a storage quota which allows it (Snapshots count towards your storage quota). Since volumes can not be deleted if there is a volume snapshot created from them, when you delete the VM the volume will not be deleted even if you checked this box. | |||
At this point all the volumes you wish to create images from should be in the "Available" state. From the drop down menu for the volume you wish to create an image of, select 'Upload to Image'. Select the 'QCOW2' disk format and give your image a name. | |||
Once you have created images of all the volumes you wish to backup you can then re-create your VM booting from the original VM's root volume and attaching any additional volumes you may have had attached to the original VM. | |||
===What about volume snapshots?=== | |||
Another alternative might be to create a snapshot of a volume, which will save the state of a volume at the time the snapshot was created, however volume snapshots depend on the original volume remaining intact and as such are not ideal for backups. It is also not possible to download volume snapshots as they depend on the original volume. However, they do allow you to create a new volume from a snapshot of a volume at a given point in time. For example, if there were file changes since the last volume snapshot you would like to revert. Or if there were file changes specific to that VM which should not be included in other VMs. | |||
===What about VM snapshots?=== | |||
Unfortunately, OpenStack uses the word "snapshot" to mean two different things. There are volume snapshosts, as discussed above, and snapshots of VMs. Snapshots of VMs behave in different ways depending on the flavor of your VM. If you have a persistent VM and create a snapshot of the VM, OpenStack creates a nearly empty image, which contains pointers to volume snapshots, and a volume snapshot(s) of the persistent VM's boot volume and any attached volumes. You can then create a new VM (boot from image (creates a new volume)) which will create new volumes from the snapshots of the volumes taken previously, boot a new VM from the root volume and attach any other duplicated volumes. | |||
==Compute VMs== | ==Compute VMs== |