Hi,

a) 'vm snapshot, detach volume and attach it to another VM, rollback snapshot'
2, allow to snapshot/rollback, for a), this will result in two volumes, one 
attached to anther VM, one attached to VM that rollback from snapshot;
We should not allow this due to the fact one VM's snapshot cannot have any 
impact on another VM's snapshot. VM 'B' cannot have volume changes because I 
rolled back on VM "A".

b) 'vm snapshot, detach and destroy volume, rollback snapshot'
2) allow to snapshot/rollback, for b), destroyed volume is not truly expunged 
and capacity is not released
This will lead to usage problems. The customer will complain he has deleted his 
volumes but still getting charged for it, yes because cloud-usage will still 
see the volume and report it in usage records.

My suggestion would be 1) disallow detach volumes if specified VM has VM 
snapshots. The end user can always add more but cannot remove once snapshotted. 
The end user must remove snapshots before wants to remove volumes.
Also all snapshots created after the one I reverted to should be invalidated 
and deleted/expunged. I know this would cripple the snapshot functionality 
quite a bit but for now I think would work perfectly, without making 
fundamental changes to CS infrastructure and would allow us to have proper 
snapshots and not exported templates.


Regards

Tamas Monos                                               DDI         
+44(0)2034687012
Chief Technical                                             Office    
+44(0)2034687000
Veber: The Hosting Specialists               Fax         +44(0)871 522 7057
http://www.veber.co.uk

Follow us on Twitter: www.twitter.com/veberhost
Follow us on Facebook: www.facebook.com/veberhost

-----Original Message-----
From: Mice Xia [mailto:mice_...@tcloudcomputing.com] 
Sent: 08 August 2012 06:17
To: cloudstack-dev@incubator.apache.org
Subject: RE: [Discuss] VM Snapshot

Kelven, Thanks for pointing out this, and yes this is getting complicated when 
volume states/ownership changes, we need some feature level discussion here.

For following scenarios I need some suggestions: 
a) 'vm snapshot, detach volume and attach it to another VM, rollback snapshot',
b) 'vm snapshot, detach and destroy volume, rollback snapshot', 

Three candidate solutions that I can figure out now,
1) disallow detach volumes if specified VM has VM snapshots.
2) allow to snapshot/rollback, for a), this will result in two volumes, one 
attached to anther VM, one attached to VM that rollback from snapshot; for b), 
destroyed volume is not truly expunged and capacity is not released.
3) add a global configuration and leave the choices for users.

Regards
Mice

-----Original Message-----
From: Kelven Yang [mailto:kelven.y...@citrix.com]
Sent: Wednesday, August 08, 2012 8:19 AM
To: cloudstack-dev@incubator.apache.org
Subject: Re: [Discuss] VM Snapshot

As of the requirement of VM Snapshot feature. Following feature may also be 
needed

- Export a VM snapshot into OVA
- Import OVA into CloudStack (this feature is not truly related with snapshot 
but make backup and restore at VM basis useful)

>
> - Does not conflict with volume snapshot
>
For this requirement, we need more discussions

When people navigate to a previous VM snapshot and branch off from there, it 
will eventually form a snapshot tree where all chained disks will be stored on 
the primary storage. VM's current disk is always a branch of the tree, this 
information is now stored in primary storage, CloudStack currently orchestrates 
VM formation always on the fly, except for VM state info, most of VM level 
properties are transient, so we will need to adjust CloudStack underlying model 
to address this.

Secondly, attaching and detaching volume is a very common operation in current 
CloudStack model, and volume is truly first-class object in CloudStack that it 
has its own life cycle. By including volume state in different historically 
associated VM snapshots (because of attaching and
detaching) will have impact to how we manage the snapshot tree and its 
associated volume disk chain. Just a side note, if you try to navigate along 
with a snapshot tree with volume membership changes, it will probably fail in 
Vmware vCenter itself)

These reality details have to be studied carefully and a detail functional spec 
needs to be in place before implementation.

Kelven  



On 8/6/12 5:19 PM, "Kelven Yang" <kelven.y...@citrix.com> wrote:

>When VM is running, snapshot operations have to be co-ordinated, once 
>you have the snapshots in storage, it is possible to branch off other 
>branches forking a VM and taking other snapshots on top of it. However, 
>you can not have more than one parent.
>
>The eventual big picture of it is a tree instead of a graph (introduced 
>by multiple parents)
>
>Kelven
>
>On 8/6/12 5:13 PM, "Clayton Weise" <cwe...@iswest.net> wrote:
>
>>Is it possible to have multiple parent snapshots for a VM/Volume? That 
>>would be a way to get around the issue of bumping heads with other 
>>snapshot processes.
>>
>>Sent from my mobile phone, please forgive any minor spelling or 
>>grammar mistakes.
>>
>>-----Original Message-----
>>From: Alex Huang [alex.hu...@citrix.com]
>>Received: Monday, 06 Aug 2012, 11:17am
>>To: cloudstack-dev@incubator.apache.org
>>[cloudstack-dev@incubator.apache.org]
>>Subject: RE: [Discuss] VM Snapshot
>>
>>+1.
>>
>>Some of the concepts in CloudStack follows too closely to what Amazon 
>>EC2 APIs do.  Snapshots (really backup as you pointed out) is one such 
>>problem.
>>
>>In CloudStack storage, we should clearly distinguish between
>>
>>-Primary Storage Volume Access
>>-Snapshots (VM based)
>>-Backup (Moving snapshots off of primary storage and into a backing
>>store)
>>
>>I caution that because CloudStack backup process does not account for 
>>extra snapshots in the XenServer VHD chain, the changes this 
>>introduces will be substantial.
>>
>>Edison is also planning to work in this area.  Edison, can you discuss 
>>what you have so far?
>>
>>--Alex
>>
>>> -----Original Message-----
>>> From: Mice Xia [mailto:mice_...@tcloudcomputing.com]
>>> Sent: Sunday, August 05, 2012 7:50 PM
>>> To: cloudstack-dev@incubator.apache.org
>>> Subject: [Discuss] VM Snapshot
>>>
>>> Hi, All,
>>>
>>> I¹d like to propose a new feature ŒVM snapshot¹.
>>>
>>> Currently CS support volume snapshot, which is an EC-2 like public 
>>>cloud  solution.
>>> IMO, it addresses problems like Œwhat if my volume lost or broke 
>>>down, or  what if my primary storage got an unrecoverable 
>>>disruption¹, in other words,  it¹s more like a backup solution, and 
>>>it does take considerable long time to  backup and restore, 
>>>especially for large volumes which are unfortunately  favored by 
>>>customers.
>>>
>>> What I want to propose is snapshots on VM, just like what Xenserver 
>>>and  VMware ESXi do.
>>> It addresses requirement such as 'I want to save everything right 
>>>now so that  I can roll back in the future, and both operations can 
>>>be done within seconds¹,  mainly used for private cloud.
>>>
>>> Plan for the first stage consists of support in Xenserver and ESXi, 
>>>and draft  requirements are as followings:
>>> - Create VM snapshot. VM snapshot consists of: its CPU/memory status 
>>>(for  Xenserver it needs enterprise version), and volumes; service 
>>>offerings.
>>> stored in PS, snapshots are removed when VM is expunged.
>>> - List snapshots for a specified VM
>>> - Rollback VM to a specified VM
>>> - Delete a specified snapshot
>>> - Does not conflict with volume snapshot
>>> - Create and restore should be done within seconds.
>>>
>>> Before I started off writing some documents on wiki and merge code, 
>>>I'd like  to welcome any comments and flames.
>>>
>>> Regards
>>> Mice
>

Reply via email to