Overview of InfiniBox replica

A replica is an entity that matches a pair of local and remote datasets and other settings essential for the replication.

  • A replica can be of type async (asynchronous), sync (synchronous) replication or Active-Active replication.
  • All replication types share most of the commands and attributes described below.
  • For each local replica entity, there is a paired replica entity on the remote system. Actions on the replica can be local or cross-system, depending on the action and the connection state between the systems.
  • In async and sync replication - one side of the replica will be defined as the source, this is the side that holds the replicated dataset. The linked side will be defined as the target and holds the dataset we replicated to.
  • The replica will be created by the user on the local dataset, and the remote system will automatically create the linked replica on the remote dataset.

Supported entities for replication

InfiniBox supports the creation of Async replicas on:

  • Volumes
  • File Systems
  • Consistency Groups

Infinibox supports the creation of Sync replicas on:

  • Volumes
  • Consistency Groups

Infinibox supports the creation of Active-Active replicas on:

  • Volumes
  • Consistency Groups (Infinibox versions 5.0.10 and above)

General replica attributes

Managing a replica is mainly based on the following attributes:

  • Replica type - Sync, Async or Active-Active
  • Replica role - Source, Target or Active-Active Peer
  • Replicated dataset - volume, filesystem or consistency group on the local system
  • Remote dataset - Volume, filesystem or consistency group on the remote system
  • RPO (for Async only) - The amount of data, measured in time units, that is at risk and might be lost, in the case of a disaster.
  • Interval (for Async only) - The amount of time between two planned sync jobs.

Replica states

InfiniBox uses replica states in order to manage a prompt functionality of the replication, the replica state definitions are the same for sync and async replicas:

  • Active - The replica is active and data is replicated between the datasets as defined
  • Suspended - The replica is suspended by the user. No data is transferred between the datasets
  • Auto-suspended - The replica is automatically suspended by InfiniBox due to a permanent error or a timeout. The user will have to manually resume the replica once the cause of the suspension is fixed.

For Active-Active replicas, the replica state is not available since the replica is always Active.

Initial Sync

When the replica is defined, and the source is not yet replicated to the target, the replica is in an Initialization state. In this state, all of the source data has to be replicated.

This state may take a long time depending on the amount of data that needs to be replicated.

Once the replica is synchronized (the source is fully replicated to the target), the InfiniBox system will replicate only the new I/Os or differences between the source dataset and the target.

When the replica is in an Initialization state:

  • The replica role cannot be changed
  • It is impossible to take a snapshot on the target dataset (as the target is not yet consistent with the source)

Snapshot-based Initial Sync 

The user can retain the internal snapshots when the replica is deleted and see them as regular snapshots.

These retained snapshots are uniquely identified by the system and can be used as base for re-creating the replica between the source and target datasets, as long as they were not changed by the user.

If the user creates the replica using the retained snapshots as base, the initial sync job is skipped, a new snapshot of the source dataset is taken and only the difference between the retained snapshot and the new snapshot is transferred to the remote dataset.

This process will be done automatically by the system if the source and target dataset that are chosen in the create command have such snapshots. In such case, the system will automatically choose the newest snapshots pair and start the init process from this data, without the need for a full init. 

Operations on replicated datasets

Most of the user operations on a dataset will work as they normally do when the dataset is replicated.

The following user operations that are usually available on datasets are blocked on all replicated datasets:

  • Delete dataset
  • Restore dataset

Specific restrictions for Async replicas:

  • Disable Write-protect dataset on a target dataset
  • Export a filesystem on a target dataset

Specific restrictions for Sync replicas:

  • Resize dataset

Specific restrictions for Active-Active replicas:

  • Resize dataset
  • Add QoS policy
  • Enable Write-protect dataset
  • Change dataset provisioning type

Once the replica object will be deleted, the operations on the dataset will be allowed as usual.

Was this article helpful?
0 out of 0 found this helpful

0 out of 0 found this helpful

Last edited: 2022-08-06 08:12:47 UTC