Configuring a centralized global datastore

In order to set up high availability MFT Server clusters, all nodes in the cluster must have exactly the same server configurations. In a default installation of MFT Server, server configuration data is stored in a built-in H2 database that serves as the server's global datastore. The H2 database cannot be used for high availability purposes. High availability requires that the MFT Server database be a relational database type, created using a relational database management system (RDBMS) like MySQL, MS SQL Server, Oracle, or PostgreSQL. The relational database will serve as a shared or centralized global datastore to all nodes in the HA cluster. This implementation means that any changes made to the server configuration of one MFT Server instance will be automatically applied to all other nodes in the cluster.

 

Warning: The embedded H2 database that ships with MFT Server is not intended for production environments and is for evaluation purposes only. For production environments or evaluation environments with heavy usage and/or high availability requirements, it is recommended that an ANSI compliant relational database such as MySQL, MSSQL, Oracle, or PostgreSQL be used.

 

When you perform an installation of MFT Server and specify a relational database during the installation, that database is supported in a high availability configuration.

 

The documentation for each installation (see the links below), provide instructions on how to set up MFT Server using a relational database. In all cases, you must create the database first, before starting the installation process. For a MAC and Windows installations, select the "Custom" option when configuring the database portion of the installation. For the Linux, AIX and Solaris installations, specify a relational database by using the js-database-configuration command that includes the URL, User and Password options.

 

 

To summarize, if you initially installed MFT Server using a relational database, that database is supported in an HA environment. If you initially installed MFT Server and opted to use the default H2 database, that database does not support an HA environment. As an option, you can migrate the H2 data to a relational database by following the instructions outlined here: Migrating existing data to a centralized global datastore

 

Next, after you have an MFT Server installation configured using an RDBMS, subsequent MFT Server installations (that are part of the HA solution) can be managed as follows:

 

  • Install MFT Server using the default, built-in H2 database.

  • From the first installation (configured using a RDBMS), copy the <MFT Server Installation directory> etc/database.properties file (which includes the RDBMS database URL).

  • Stop the MFT Server service on the new (H2) installation.

  • Paste the etc/database.properties file in the appropriate MFT Server installation directory (overwrite the existing file).

  • Start the MFT Server service.

 

This satisfies the requirement that in high availability MFT Server clusters, all nodes in the cluster must have exactly the same server configurations.

 

Next, below you will find information regarding the handling of Triggers and Directory Monitors in a high availability MFT Server environment.

 

  • Triggers that occur due to user activity (e.g. file upload, download) are tied to the node that is managing the user session.

     

  • Triggers that are time-based are raised on all nodes. However, if you wish the trigger to only run on one node, you can use the Health Monitor Trigger Action to accomplish this. 

     

  • Directory Monitor behavior is determined by the setting of the Raise events on <First> <All> instance(s) field - when adding or editing a Directory Monitor.

     

    • If First is selected, the first server in the cluster (the active MFT Server) will listen for directory monitor events. If the active (First) server should go down, the other server in the queue will automatically listen for directory events. This is to avoid duplicate events when using a cluster.

       

    • If All is selected, all servers in the Active/Active cluster will listen for directory monitor events. Note: When MFT Server HA is configured using an Active/Passive configuration - only First is applicable.