Fully connected active/active replication topology as erasure coding topology

A fully connected active/active replication topology can be used as the basis for an erasure coding topology. When you add a tenant to the erasure coding topology, if the tenant is not already being replicated on the links in the fully connected active/active topology, HCP automatically adds that tenant to all the links in the fully connected active/active topology.

What this looks like

The following figure shows a fully connected active/active replication topology that includes four systems (A, B, C, and D).

Fully connected active/active replication topology that includes four systems (A, B, C, and D)

In this figure:

  • Two of three HCP tenants created locally in system A are being replicated throughout the topology. In the first tenant being replicated, two of three namespaces are selected for replication. In the second tenant being replicated, one of two namespaces is selected for replication.
  • Two tenants created locally in system D are being replicated throughout the topology. In the first tenant, two namespaces are selected for replication. In the second tenant, one of three namespaces is selected for replication.

Uses

The fully connected active/active replication topology is an alternative to the active/active ring topology for maintaining the same namespaces on multiple HCP systems in a storage cloud.

A fully connected topology provides better protection from system unavailability and nonfunctioning replication links than a ring topology provides. The network of links in a fully connected topology ensures that each system has multiple paths to each other system, thereby preventing individual systems from becoming isolated from the rest.

For example, suppose that the following conditions are true:

  • Namespace NS1 is being replicated in a replication topology that includes systems A, B, C, and D
  • The service plan associated with NS1 includes a metadata-only storage tier on A and B
  • Object O1 is metadata-only on both A and B

With a ring topology, if the replication links between B and C and between C and D are broken, system C is isolated. Because no path connects system D to system C, system D cannot retrieve data for O1 from the only other system that has the data (for example, in a situation in which read from remote is required).

If the replication links between B and C and between C and D are broken, system C is isolated

Given the same circumstances with a fully connected topology, system D can still read data for O1 from system C by using the links between D and A and between A and C.

System D can still read data from system C by using the links between D and A and between A and C

A fully connected topology requires more maintenance than a ring topology. In the worst case, with six systems in a fully connected topology, you must maintain 15 replication links. With six systems in a ring topology, you need to maintain only six links.

Additionally, the more systems you have in a fully connected topology, the less the ability to replicate other tenants to systems outside the topology. For example, in a five-system fully connected topology, any system could have one additional link on which to replicate tenants that are not in the topology to a system outside the topology. In a six-system fully connected topology, the systems cannot have any additional links.

A typical use for a fully connected active/active replication topology is as the basis for an erasure coding topology.

Responses to read requests for erasure-coded objects are faster with a fully connected topology than with a ring topology because all chunks not on the target system can be retrieved from directly connected systems. In comparison, with an erasure coding topology based on a ring replication topology, responses to read requests are slower because some chunks can be retrieved only through paths consisting of more than one replication link. Also, the use of the additional links increases network bandwidth usage.