|
Post by Venkatesh Periyasamy on Nov 13, 2017 7:24:37 GMT
We are just trying to implement clone/snaphot( as per sowrdfish specification) out of the existing volume for compute virtualization(VDI) use cases. In VDI environment, User will be doing clone and snapshot of existing virtual machine disks(golden image) and cloned/snapshot disks will be used for further virtual machines. To provide support for this scenario, We explored the specification and based on that we arrived at the following process. Can you confirm this process?
To create a snapshot/clone of a volume, POST request for new volume will be raised with the 1. Name, Capacity Information 2. ReplicaInfo which will have the -- ReplicaType (Snapshot/clone) -- ReplicaRole (Role of the replica info. Here it will be source) -- Source (Link to the source volume) -- other replica related information
I Assume, using ReplicaInfo in this context is right.
Is my understanding and usage of ReplicaInfo is correct? Just want to confirm, before implementing ?
|
|
|
Post by gericson on Dec 7, 2017 14:06:37 GMT
No. ReplicaInfo is a property of Volume and has type StorageReplicaInfo. It describes a relationship between the Volume with that property as the source and the target identified by the contained Replica property of the StorageInfo property. It does not have a property called Source.
There is a new feature action that has been added to the Swordfish DataProtectionLineOfService schema. It is CreateReplicas. The new schema follows.
<ComplexType Name="ReplicaRequest"> <Property Name="ReplicaSource" Type="Resource.v1_0_0.Resource"> <Annotation Term="OData.Description" String="A resource to be replicated."/> <Annotation Term="OData.LongDescription" String="The value shall reference a resource to be replicated."/> </Property> <Property Name="ReplicaName" Type="Resource.Name"> <Annotation Term="OData.Description" String="The name of the new replica"/> <Annotation Term="OData.LongDescription" String="The value shall be the names of the replica."/> </Property> </ComplexType> <Action Name="CreateReplicas" IsBound="true"> <Annotation Term="OData.Description" String="This action creates an on-demand replica."/> <Annotation Term="OData.LongDescription" String="This action shall create an on-demand replica that conforms to the bound DataProtectionLineOfService."/>
<Parameter Name="ReplicaLineOfService" Type="DataProtectionLineOfService.v1_0_0.DataProtectionLineOfService" Nullable="false"> <Annotation Term="OData.Description" String="The data protection line of service this action is bound to."/> <Annotation Term="OData.LongDescription" String="The value shall reference the data protection line of service this operation is bound to."/> </Parameter>
<Parameter Name="ReplicaRequests" Type="Collection(DataProtectionLineOfService.v1_1_0.ReplicaRequest)"> <Annotation Term="OData.Description" String="Specifies the resources to replicate and a name for the replica."/> <Annotation Term="OData.LongDescription" String="Each value shall reference a source resource and provide a name for the replica."/> </Parameter>
<ReturnType Type="Collection(StorageReplicaInfo.v1_1_0.ReplicaInfo)"> <!-- <Annotation Term="OData.Description" String="The instance that represent the new replication relationships."/> <Annotation Term="OData.LongDescription" String="Each entry value shall represent the corresponding new replication relationship."/> --> </ReturnType>
</Action>
So: 1) Select an appropriate DataProtectionLineOfService instance. 2) POST to the CreateReplica Action on that instance. (Note the first parameter above is specified by the POST url. The second parameter is an array that names the source volumes and the corresponding replica names.) The implementation of CreateReplica is intended to create the replica using the information in the DataProtectionLineOfService.
|
|
|
Post by Venkatesh Periyasamy on Dec 8, 2017 8:29:34 GMT
Thanks gericson for the clarification.
I have verified in Swordfish 1.0.5 Work In Progress schema. Looks like the given schema is not yet published to public. Will it be part of next version?
|
|
|
Post by gericson on Dec 8, 2017 13:17:45 GMT
Yes.
|
|