Setting up a cluster of MDM Servers - 7.0

Talend MDM Platform Installation Guide for Linux

EnrichVersion
7.0
EnrichProdName
Talend MDM Platform
task
Installation and Upgrade
EnrichPlatform
Talend Activity Monitoring Console
Talend Administration Center
Talend Artifact Repository
Talend CommandLine
Talend Data Preparation
Talend Data Stewardship
Talend DQ Portal
Talend ESB
Talend Identity and Access Management
Talend Installer
Talend JobServer
Talend Log Server
Talend MDM Server
Talend MDM Web UI
Talend Repository Manager
Talend Runtime
Talend SAP RFC Server
Talend Studio

Before you begin

  • Download and install the Apache httpd including mod_jk support and make sure it is running properly. For more information about how to install and run Apache httpd, refer to the official Apache documentation.

  • Download and install the Apache ActiveMQ standard distribution and run it. For more information about how to install and run Apache ActiveMQ on your platform, refer to the Apache ActiveMQ documentation.

Procedure

  1. Install the first MDM Server as you would for an installation on a single machine.
  2. Duplicate this first instance on as many machines as you want to include in your cluster. In this case, duplicate means rerun the installation process with exactly the same parameters each time.
    Note that you can also work with multiple instances on the same physical server, using different port numbers, but in this case you do not have the same level of protection against the physical failure of a machine.
  3. On each MDM Server instance, open the <$INSTALLDIR>/conf/mdm.conf file to edit it.
  4. Add the line system.cluster=true under the System Settings section to enable the clustering configuration.
  5. Change the value of mdm.routing.engine.broker.url to tcp://AMQHOST:AMQPORT, for example, tcp://localhost:61616. Here AMQHOST is the name of the server hosting ActiveMQ, and AMQPORT is the OpenWire TCP port that Apache ActiveMQ listens to.
    Note: By default, an MDM server uses an embedded Apache ActiveMQ broker as the JMS provider. In order to ensure correct communication between nodes, the JMS broker must be externalized and shared by every node of the cluster.
  6. Add the following two lines to let MDM create authenticated connections to the ActiveMQ server.
    mdm.routing.engine.broker.userName=<USERNAME>
    mdm.routing.engine.broker.password=<PASSWORD>
  7. In the file <TomcatPath>/conf/server.xml, locate the <Engine> element and add an attribute for jvmRoute.
    <Engine name="Catalina" defaultHost="localhost" jvmRoute="mdm_node1">

    Here the value of jvmRoute represents the unique identifier of each MDM server node included in the cluster and must correspond to the worker name in the worker.properties file.

    For a specific example about how to set up a load balancer using Apache httpd with mod_jk support, see An example of how to set up a load balancing solution using Apache httpd and mod_jk.

  8. Repeat the previous for each server instance.
  9. Restart all the MDM nodes in the cluster.

Results

Full-text index replication is implemented within each MDM cluster. For more information, see Full-text index replication.

Once you have installed and configured all the required MDM Server instances, you need to explicitly connect them together in a cluster. Different solutions exist for doing so, both hardware and software. For an example of doing so, see An example of how to set up a load balancing solution using Apache httpd and mod_jk.