Features/VMSnapshotEnchancement

From QEMU

VM Back up enhancement

This feature will enhance VM backup functionality, to make it possible taking internal/external snapshots lively, and make it works better with underlining components such as LVM.

  • Name: Wenchao Xia
  • Email: xiawenc@linux.vnet.ibm.com, xiaxia347os@163.com

General Summary

This feature would provide APIs that can do:

  • 1 block device live snapshot as internal/external/blank delta data, export sync API for all type.
  • 2 vmstate live save as internal/external data, export async API for external data, fix the size problem.
  • 3 combination(internal block snapshot + internal vmstate save, internal block snapshot + external vmstate save, external block snapshot external vmstate save).

Component Details

Now qemu support block device live external snapshot, live migration to file, static internal block snapshot + internal vmstate save, following are the blanks need to be filled:

  • 1 block device live internal snapshot, block device data drain, provide the interfaces in unified style.
  • 2 change vmstate save from static to live, fix the problem that size is not predictable, add support to save vmstate to external file format that qemu support(raw, qcow2...).
  • 3 an API allow management stack configure the combination.
  • 4 qmp/hmp for related information retrieving.

User Cases

General goal from backup application persperctive: Vmbackup Common goal.jpg