Feature #1224

Support VM snapshots

Added by Ruben S. Montero about 9 years ago. Updated over 8 years ago.

Status:ClosedStart date:04/12/2012
Priority:NormalDue date:
Assignee:Jaime Melis% Done:

0%

Category:Drivers - Auth
Target version:Release 4.0
Resolution:fixed Pull request:

Description

Create system (disk+memory) VM snapshots, and the associated actions:
  • list snapshots for a vm
  • revert to a given snapshot

Associated revisions

Revision 08399c57
Added by Carlos Martín over 8 years ago

Feature #1224: New method one.vm.snapshotcreate

Revision 21183d2a
Added by Carlos Martín over 8 years ago

Feature #1224: Fix snapshot attribute creation

Revision 91c0daa7
Added by Carlos Martín over 8 years ago

Feature #1224: New command onevm snapshot-create

Revision 34252562
Added by Jaime Melis over 8 years ago

Feature #1224: Add snapshot_create vmm/kvm driver action

Revision a1f7b431
Added by Jaime Melis over 8 years ago

Feature #1224: Add placeholder for vmware and xen snapshot_create actions

Revision 73a36f77
Added by Jaime Melis over 8 years ago

Feature #1224: Return proper hypervisor_id to the core

Revision 8fbca1c3
Added by Jaime Melis over 8 years ago

Feature #1224: Remove debugging info

Revision 06f60a66
Added by Jaime Melis over 8 years ago

Feature #1224: Add snapshot_revert driver action

Revision 34c542b6
Added by Jaime Melis over 8 years ago

Feature #1224: Fix snapshotting not supported message for VMware

Revision 87b5de9c
Added by Carlos Martín over 8 years ago

Feature #1224: New xmlrpc method one.vm.snapshotrevert

Revision f2dce5f9
Added by Carlos Martín over 8 years ago

Feature #1224: New command onevm snapshot-revert

Revision 1f6ed22d
Added by Carlos Martín over 8 years ago

Feature #1224: Fix bug in onevm snapshot-revert

Revision ddcc7dc6
Added by Carlos Martín over 8 years ago

Feature #1224: Accept empty names for new snapshots

Revision 75a66927
Added by Carlos Martín over 8 years ago

Feature #1224: Make the snapshot name optional in the CLI

Revision 1177d1fb
Added by Carlos Martín over 8 years ago

Feature #1224: one.vm.snapshotcreate returns the ID of the new snapshot

Revision ac87bd78
Added by Carlos Martín over 8 years ago

Feature #1224: Delete the snapshot attributes when the VMs leave the RUNNING state

Revision f94ba3da
Added by Carlos Martín over 8 years ago

Feature #1224: onevm show formats the snapshots in a table

Revision 51de89ff
Added by Carlos Martín over 8 years ago

Feature #1224: Allow snapshot commands for multiple VMs

Revision e3380cba
Added by Carlos Martín over 8 years ago

Feature #1224: snapshot-create can be scheduled

Revision d1b7fd1b
Added by Jaime Melis over 8 years ago

Feature #1224: New command onevm snapshot-delete

Revision cdf780e4
Added by Jaime Melis over 8 years ago

Feature #1224: New vmm driver action snapshot-delete

Revision bf7aab9a
Added by Jaime Melis over 8 years ago

Feature #1224: Fix bug in LCM method snapshot_revert_success

Revision 44658d5a
Added by Jaime Melis over 8 years ago

Feature #1224: The name of the snapshot is up to the driver

Revision 4391225f
Added by Carlos Martín over 8 years ago

Feature #1224: Minor edits

Revision 29fc00ea
Added by Jaime Melis over 8 years ago

Feature #1224: The hypervisor_id of the snapshot for Libvirt/KVM is decided by Libvirt

Revision 1e23b81f
Added by Jaime Melis over 8 years ago

Feature #1224: Fix bug in no snapshot support error message reporting

Revision 4296c5e6
Added by Jaime Melis over 8 years ago

Feature #1224: add vmware drivers

Revision 43398673
Added by Jaime Melis over 8 years ago

Feature #1224: the snapshot create method doesn't need snapshot_id

Revision 4a92a51e
Added by Jaime Melis over 8 years ago

Feature #1224: snapshot-* actions should be local for the vmware driver

Revision 7c819252
Added by Ruben S. Montero over 8 years ago

feature #1224: Get rid of unused method in VirtualMachine

Revision 78e71d42
Added by Ruben S. Montero over 8 years ago

feature #1224: split HOTPLUG state into HOTPLUG & HOTPLUG_SNAPSHOT

Revision 8f7b3ec9
Added by Ruben S. Montero over 8 years ago

feature #1224: Implement snapshot interface for the dummy driver

Revision fe07df00
Added by Carlos Martín over 8 years ago

Feature #1224: Add snapshot methods to Java OCA

History

#1 Updated by Ruben S. Montero about 9 years ago

  • Target version changed from Release 3.6 to Release 3.8

#2 Updated by Ruben S. Montero almost 9 years ago

  • Target version changed from Release 3.8 to Release 4.0

#3 Updated by Sebastian Porombka over 8 years ago

Hi!

Is there any design- or development-work done yet?
If not -- i would try to implement this feature and would submit a possible patch?

Greetings!

#4 Updated by Ruben S. Montero over 8 years ago

Hi,

We've not started the development yet. Summary of the design for this feature:

  • Depending where the snapshot is stored, they can be internal (stored within the disk) or external (stored as a separated file/dev)
  • Depending what it is saved, they can be disk, memory (RAM & CPU) or system (disk & memory)
  • Our high level requirements is to be able to snapshot a VM and to "revert" to the state. The snapshots would be independent, multiple snapshots of the same VM could be instantiated once.
  • The support for the different types of snapshots depends on the hypervisor and the storage technology used to support the VM disk images.
  • Another requirement for us is to present and homogeneous as possible functionality across technologies.

Initially we've decided to go for disks snapshots, pretty much as the snapshots that can be found in EC2. We will use the hypervisor functionality when available to produce consistent disk snapshots...

Feedback more than welcome!

#5 Updated by Ruben S. Montero over 8 years ago

Finally, we'll go for both system and disk snapshots.

#6 Updated by Simon Boulet over 8 years ago

Ruben S. Montero wrote:

Finally, we'll go for both system and disk snapshots.

Are the one.vm.snapshotcreate and one.vm.snapshotrevert calls for the "system" snapshots ie. VM state snapshots? Are you going to have separate call / driver actions for disk snapshots?

#7 Updated by Ruben S. Montero over 8 years ago

Simon Boulet wrote:

Ruben S. Montero wrote:

Finally, we'll go for both system and disk snapshots.

Are the one.vm.snapshotcreate and one.vm.snapshotrevert calls for the "system" snapshots ie. VM state snapshots?

Yes

Are you going to have separate call / driver actions for disk snapshots?

Yes, disk snapshots will be TM based

#8 Updated by Carlos Martín over 8 years ago

Improvement to consider: The DispatchManager::snapshot_create method could call LibVirtDriverKVM (in case the VM vmm is kvm) and check if all the VM disks use DRIVER=qcow2, to return a request failure before the operation is attempted by the drivers.

#9 Updated by Ruben S. Montero over 8 years ago

  • Status changed from New to Closed
  • Resolution set to fixed

Also available in: Atom PDF