Configuring multiple data center topologies

With the multi-master asynchronous replication, you link a set of catalog service domains. The connected catalog service domains are then synchronized using replication over the links. You can define the links using properties files, at run time with Java Management Extensions (JMX) programs, or with command-line utilities. The set of current links for a domain is stored in the catalog service. You can add and remove links without restarting the catalog service domain that hosts the data grid.

Before you begin

  • See Planning multiple data center topologies for more information about multi-master replication topologies and design considerations. You can configure links among catalog service domains with the server properties file to form the topology during server startup. You can also configure links at run time.
  • If you are using loaders in your multi-master replication topology, you must plan how you are going to maintain accurate data between the data centers. The approaches that you can use vary depending on the topology you are using. For more information, see Loader considerations in a multi-master topology.

Procedure

Examples

Figure 1. Example: Link between catalog service domains
Link between catalog service domains
Suppose that you want to configure a two-domain setup involving catalog service domains A and B.
Here is the server properties file for the catalog server in domain A:
domainName=A
foreignDomains=B
B.endPoints=hostB1:2809, hostB2:2809
Here is the server properties file for the catalog server in domain B. Notice the similarity between the two property files.
domainName=B
foreignDomains=A
A.endPoints=hostA1:2809,hostA2:2809
After the two domains are started, then any data grids with the following characteristics are replicated between the domains.
  • Has a private catalog service with a unique domain name
  • Has the same data grid name as other grids in the domain
  • Has the same number of partitions as other data grids in the domain
  • Is a FIXED_PARTITION data grid (PER_CONTAINER data grids cannot be replicated)
  • Has the same number of partitions (it might or might not have the same number and types of replicas)
  • Has the same data types being replicated as other data grids in the domain
  • Has the same map set name, map names, and dynamic map templates as other data grids in the domain
The replication policy of a catalog service domain is ignored.

The preceding example shows how to configure each domain to have a link to the other domain, but it is necessary only to define a link in one direction. This fact is especially useful in hub and spoke topologies, allowing a much simpler configuration. The hub property file does not require updates as spokes are added, and each spoke file needs only to include hub information. Similarly, a ring topology requires each domain to have only a link to the previous and next domain in the ring.

Figure 2. Example: Hub and spoke topology
Hub and spoke topology
The hub and four spokes (domains A, B, C, and D) has server property files like the following examples.
domainName=Hub
Spoke A has the following server properties:
domainName=A
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
Spoke B has the following server properties:
domainName=B
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
Spoke C has the following server properties:
domainName=C
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809
Spoke D has the following properties:
domainName=D
foreignDomains=Hub
Hub.endPoints=hostH1:2809, hostH2:2809

What to do next