Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
On 3/3/14 17:14 , Eric Blake ebl...@redhat.com wrote: On 11/18/2013 09:38 AM, Tomoki Sekiyama wrote: Currently FSFreeze and FSThaw are supported by qemu guest agent and they are used internally in snapshot-create command with --quiesce option. However, when users want to utilize the native snapshot feature of storage devices (such as LVM over iSCSI, various enterprise storage systems, etc.), they need to issue fsfreeze command separately from libvirt-driven snapshots. (OpenStack cinder provides these storages' snapshot feature, but it cannot quiesce the guest filesystems automatically for now.) Although virDomainQemuGuestAgent() API could be used for this purpose, it depends too much on specific hypervisor implementation. This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. The APIs has mountPoint and flags option currently unsupported for future extension, as virDomainFSTrim() API. Duplicated FSFreeze results in error caused by qemu guest agent. Hmm, I just realized this hasn't seen any response in a couple of months. I still haven't looked closely at the thread, but definitely think we need to add this (or something like it). Thanks. Based on previous discussion on last November, now I'm getting ready to Post virDomainQuiesce version, which does fsfreeze and fsthaw in a single API, with callback event to notify a client that guest fs are frozen so that the client can register custom event handler to create snapshot. It will use qemu async job mechanism to manage quiesced state and to exclude from the other APIs. Please feel free to ping the list every week or two if you don't seem to be getting a response, rather than letting it languish for a quarter of a year! -- Eric Blake eblake redhat com+1-919-301-3266 Libvirt virtualization library http://libvirt.org Thanks, -- Tomoki Sekiyama -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
On Tue, Mar 04, 2014 at 10:11:39AM -0700, Eric Blake wrote: On 03/04/2014 08:39 AM, Tomoki Sekiyama wrote: This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. Thanks. Based on previous discussion on last November, now I'm getting ready to Post virDomainQuiesce version, which does fsfreeze and fsthaw in a single API, No - the discussion back in November was questioning whether a callback would work, and the decision was that it was too complicated. Go with two API (freeze and thaw) and merely make sure that we lock out any other command that won't work while a freeze is in effect. Yep, I don't believe a single API will work, and we should have separate calls. We just need to track the sanity internally to the QEMU driver. Regards, Daniel -- |: http://berrange.com -o-http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
On 03/04/2014 08:39 AM, Tomoki Sekiyama wrote: This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. Thanks. Based on previous discussion on last November, now I'm getting ready to Post virDomainQuiesce version, which does fsfreeze and fsthaw in a single API, No - the discussion back in November was questioning whether a callback would work, and the decision was that it was too complicated. Go with two API (freeze and thaw) and merely make sure that we lock out any other command that won't work while a freeze is in effect. -- Eric Blake eblake redhat com+1-919-301-3266 Libvirt virtualization library http://libvirt.org signature.asc Description: OpenPGP digital signature -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
On 3/4/14 12:13 , Daniel P. Berrange berra...@redhat.com wrote: On Tue, Mar 04, 2014 at 10:11:39AM -0700, Eric Blake wrote: On 03/04/2014 08:39 AM, Tomoki Sekiyama wrote: This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. Thanks. Based on previous discussion on last November, now I'm getting ready to Post virDomainQuiesce version, which does fsfreeze and fsthaw in a single API, No - the discussion back in November was questioning whether a callback would work, and the decision was that it was too complicated. Go with two API (freeze and thaw) and merely make sure that we lock out any other command that won't work while a freeze is in effect. Yep, I don't believe a single API will work, and we should have separate calls. We just need to track the sanity internally to the QEMU driver. OK, I will add sanity checking in the FSFreeze and FSThaw API. Thanks, -- Tomoki Sekiyama -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
On 11/18/2013 09:38 AM, Tomoki Sekiyama wrote: Currently FSFreeze and FSThaw are supported by qemu guest agent and they are used internally in snapshot-create command with --quiesce option. However, when users want to utilize the native snapshot feature of storage devices (such as LVM over iSCSI, various enterprise storage systems, etc.), they need to issue fsfreeze command separately from libvirt-driven snapshots. (OpenStack cinder provides these storages' snapshot feature, but it cannot quiesce the guest filesystems automatically for now.) Although virDomainQemuGuestAgent() API could be used for this purpose, it depends too much on specific hypervisor implementation. This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. The APIs has mountPoint and flags option currently unsupported for future extension, as virDomainFSTrim() API. Duplicated FSFreeze results in error caused by qemu guest agent. Hmm, I just realized this hasn't seen any response in a couple of months. I still haven't looked closely at the thread, but definitely think we need to add this (or something like it). Please feel free to ping the list every week or two if you don't seem to be getting a response, rather than letting it languish for a quarter of a year! -- Eric Blake eblake redhat com+1-919-301-3266 Libvirt virtualization library http://libvirt.org signature.asc Description: OpenPGP digital signature -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 0/4] Expose FSFreeze/FSThaw within the guest as commands
Any comments? On 11/18/13 11:38 , Tomoki Sekiyama tomoki.sekiy...@hds.com wrote: Currently FSFreeze and FSThaw are supported by qemu guest agent and they are used internally in snapshot-create command with --quiesce option. However, when users want to utilize the native snapshot feature of storage devices (such as LVM over iSCSI, various enterprise storage systems, etc.), they need to issue fsfreeze command separately from libvirt-driven snapshots. (OpenStack cinder provides these storages' snapshot feature, but it cannot quiesce the guest filesystems automatically for now.) Although virDomainQemuGuestAgent() API could be used for this purpose, it depends too much on specific hypervisor implementation. This patchset adds virDomainFSFreeze()/virDomainFSThaw() APIs and virsh domfsfreeze/domfsthaw commands to enable the users to freeze and thaw domain's filesystems cleanly. The APIs has mountPoint and flags option currently unsupported for future extension, as virDomainFSTrim() API. Duplicated FSFreeze results in error caused by qemu guest agent. --- Tomoki Sekiyama (4): Introduce virDomainFSFreeze() public API remote: Implement virDomainFSFreeze and virDomainFSThaw qemu: Implement virDomainFSFreeze virsh: Expose new virDomainFSFreeze and virDomainFSThaw API include/libvirt/libvirt.h.in |8 ++ src/access/viraccessperm.c |2 - src/access/viraccessperm.h |6 ++ src/driver.h | 12 src/libvirt.c| 92 +++ src/libvirt_public.syms |6 ++ src/qemu/qemu_driver.c | 142 ++ src/remote/remote_driver.c |2 + src/remote/remote_protocol.x | 26 +++- src/remote_protocol-structs | 12 src/rpc/gendispatch.pl |2 + tools/virsh-domain.c | 108 tools/virsh.pod | 17 + 13 files changed, 433 insertions(+), 2 deletions(-) -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list