REST endpoints: Replication
These endpoints mirror the CLI commands described in Replication, Replication IPs, Starting and stopping replication, Promoting and monitoring replication, Replication witness. Each endpoint runs the CLI command named under its heading, so the behavior, defaults, and restrictions are the same; this page lists how to call it over REST.
Conventions that apply to every endpoint (request format, the async and outputType parameters, and the response envelope) are in Requests and responses. In the tables below, Required is Yes when the parameter must always be supplied, No when it is optional, and Depends when it is required only in some combinations (for example, either an application and volume, or a consistency group ID); the CLI chapter for the same command explains the combinations.
PUT /replication/continuous/edit
Edit a continuous replication pair.
CLI command: replication continuous edit
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Application |
string | Yes | Edit replication for a volume in this application. |
Volume |
string | Yes | Edit replication for this volume. |
TargetSystem |
string | Yes | Edit replication for this target system. |
Synchronous |
boolean | Depends | Change to synchronous replication. |
Semisynchronous |
boolean | Depends | Change to semi-synchronous replication. |
Asynchronous |
boolean | Depends | Change to asynchronous replication. |
GET /replication/continuous/list
List replicated volumes.
CLI command: replication continuous list
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
application |
string | No | Filter by application name. |
volume |
string | No | Filter by volume name. |
filterSecondary |
boolean | No | Show only secondary volumes. |
filterPrimary |
boolean | No | Show only primary volumes. |
Response: a list of ApplicationElement objects in Result, each with: Application (string), Template (string), Description (string), Volumes (array of VolumeElement), ConsistencyGroups (array of ConsistencyGroupElement), Vms (array of VmElement), InitializeForTesting (boolean), Force (boolean).
DELETE /replication/continuous/pause
Pause a continuous volume replication.
CLI command: replication continuous pause
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
application |
string | Yes | The application the volume to pause replicating belongs to. |
volume |
string | Yes | Source volume to pause replicating. |
targetSystem |
string | Yes | Pause replication for this target system. |
PUT /replication/continuous/promote_primary
Promote secondary volumes to active/primary state.
CLI command: replication continuous promote_primary
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Application |
string | Depends | Application the secondary volume resides in. |
Volume |
array of string | Depends | Secondary volumes to switch to primary (and the remote primary volume to secondary). |
Cgids |
array of integer | Depends | Transition specific consistency groups by ID. |
AllSecondaryVolumes |
boolean | Depends | Transition all secondary volumes to primary. |
InactiveFloatingIpsToActivate |
array of string | No | Migrate the IPs to these paired inactive floating IPs. |
ActivateAllInactiveFloatingIps |
boolean | No | Migrate the IPs to all paired inactive floating IPs. |
Force |
boolean | No | Skip the confirmation prompt, and allow transitioning even if the volume is not up-to-date or the replication link is disconnected. |
DELETE /replication/continuous/resume
Resume a paused continuous volume replication.
CLI command: replication continuous resume
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
application |
string | Yes | The application the volume to resume replicating belongs to. |
volume |
string | Yes | Source volume to resume replicating. |
targetSystem |
string | Yes | Resume replication for this target system. |
POST /replication/continuous/start
Replicate a volume using a continuous replication (mirroring).
CLI command: replication continuous start
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Application |
string | Yes | The application the volume to replicate belongs to. |
Volume |
string | Yes | The volume to replicate. |
TargetSystem |
string | Yes | Target system to replicate to. |
TargetApplication |
string | No | An existing application with a non-initialized volume for the replication pairing. |
TargetVolume |
string | No | An existing non-initialized target volume to replicate to. |
CopySnapshotSchedule |
boolean | No | Copy the source's snapshot schedule to the target volume. |
SourceIp |
string | Yes | The source system's IP to use for replication. |
TargetIp |
string | Yes | The target system's IP to use for replication. |
Synchronous |
boolean | Depends | Synchronous replication. |
Semisynchronous |
boolean | Depends | Semi-synchronous replication. |
Asynchronous |
boolean | Depends | Asynchronous replication. |
Force |
boolean | No | Skip the confirmation prompt. |
DELETE /replication/continuous/stop
Stop continuous volume replication.
CLI command: replication continuous stop
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
application |
string | Yes | The application the volume to stop replicating belongs to. |
volume |
string | Yes | Source volume to stop replicating. |
targetSystem |
string | Yes | Stop replication for this target system. |
allowOnDisconnected |
boolean | No | Allow stopping the replication when the target system is disconnected. |
doNotResignature |
boolean | No | Maintain the current volume identification. It is not recommended to do so for block volumes if the replication volumes are mapped to the same initiator. |
force |
boolean | No | Skip the confirmation prompt. |
POST /replication/ips/create
Create an IP to be used for replication.
CLI command: replication ips create
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Name |
string | Yes | Name of the replication IP. |
Direct |
boolean | No | Network connection is direct - does not require VPN. |
VpnClient |
boolean | No | Network connection uses VPN; this system acts as a client and connects to another system. |
Nodes |
array of string | Yes | Select one node for a single-node system or two for an HA pair. |
Interfaces |
array of string | Yes | The interface name of the corresponding node. Set an interface for each node. |
Addresses |
array of string | Yes | The IP addresses of the replication IP. Set an IP for each node. |
Mask |
string | Yes | The subnet mask of the replication IP. |
Gateway |
string | No | The gateway of the replication IP. |
VpnServerIpAddress |
string | No | Public IP address the VPN connects to. |
VpnServerSystem |
string | No | Server system this VPN connects to. |
Force |
boolean | No | Skip the confirmation prompt. |
DELETE /replication/ips/delete
Delete an IP used for replication.
CLI command: replication ips delete
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | The replication IP to delete. |
force |
boolean | No | Skip the confirmation prompt. |
PUT /replication/ips/edit
Edit an IP used for replication.
CLI command: replication ips edit
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | The replication IP to edit. |
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Newname |
string | No | New name for the replication IP. |
Nodes |
array of string | No | Select one node for a single-node system or two for an HA pair. |
Interfaces |
array of string | No | The interface name of the corresponding node. Set an interface for each node. |
Addresses |
array of string | No | The IP addresses of the replication IP. Set an IP for each node. |
Mask |
string | No | The subnet mask of the replication IP. |
Gateway |
string | No | The gateway of the replication IP. |
VpnIpAddress |
string | No | Public IP address the VPN connects to. |
Force |
boolean | No | Skip the confirmation prompt for subnet validation warnings. |
GET /replication/ips/list
View replication IPs.
CLI command: replication ips list
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
name |
string | No | Filter by name. |
ip |
string | No | Filter by IP address. |
Response: the command output, in the format selected by outputType.
GET /replication/witness/heartbeats
View replication witness heartbeat history.
CLI command: replication witness heartbeats
This endpoint takes no parameters.
Response: an object of type ReplicationWitnessHeartbeatElement in Result, with: DateTime (date-time), HeartbeatType (string: WitnessToSystem / PeerHighAvailabilityNodeToNode / OtherSystemsToSystem / OtherSystemsReplicationLinkToSystem), Source (string), Target (string), AddressesUsed (array of string), IsAlive (boolean), Heartbeats (array of Heartbeat).
GET /replication/witness/logs
View replication witness logs.
CLI command: replication witness logs
This endpoint takes no parameters.
Response: the command output, in the format selected by outputType.
PUT /replication/witness/settings/edit
Update replication witness settings.
CLI command: replication witness settings edit
Body fields (JSON)
| Name | Type | Required | Description |
|---|---|---|---|
Enable |
boolean | No | Enable replication witness. In REST one field covers a pair of CLI flags: true applies --enable, false applies --disable, and omitting the field applies neither. |
User |
string | No | Set the user for the replication witness. |
Password |
string | No | Set the user's password for the replication witness. |
DeadSystemsIndentificationIntervals |
integer | No | When a system is disconnected from the witness, the number of iterations used to identify it as dead prior to the transition. |
UseReplicationHeartbeats |
boolean | No | Utilize heartbeat signals through the replication link. Even if disabled, other nodes still try to identify the cloud as dead after disconnecting from the witness. In REST one field covers a pair of CLI flags: true applies --useReplicationHeartbeats, false applies --doNotUseReplicationHeartbeats, and omitting the field applies neither. |
ReplicationHeartReconnectionTimeoutInSeconds |
integer | No | If replication heartbeats are enabled, the allowed timeout in seconds for them. |
TransitionPairedFloatingIps |
boolean | No | When performing a replication transition, transition paired NAS/Object floating IPs. In REST one field covers a pair of CLI flags: true applies --transitionPairedFloatingIps, false applies --doNotTransitionPairedFloatingIps, and omitting the field applies neither. |
Force |
boolean | No | Skip the confirmation prompt. |
GET /replication/witness/settings/view
View replication witness settings.
CLI command: replication witness settings view
This endpoint takes no parameters.
Response: an object of type ReplicationWitnessSettingsElement in Result, with: Enable (boolean), User (string), Password (string), DeadSystemsIndentificationIntervals (integer), UseReplicationHeartbeats (boolean), ReplicationHeartReconnectionTimeoutInSeconds (integer), TransitionPairedFloatingIps (boolean), Force (boolean).
See also: Requests and responses - Authentication - Examples
No comments to display
No comments to display