On 05/22/2014 04:31 PM, Andrew Martin wrote: > Hello, > [Can you convince your mailer to wrap long lines?] > I am working on a script to automatically create live snapshots of > running VMs using qemu-kvm 1.4.0 and libvirt 1.0.2. If a VM has Any reason you aren't upgrading to newer versions? Although these seem sufficient for what you are trying. > multiple disks, I'd like to back them up individually with separate > calls to snapshot-create-as, so I can more easily manage the disk > images. The code I have now is essentially as follows: > virsh snapshot-create-as --domain "vmname" --name "snapshotname" --description "snapshot description" --disk-only --atomic --no-metadata --diskspec "vda" > > I run this command for each block device (e.g vda, vdb, etc). However, after running the above command (to only backup vda), I see that a snapshot has also been created for vdb. I tried running it with --print-xml, which gives this output: > <domainsnapshot> > <name>05-22-14_17-09-25</name> > <description>05-22-14_17-09-25</description> > <disks> > <disk name='vda'/> > </disks> The problem you are facing is that the snapshot code MUST have an action for every disk; and if you don't specify the action directly in your <domainsnapshot> xml, then the action chosen is inherited from the <domain> xml (if you used <disk snapshot='no'>) or ultimately from the type of snapshot you are creating (here, since you didn't use <disk snapshot='no'> in the domain xml, and didn't specify vdb in the <domainsnapshot>, libvirt assumes from --disk-only that you want vdb to have an external snapshot taken). > </domainsnapshot> > > What am I doing wrong - how can I tell snapshot-create-as to create an external snapshot for a specific block device only (not all block devices)? Use: --diskspec vda --diskspec vdb,snapshot=no which produces this subset of xml: <disks> <disk name='vda'/> <disk name='vdb' snapshot='no'/> </disks> > > Also, while looking at the manpage, does the --live option do anything different if used with the above command? --live only makes sense when mixed with memory snapshots (with --memspec); but as you are doing a --disk-only snapshot, it doesn't help (I'm not sure if it will error out as mutually exclusive or just be silently ignored, without reading the code). -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ libvirt-users mailing list libvirt-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvirt-users