[libvirt-users] virsh snapshot-create and blockcopy

Thomas Stein himbeere at meine-oma.de
Mon Jun 10 09:24:34 UTC 2013


Am 10.06.13 10:40, schrieb Kashyap Chamarthy:
> On 06/10/2013 01:20 PM, Thomas Stein wrote:
>> Am 10.06.13 09:07, schrieb Kashyap Chamarthy:
>>> On 06/09/2013 02:46 PM, Thomas Stein wrote:
>>>> Hello.
>>>>
>>>> I just tried the following:
>>>>
>>>> virsh dumpxml --security-info gentoo-template > gentoo-template.xml
>>>> virsh snapshot-create gentoo-template
>>>> virsh undefine gentoo-template
>>>
>>> Wait - is that really the command you used after "snapshot-create" ?
>> 
>>> Because: You cannot undefine a guest with a snapshot without first deleting its metadata
>>>
>>> To cleanly delete, maybe you should've done:
>>>
>>>   $ virsh snapshot-delete --domain gentoo-template SNAPSHOTID --metadata
>> 
>> Did that. But that deletes that snapshot too, no?
> 
> Yes. (I just understood what you wanted to do). Noted my details below.
> 
> 
>> 
>>>
>>>> virsh blockcopy gentoo-template vda
>>>> /opt/virt-backup-blockcopy/gentoo-template/gentoo-template.qcow2 --wait --verbose --finish
>>>> virsh define gentoo-template.xml
>>>
>>> Can you also paste the output of:
>>>
>>>   $ qemu-img info --backing-chain \
>>>   /opt/virt-backup-blockcopy/gentoo-template/gentoo-template.qcow2
>> 
>> hn ~ # qemu-img info --backing-chain
>> /opt/virt-backup-blockcopy/gentoo-template/gentoo-template.qcow2
>> image: /opt/virt-backup-blockcopy/gentoo-template/gentoo-template.qcow2
>> file format: qcow2
>> virtual size: 130G (139586437120 bytes)
>> disk size: 30G
>> cluster_size: 65536
>> 
>> Just to make myself clear. I want to backup the qcow image /with/ the
>> internal snapshot. Is that even possible with blockcopy?
> 
> Let's try. I just did the below test (also I noted it in the URL below)
> 
> # Take an (internal) snapshot when the guest was shutdown

Okay. So even a snapshot taken while the machine is off is not
preserved. That's a pity.

Thank you anyway .

best regards
t.

> $ virsh snapshot-list fed18
>  Name                 Creation Time             State
> ------------------------------------------------------------
>  1370847718           2013-06-10 12:31:58 +0530 shutoff
> 
> 
> # Start the guest
> $ virsh start fed18
> 
> 
> # Undefine the guest while it is running - this will
> # make the guest transient (libvirt expects it to be 'transient')
> $ virsh undefine fed18
> Domain fed18 has been undefined
> 
> 
> # List the guest
> root@~$ virsh list
>  Id    Name                           State
> ----------------------------------------------------
>  3     fed18                          running
> 
> $
> 
> 
> # Do blockcopy (it's only when the guest is "live")
> $ virsh blockcopy --domain fed18 vda \
> /export/backup/images/fed18.qcow2 --wait --finish --verbose
> Block Copy: [ 100 %]
> 
> 
> # Query the info of original image:
> ===========
> root@~$ qemu-img info --backing-chain  /var/lib/libvirt/images/el6box1.qcow2
> image: /var/lib/libvirt/images/el6box1.qcow2
> file format: qcow2
> virtual size: 10G (10737418240 bytes)
> disk size: 1.2G
> cluster_size: 65536
> Snapshot list:
> ID        TAG                 VM SIZE                DATE       VM CLOCK
> 1         1370853048                0 2013-06-10 14:00:48   00:00:00.000
> ===========
> $ qemu-img snapshot -l /var/lib/libvirt/images/el6box1.qcow2
> Snapshot list:
> ID        TAG                 VM SIZE                DATE       VM CLOCK
> 1         1370853048                0 2013-06-10 14:00:48   00:00:00.000
> ===========
> 
> # Query info of the backup:
> ===========
> $ qemu-img info --backing-chain  /export/backup/images/el6box1-back.qcow2
> image: /export/backup/images/el6box1-back.qcow2
> file format: qcow2
> virtual size: 10G (10737418240 bytes)
> disk size: 10G
> cluster_size: 65536
> ===========
> $ qemu-img snapshot -l /export/backup/images/el6box1-back.qcow2
> ===========
> 
> Hm, from what it looks, it doesn't appear to preserve the internal snapshot..
> 
>> 
>>> http://kashyapc.fedorapeople.org/virt/lc-2012/live-backup-with-blockcopy.txt
>>>
> 
> 
> 




More information about the libvirt-users mailing list