Re: Livebackup feature for qemu/qemu-kvm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 5/2/2011 7:36 AM, Jes Sorensen wrote:
On 05/02/11 00:23, Jagane Sundar wrote:
Having a live backup feature for kvm will make it a better solution for
IaaS clouds compared to xen. I would like to solicit feedback from all
of you folks involved in the block subsystem of qemu. Stefan mentioned
that Jes is the person most intimately involved in the block subsystem,
so Jes - your feedback is particularly important.
Jagane,

Reading your page, the first thing I stumble upon under 'Use Cases' is
the reference to EBS storage. What is that?
EBS stands for Elastic Block Storage - Amazon EC2's shared storage solution. This is the storage
that comes with guarantees, since it is replicated across machines.
Under details, I think it is not a good idea to rely on QEMU looking for
any files with specific file name suffixes. It really should be
specified on the command line by the user or admin tool.
That's a good idea. Perhaps another attribute in the drive description list,
just like type=virtio, maybe backup=livebackup.
Other questions, how do you plan to handle crashes or loss of network
connection in the middle of a livebackup? How about handling corrupted
livebackup files?
Crashes of various software:
1. qemu crashes during normal operation of the VM:
When this happens, the livebackup_client is forced to do a full backup the next time around. Here's how: livebackup writes out the in-memory dirty bitmap to a dirty bitmap file only at the time of orderly shutdown of qemu. Hence, the mtime of the virtual disk file is later than the mtime of the livebackup dirty bitmap file. This causes livebackup to consider the dirty bitmap invalid,
    and forces the livebackup_client to do a full backup next time around.
2. qemu crashes while livebackup is in progress:
In this case also, the livebackup_client is forced to do a full backup the next time around. The dirty bitmap file, the COW file used to store blocks written while a livebackup is in progress, are all deleted, and the livebackup client
   is forced to do a full backup next time around.
3. livebackup_client crashes while livebackup is in progress:
In this case, a new livebackup_client may be started, and it can redo the last type of backup it was doing - an incremental backup or a full backup. Note all the blocks of the last backup type need to be transferred over again, the qemu livebackup code does not keep track of what block the client was at.
    It does not need to be a forced full backup.
In general it looks interesting, you could consider submitting a
presentation about Livebackup to the KVM Forum 2011.

Glad to know that you think it is interesting. Also, thanks for the pointer to KVM Forum 2011, Jes. It looks like I have a few more weeks to get an abstract
in for KVM forum 2011. I will do so.

Jagane
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux