23.3.2. Configure Cross-Datacentre Replication (Library Mode)
When configuring Cross-Datacentre Replication, the
relay.RELAY2 protocol creates an additional stack (running parallel to the existing TCP stack) to communicate with the remote site. If a TCP-based stack is used for the local cluster, two TCP based stack configurations are required: one for local communication and one to connect to the remote site.
In Red Hat JBoss Data Grid's Library mode, cross-datacentre replication is set up as follows:
Procedure 23.2. Configure Cross-Datacentre Replication (Library Mode)
Configure the Local Site
- Add the
siteelement to theglobalelement to add the local site (in this example, the local site is namedLON).Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Cross-site replication requires a non-default JGroups configuration. Add the
transportelement and set up the path to the configuration file as theconfigurationFileproperty. In this example, the JGroups configuration file is namedjgroups-with-relay.xml.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Add the Contents of the Configuration File
As a default, Red Hat JBoss Data Grid includes JGroups configuration files such asjgroups-tcp.xmlandjgroups-udp.xmlin theinfinispan-core-{VERSION}.jarpackage.Copy the JGroups configuration to a new file (in this example, it is namedjgroups-with-relay.xml) and add the provided configuration information to this file. Note that therelay.RELAY2protocol configuration must be the last protocol in the configuration stack.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configure the relay.xml File
Set up therelay.RELAY2configuration in therelay.xmlfile. This file describes the global cluster configuration.Copy to Clipboard Copied! Toggle word wrap Toggle overflow Configure the Global Cluster
The filejgroups-global.xmlreferenced inrelay.xmlcontains another JGroups configuration which is used for the global cluster: communication between sites.The global cluster configuration is usuallyTCP-based and uses theTCPPINGprotocol (instead ofPINGorMPING) to discover members. Copy the contents ofjgroups-tcp.xmlintojgroups-global.xmland add the following configuration in order to configureTCPPING:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Replace the hostnames (or IP addresses) inTCPPING.initial_hostswith those used for your site masters. The ports (7800in this example) must match theTCP.bind_port.File Locations
Ensure all the created files are on the classpath before using the new configurations.