User Community Service Desk Downloads
If you can't find the product or version you're looking for, visit support.ataccama.com/downloads

High Availability Configuration

This section provides an overview of high availability configuration for MDM. Detailed instructions are covered in sections dedicated to particular topics.

Prerequisites and Dependencies

  • The MDM server component and its dependencies are configured on each MDM node, see MDM Configuration.

  • MDM high availability setup requires an in-house load balancer solution.

  • The RDBMS used as MDM persistence should operate in the highly available mode too. This configuration is are independent of MDM and should be prepared in-house.

Install Zookeeper

As a first step, install Zookeeper and configure a cluster (ensemble) with at least three Zookeeper servers. Follow the instructions in the Zookeeper documentation: zookeeper.apache.org/doc/r3.3.2/zookeeperAdmin.html#sc_zkMulitServerSetup. For an overview of Zookeeper, see Zookeeper Overview.

TickTime, initLimit and syncLimit must be same for all servers on a cluster.

Also, it is recommended to use autopurge.snapRetainCount=3 and autopurge.purgeInterval=1 to delete old logs. Zookeeper data folder can get quite big (tens of GBs in a few days if not purged).

Configure HTTP Dispatcher

Update your HTTP Dispatcher configuration on all MDM nodes as follows:

  • Add a listener for RW operations on the given MDM node.

  • Add a listener for the HA Admin Console.

  • If the REST API is enabled, add a listener for RW REST calls.

<connectionFactory class="com.ataccama.zookeeper.HAConnectionFactory"/> element under the RW listeners is required. The names of these listeners must be the same on all MDM nodes.
HTTP Dispatcher configuration for HA Setup
<server>
    ...
    <serverComponents>
        ...
        <component class="com.ataccama.dqc.web.HttpDispatcher">
            <listeners>
                <listener name="default" port="28888" threads="10" ssl="false"/> <!-- Default listener for web requests -->
                <listener name="ha_default" port="29999" threads="10" ssl="false"> <!-- The listener, to which RW requests are redirected -->
                    <connectionFactory class="com.ataccama.zookeeper.HAConnectionFactory"/>
                </listener>
                <listener name="ha_nme_rest" port="29091" servletOnly="true"> <!-- REST listener for RW requests -->
                    <connectionFactory class="com.ataccama.zookeeper.HAConnectionFactory"/>
                </listener>
                <listener name="ha_console" port="29092" servletOnly="true"/> <!-- The listener for the HA Admin Console -->
            </listeners>
        </component
        ...
    </serverComponents>
</server>

Configure High Availability Component

High availability component is an Ataccama Zookeeper client configured on each MDM instance. The component communicates with Zookeeper and switches MDM between the RW and RO modes. See High Availability Component for component configuration reference.

Was this page useful?