[libvirt] [RFC PATCH REBASE 00/10] introduce push backups

Daniel P. Berrange berrange at redhat.com
Wed May 10 08:11:51 UTC 2017


On Fri, May 05, 2017 at 09:22:21AM +0300, Nikolay Shirokovskiy wrote:
> Push backup is a backup when hypervisor itself copy backup data to destination
> in contrast to pull backup when hypervisor exports backup data thru some
> interface and mgmt itself make a copy.
> 
> This patch series basically adds creating backup to API/remote/qemu/virsh and
> initial backup XML definition.
> 
> Just like other blockjobs backup creation is asynchronous. That is creation is
> merely a backup start and client should track backup error/completion thru
> blockjob events. As backup is done transactionally all individual disk backup
> jobs will be aborted by qemu itself in case of error, client need not to do it
> manually. Client can cancel the backup by aborting blockjob on any disk being
> backed up.
> 
> Backup xml desription is similar to snapshot one with some exceptions and is
> described in more details in definition patch [1].
> 
> I guess good client will track progress for every disk in backup to report
> progress and detect hangs so it don't need extra backup complete/error event
> that aggregate the overall backup result. However it looks like aborting backup
> can be implemented in libvirt as code will be common for all clients. We need
> to abort some of not yet completed per disk backups and retry if job to be
> aborted is completed meanwhile.
> 
> Of coures this series is far from being complete. Incremental backups and
> backup persistent metadata is to be implemented. Let's just start work in this
> direction.

I've not done a detailed code review, but from a high level design POV, I
think things like API, RPC, etc, look good.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




More information about the libvir-list mailing list