qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH 0/2] live backup vm


From: Wenchao Xia
Subject: Re: [Qemu-devel] [RFC PATCH 0/2] live backup vm
Date: Wed, 12 Dec 2012 10:16:06 +0800
User-agent: Mozilla/5.0 (Windows NT 5.1; rv:16.0) Gecko/20121026 Thunderbird/16.0.2

  OK, I'll adjust the code into the upstream framework, thanks for your
declaration.

> OK, I will try to give a short overview on the functionality.
> 
> First, we decided to use 'internal' snapshots for our 'live snapshot' 
> implementation.
> Internal snapshots almost always use some kind of reference counting, making
> snapshot action (like 'create/delete snapshot') quite efficient and fast.
> 
> Internal snapshot totally depends on the storage backend. For now we can 
> create
> internal snapshots on the following storage backend:
> 
> * qcow2 files
> * rbd
> * sheepdog
> * nexenta iscsi
> 
> As you can see, creating internal snapshots sometimes needs external tool. 
> For example we use  the
> nexenta API to create snapshots, while we use libiscsi to access them inside 
> qemu.
> 
> So our snapshot implementation uses the following steps:
> 
> 1.) qmp: savevm-start [statefile]
> 
> This save the VM state into [statefile] and then stops the VM.
> 
> 2.) qga freezefs
> 
> 3.) create snapshots: either using external tools or by qmp: snapshot-drive
> 
> 4.) gqa unfreezefs
> 
> 5.) qmp: savevm-end
> 
> This restarts/resumes the VM
> 
>>     Have some questions:
>>     in qmp_savevm_start(), vm_stop(RUN_STATE_SAVE_VM), I think this will
>> stop the VM running make it not lively, am I right?
> 
> Yes, we need to halt the VM for a short period of time while we make
> snapshots. But that time is usually short.
> 
> - Dietmar
> 


-- 
Best Regards

Wenchao Xia




reply via email to

[Prev in Thread] Current Thread [Next in Thread]