Skip to main content Skip to complementary content

Setting up a cluster of MDM Servers

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.

    Information noteWarning: If you are using Apache ActiveMQ 5.4 or a higher version with KahaDB, it is recommended to not enable the KahaDB property concurrentStoreAndDispatchTopics in the ActiveMQ XML configuration file. For more information about the property, see https://activemq.apache.org/kahadb.html.

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.
    Information noteNote: 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.

  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.

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.

Did this page help you?

If you find any issues with this page or its content – a typo, a missing step, or a technical error – please let us know!