Versions Compared

Key

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

...

  • new RemoteReplicationSerive to support REST API to cover:  
    • discovery of  remote replication sets for specified storage type;
    • REST api for remote replication link  management operations;
    • REST api to create remote replication group
  • New RemoteReplicationProtectionParam for virtual pool create REST API ; 
    • This parameter specifies target virtual array, target virtual pool in virtual pools which require RemoteReplication protection. 
  • New attribute matcher class to match storage pools which can be used for remotely replicated source volumes in virtual pool:
    • The matcher class should allow only pools which a) belong to a source system in one of  remote replication sets; and  b) the remote replication set, which contain the source system, has target system with storage in target varray/vpool.
  • New RemoteReplicationParam in  "volumeCreate" REST api;
    • This parameter specifies existing RRG for volume pairs. When RRG is specified, volume pair will be placed in this replication group, otherwise, volume pair will be placed directly to RRS (matched by virtual array and virtual pool specified in volume create request) if this is supported by the set. 
    • RRG should be specified in case if RRS supports only group elementsif driver supports only remote replication groups as volume containers, otherwise, when RRS supports driver supports both groups and pairs, RRG can be optionally specified when volumes have to be placed in a group.
    • Remote replication mode
  • New RemoteReplicationSheduler to schedule and place remotely replicated volumes; 
    • Remotely  replicated volumes are always created in pre-configured RRS or in RRG (which has one source and one target system by default) as is specified in RemoteReplicationParam in volume create request. This means that source and target storage systems are already known from the request. Once storage systems for placement are known, volumes are placed in candidate storage pools in this systems the same way as it is done for regular volumes.
  • New RemoteReplicationBlockServiceApiImpl extension class of AbstractBlockServiceApiImpl to process placement recommendations and build volume descriptors for remotely replicated volumes;

...

Remote Replication Service REST API

Class/ REST Method /user roleDescriptionRequest parameter

RemoteReplicationGroupService/

POST

/vdc/block/remotereplicationgroups/create-group


This is system admin operation.

Create empty replication group. Request body specifies properties of the replication group.

 {

    "display_name" :  "Group01",

    "replication_mode" : "synchronous",

     "replication_state" : "active",

     "enforce_group_consistency" : "true",

     "source_system" : "storageos:storagesystem:1234-5678",

     "target_system" : "storageos:storagesystem:1234-5679"

 "source_ports":["portId_1", "portId_2"],

"target_ports":["portId_1", "portId_2"],

}


   

    

Remote Replication Link Management Operations.

All link management operations are System Admin operations.

  

RemoteReplicationManagementService/

POST /vdc/block/remotereplication/discover/{storage_type_uri}


This is system admin operation.

Discovers remote replication configuration for storage system type specified by 'type' uri

 {

    "context" :  operation context:

RR_SET,
RR_GROUP,
RR_PAIR,
RR_GROUP_CG,
RR_SET_CG

    "ids":  list of replication pairs ids,

}

RemoteReplicationManagementService/

POST /vdc/block/remotereplicationmanagement/establish

Establish (start) remote replication link

The same as above.

RemoteReplicationManagementService/

 POST /vdc/block/remotereplicationmanagement/suspend

 Suspend remote replication linkThe same as above.

RemoteReplicationManagementService/ 

POST /vdc/block/remotereplicationmanagement/split

 Split remote replication linkThe same as above.

 RemoteReplicationManagementService/

POST /vdc/block/remotereplicationmanagement/resume

 Resume remote replication linkThe same as above.

RemoteReplicationManagementService/

POST /vdc/block/remotereplicationmanagement/failover

 Failover remote replication linkThe same as above.

RemoteReplicationManagementService/

 POST /vdc/block/remotereplicationmanagement/failback

 Failback remote replication linkThe same as above.
 POST /vdc/block/remotereplicationmanagement/swap Swap remote replication linkThe same as above.

...