Description of problem: Regarding Image transfer (download) for backup of VM having multiple snapshots already created by user/admin Version-Release number of selected component (if applicable): N/A How reproducible: Reference articles: https://bugzilla.redhat.com/show_bug.cgi?id=1405805 https://ovirt.org/develop/release-management/features/storage/backup-restore-disk-snapshots/ For Backup and Recovery of VM: Scenario for backup: VM has 1 disk. There are already 5 snapshots of VM created by backup admin, So we have 5 snapshot disks for this VM. In order to take backup of this VM using REST API. First we take snapshot. So there are now 6 snapshots (Say snapshot ID XXX and disk snapshot ID YYY). According to the article mentioned, each of these 6 snapshot disks need to be downloaded as backup process. and while restoring we have to upload all snapshot disks and then create VM Actual results: If we download the disk using disk snapshot ID XXX, then entire disk is not downloaded, but only the delta (between 5th snapshot and 6th snapshot) is downloaded. Expected results: For the Backup Purpose, we do not want to retain the chain of snapshots, but we want to download entire disk using snapshot ID XXX, which is created for backup purpose, with REST API (i.e. using proxy_url and signed ticket). In short, given a disk snapshot ID, entire disk should be downloadable and not just delta. Additional info: This would simplify the restore process, because while doing restore, we will need to upload only one disk and create VM out of it.
If you do not need individual snapshots, how is it different from simple download of whole VM, e.g. by simple https://github.com/oVirt/ovirt-engine-sdk/blob/master/sdk/examples/export_vm_as_ova.py?
You can also merge all the snapshot to the base using qemu-img.
(In reply to Yaniv Lavi from comment #2) > You can also merge all the snapshot to the base using qemu-img. Thanks Yaniv, But for that, eventually we have to download all snapshot disks to our backup appliance and then use qemu-img. This will increase the size of download than actual size of base image.
(In reply to Ketan from comment #3) > (In reply to Yaniv Lavi from comment #2) > > You can also merge all the snapshot to the base using qemu-img. > > Thanks Yaniv, > But for that, eventually we have to download all snapshot disks to our > backup appliance and then use qemu-img. This will increase the size of > download than actual size of base image. Also, we will need to first stage everything on backup appliance then take backup of merged disk. But, if we get direct download stream (of view of all merged snapshots), then we can directly pass it to our backup stream. This will not need any staging to be done on our side.
comment #1 then?
(In reply to Michal Skrivanek from comment #5) > comment #1 then? We don't want to stage the data on machine and then send to tape. In enterprises, data disks can be huge and staging storage will not be practical for us when we backup data everyday. It will be good if we ask data on certain extent of snapshot disk and oVirt retrieves the data by traversing the snapshot chain.
Hi Ketan, Do you mean that you'd like to download an entire disk starting from snapshot n and downwards? (i.e. collapse all snapshots to one starting from the n snapshot to the base one)
Yes exactly.
We will be address this request as part of BZ #1217820. For now I recommend keeping a reference of last backup snapshot as reference point and download the rest of the chain. For marges of snapshots, please use qemu-img post the backup process. *** This bug has been marked as a duplicate of bug 1217820 ***