Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Currently CloudStack supports VM snapshots for VmWareVMware. This feature will add the support for VM Snapshots in Hyper-V.

...

  • VM snapshots form a tree structure, each VM snapshot can have one(or zero) parent snapshot.
  • A current snapshot refers to the most recent snapshot compared to the current state of the VM (although a domain might have snapshots without a current snapshot , if snapshots have been deleted in the meantime)
  • Two types of snapshots: disk, which takes a snapshot of all disks of specified VM; disk and memory, which takes CPU/memory snapshot in addition to disks snapshot.

...

  • Detaching/attaching VM volume is not allowed if there are VM snapshots , because any changes to the disk layout will break the semantics of VM-based snapshot
  • VM's memory snapshots will be automatically discarded if VM's service offering is upgraded.
  • Volume VM snapshot operations and volume snapshot operations can not be performed concurrently.
  • For one VM, only one VM snapshot operation is allowed at a time. (no concurrent operations)
  • Customers should only use CS to take a snapshot. CS maintains the tree in database, out-of-band snapshots will not be tracked or sync to CS
  • Limit per account not supported
  • Recurring snapshot not supported

...

  • Both create and revert should be completed in on the scale of seconds
  • As the number snapshots for one VM grows, performance may downgrade. Users should have the awareness to control the the length of VM snapshot chain.

...

Important questions:


When we stop VM from cloudstackCloudStack, on Hyper-V that VM is destroyed. When VM gets destroyed all the associated VM snapshots also get destroyed.

To Overcome overcome this we can export the VM which also contains the snapshots information.

...

  1. Export VM when we are stopping the VM.

    Pros
    1.  In this case we  have to perform the costly export operation only when it is needed(when we cannot avoid).
    2. VM snapshots will be fast as then it needs to keep only differential data.

    Cons
    1. stop will get affected, which we can make asynchronous and export VM only when the VM snapshots has been taken on that VM.
    2. What will be done if VM is started before the export operation has been completed?
    3. What will happen if primary goes down in middle of export operation or export operation has not yet started?
      1. whenever host or primary comes up first export the VM then delete it, if it has snapshots
      2. What state of that VM will be returned in hostVMstatereport for vmsync?

  2. Export VM at every snapshot

    Pros
    1. Probability The probability of stop operation being affected will be low. Will only be affected when stop operation occurs in the process of exporting VM.

    Cons
    1. VM snapshots will be slow

...