On 11/12/2010 02:07 AM, 黄亮 wrote:
Hi Alex
Thank you for your reply.
I just wanna make sure I'm not misunderstanding, virStorageVolGetXMLDesc & virStorageVolCreateXMLFrom together can do the clone process, am I right?
In fact, libvirt will call a group of APIs to complete vol-clone operation, you can track the whole calling process, it looks like this: virsh vol-clone <vol-key> <newname>
                                                                           |
                                                                          V
virConnectOpenAuth
                                                                           |
                                                                          V
virStorageVolLookupByKey
                                                                           |
                                                                          V
virStoragePoolLookupByVolume ('default' is default pool)
                                                                           |
                                                                          V
virStorageVolGetXMLDesc
                                                                           |
                                                                          V
virStorageVolCreateXMLFrom
                                                                           |
                                                                          V
virStorageVolGetName (twice) |
                                                                          V
virStorageVolFree (twice) |
                                                                          V
virStoragePoolFree
                                                                           |
                                                                          V
virConnectClose


  Alex
Regards
2010-11-12
------------------------------------------------------------------------
Lancer
------------------------------------------------------------------------
*发件人:* Alex Jia
*发送时间:* 2010-11-10  13:28:21
*收件人:* 黄亮
*抄送:* libvir-list
*主题:* Re: [libvirt] Is there an API for clone?
Hi lancer,
As Osier said, libvirt hasn't a independent API for cloning an
existing guest, instead of using virStorageVolGetXMLDesc API to
get a guest volume xml description and then calling
virStorageVolCreateXMLFrom API to clone a new volume.
For python-virtinst component, you may use virt-clone to implement
this, for libvirt component, you may directly use python binding
API or virsh tool 'vol-clone' to implement it.
I hope it's helpful for you.
- Alex
----- Original Message -----
From: "黄亮" <[email protected]>
To: "libvir-list" <[email protected]>
Sent: Wednesday, November 10, 2010 9:30:28 AM GMT +08:00 Beijing / Chongqing / 
Hong Kong / Urumqi
Subject: [libvirt] Is there an API for clone?
Hi, guys
I know there is a command "virt-clone", but I couldn't find the equivalent API here : http://libvirt.org/html/libvirt-libvirt.html
So, is there an API to clone an existing VM or not?
Thank you!
Regards
2010-11-10
Lancer
--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list
__________ Information from ESET Smart Security, version of virus signature 
database 5605 (20101109) __________
The message was checked by ESET Smart Security.
http://www.eset.com

--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to