On 10/26/2013 11:37 AM, Xinyang Ge wrote: >> External snapshots (via the blockdev-snapshot-sync QMP command) can be >> taken in a matter of milliseconds if you only care about disk state. >> Furthermore, if you want to take a snapshot of both memory and disk >> state, such that the clone can be resumed from the same time, you can do >> that with a guest downtime that only lasts as long as the >> blockdev-snapshot-sync, by first doing a migrate to file then doing the >> disk snapshot when the VM pauses at the end of migration. Resuming the >> original guest is fast; resuming from the migration file is a bit >> longer, but it is still the fastest way possible to resume from a >> memory+disk snapshot. If you need anything faster, then yes, you would >> have to write patches to qemu to attempt cloning via fork() that makes >> sure to modify the active disk in use by the fork child so as not to >> interfere with the fork parent. > > I think migrating memory to file then doing external disk snapshot is > exactly what we want. Since we are using libvirt to manage different > VMs, could you give us some specific guides (or references) that how > we could migrate memory state to file using virsh interfaces and do > external snapshots?
virsh snapshot-create-as $dom $name --live --memspec /path/to/memoryfile Libvirt usage questions might be better directed to the libvirt lists. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature