From: Dor Laor <dlaor@redhat.com> To: Jagane Sundar <jagane@sundar.org> Cc: Kevin Wolf <kwolf@redhat.com>, Anthony Liguori <aliguori@us.ibm.com>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>, Jes Sorensen <Jes.Sorensen@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>, qemu-devel <qemu-devel@nongnu.org>, Avi Kivity <avi@redhat.com>, Stefan Hajnoczi <stefan.hajnoczi@uk.ibm.com> Subject: Re: [RFC] live snapshot, live merge, live block migration Date: Mon, 16 May 2011 10:53:40 +0300 [thread overview] Message-ID: <4DD0D804.7070305@redhat.com> (raw) In-Reply-To: <4DD047D2.2020201@sundar.org> On 05/16/2011 12:38 AM, Jagane Sundar wrote: > Hello Dor, >> One important advantage of live snapshot over live backup is support of >> multiple (consecutive) live snapshots while there can be only a single >> live backup at one time. >> >> This is why I tend to think that although live backup carry some benefit >> (no merge required), the live snapshot + live merge are more robust >> mechanism. >> > > The two things that concern me regarding the > live snapshot/live merge approach are: > 1. Performance considerations of having > multiple active snapshots? My description above was in accurate and I only hinted that multiple snapshots are possible but they are done consecutively - Live snapshot takes practically almost no time - just the time to get the guest virtagent to freeze the guest FS and to create the snapshot (for qcow2 is immediate). So if you like to have multiple snapshot, let's say 5 minute after you issued the first snapshot, there is no problem. The new writes will go to the snapshot while the former base is marked as read only. Eventually you like to (live) merge the snapshots together. This can be done in any point in time. > 2. Robustness of this solution in the face of > errors in the disk, etc. If any one of the snapshot > files were to get corrupted, the whole VM is > adversely impacted. Since the base images and any snapshot which is not a leaf is marked as read only there is no such risk. > > The primary goal of Livebackup architecture was to have zero > performance impact on the running VM. > > Livebackup impacts performance of the VM only when the > backup client connects to qemu to transfer the modified > blocks over, which should be, say 15 minutes a day, for a > daily backup schedule VM. In case there were lots of changing for example additional 50GB changes it will take more time and there will be a performance hit. > > One useful thing to do is to evaluate the important use cases > for this technology, and then decide which approach makes > most sense. As an example, let me state this use case: > - A IaaS cloud, where VMs are always on, running off of a local > disk, and need to be backed up once a day or so. > > Can you list some of the other use cases that live snapshot and > live merge were designed to solve. Perhaps we can put up a > single wiki page that describes all of these proposals. Both solutions can serve for the same scenario: With live snapshot the backup is done the following: 1. Take a live snapshot (s1) of image s0. 2. Newer writes goes to the snapshot s1 while s0 is read only. 3. Backup software processes s0 image. There are multiple ways for doing that - 1. Use qemu-img and get the dirty blocks from former backup. - Currently qemu-img does not support it. - Nevertheless, such mechanism will work for lvm, btrfs, NetApp 2. Mount the s0 image to another guest that runs traditional backup software at the file system level and let it do the backup. 4. Live merge s1->s0 We'll use live copy for that so each write is duplicated (like your live backup solution). 5. Delete s1 As you can see, both approaches are very similar, while live snapshot is more general and not tied to backup specifically. > > Thanks, > Jagane >
WARNING: multiple messages have this Message-ID (diff)
From: Dor Laor <dlaor@redhat.com> To: Jagane Sundar <jagane@sundar.org> Cc: Kevin Wolf <kwolf@redhat.com>, Anthony Liguori <aliguori@us.ibm.com>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>, Jes Sorensen <Jes.Sorensen@redhat.com>, Marcelo Tosatti <mtosatti@redhat.com>, qemu-devel <qemu-devel@nongnu.org>, Avi Kivity <avi@redhat.com>, Stefan Hajnoczi <stefan.hajnoczi@uk.ibm.com> Subject: Re: [Qemu-devel] [RFC] live snapshot, live merge, live block migration Date: Mon, 16 May 2011 10:53:40 +0300 [thread overview] Message-ID: <4DD0D804.7070305@redhat.com> (raw) In-Reply-To: <4DD047D2.2020201@sundar.org> On 05/16/2011 12:38 AM, Jagane Sundar wrote: > Hello Dor, >> One important advantage of live snapshot over live backup is support of >> multiple (consecutive) live snapshots while there can be only a single >> live backup at one time. >> >> This is why I tend to think that although live backup carry some benefit >> (no merge required), the live snapshot + live merge are more robust >> mechanism. >> > > The two things that concern me regarding the > live snapshot/live merge approach are: > 1. Performance considerations of having > multiple active snapshots? My description above was in accurate and I only hinted that multiple snapshots are possible but they are done consecutively - Live snapshot takes practically almost no time - just the time to get the guest virtagent to freeze the guest FS and to create the snapshot (for qcow2 is immediate). So if you like to have multiple snapshot, let's say 5 minute after you issued the first snapshot, there is no problem. The new writes will go to the snapshot while the former base is marked as read only. Eventually you like to (live) merge the snapshots together. This can be done in any point in time. > 2. Robustness of this solution in the face of > errors in the disk, etc. If any one of the snapshot > files were to get corrupted, the whole VM is > adversely impacted. Since the base images and any snapshot which is not a leaf is marked as read only there is no such risk. > > The primary goal of Livebackup architecture was to have zero > performance impact on the running VM. > > Livebackup impacts performance of the VM only when the > backup client connects to qemu to transfer the modified > blocks over, which should be, say 15 minutes a day, for a > daily backup schedule VM. In case there were lots of changing for example additional 50GB changes it will take more time and there will be a performance hit. > > One useful thing to do is to evaluate the important use cases > for this technology, and then decide which approach makes > most sense. As an example, let me state this use case: > - A IaaS cloud, where VMs are always on, running off of a local > disk, and need to be backed up once a day or so. > > Can you list some of the other use cases that live snapshot and > live merge were designed to solve. Perhaps we can put up a > single wiki page that describes all of these proposals. Both solutions can serve for the same scenario: With live snapshot the backup is done the following: 1. Take a live snapshot (s1) of image s0. 2. Newer writes goes to the snapshot s1 while s0 is read only. 3. Backup software processes s0 image. There are multiple ways for doing that - 1. Use qemu-img and get the dirty blocks from former backup. - Currently qemu-img does not support it. - Nevertheless, such mechanism will work for lvm, btrfs, NetApp 2. Mount the s0 image to another guest that runs traditional backup software at the file system level and let it do the backup. 4. Live merge s1->s0 We'll use live copy for that so each write is duplicated (like your live backup solution). 5. Delete s1 As you can see, both approaches are very similar, while live snapshot is more general and not tied to backup specifically. > > Thanks, > Jagane >
next prev parent reply other threads:[~2011-05-16 7:53 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-05-09 13:40 [Qemu-devel] [RFC] live snapshot, live merge, live block migration Dor Laor 2011-05-09 15:23 ` Anthony Liguori 2011-05-09 20:58 ` Dor Laor 2011-05-12 14:18 ` Marcelo Tosatti 2011-05-12 15:37 ` Jes Sorensen 2011-05-10 14:13 ` Marcelo Tosatti 2011-05-12 15:33 ` Jes Sorensen 2011-05-13 3:16 ` Jagane Sundar 2011-05-15 21:14 ` Dor Laor 2011-05-15 21:38 ` Jagane Sundar 2011-05-15 21:38 ` Jagane Sundar 2011-05-16 7:53 ` Dor Laor [this message] 2011-05-16 7:53 ` Dor Laor 2011-05-16 8:23 ` Jagane Sundar 2011-05-16 8:23 ` [Qemu-devel] " Jagane Sundar 2011-05-17 22:53 ` Dor Laor 2011-05-17 22:53 ` [Qemu-devel] " Dor Laor 2011-05-18 15:49 ` Jagane Sundar 2011-05-18 15:49 ` Jagane Sundar 2011-05-20 12:19 ` Stefan Hajnoczi 2011-05-20 12:39 ` Jes Sorensen 2011-05-20 12:49 ` Stefan Hajnoczi 2011-05-20 12:56 ` Jes Sorensen 2011-05-22 9:52 ` Dor Laor 2011-05-23 13:02 ` Stefan Hajnoczi 2011-05-27 16:46 ` Stefan Hajnoczi 2011-05-27 17:16 ` Jagane Sundar 2011-05-23 5:42 ` Jagane Sundar
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4DD0D804.7070305@redhat.com \ --to=dlaor@redhat.com \ --cc=Jes.Sorensen@redhat.com \ --cc=aliguori@us.ibm.com \ --cc=avi@redhat.com \ --cc=jagane@sundar.org \ --cc=kvm@vger.kernel.org \ --cc=kwolf@redhat.com \ --cc=mtosatti@redhat.com \ --cc=qemu-devel@nongnu.org \ --cc=stefan.hajnoczi@uk.ibm.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.