One of the challenges of setting up a high availability environment for transfer servers is in making sure the servers involved have the same configurations. But if you're using JSCAPE MFT Server, there are easy ways to do it. One option is to set up your MFT Server instances to use an external RDBMS as a shared global datastore. The second is to use the Failover module. In this post, we'll focus on the latter. MFT Server's Failover module will enable you to synchronize your servers either automatically or manually with a single click.
Configuring Failover Settings on your JSCAPE MFT Server
Let's say you have two JSCAPE managed file transfer servers and you want to achieve high availability file transfer services. The solution? Apply load balancing.
Here's a typical network configuration of a load-balanced file transfer service. It consists of two managed file transfer servers (JSCAPE MFT Server 1 and JSCAPE MFT Server 2) and one server running JSCAPE MFT Gateway. MFT Gateway is responsible for load balancing the two managed file transfer servers.
Now, for load balancing to work seamlessly, the servers covered by your high availability set up (e.g. the two MFT Servers shown above) should have the same server configurations. For example, if you add a user to one managed file transfer server, you'll also have to add the same user to the other server. If you edit the FTP service on one server, then you would have to do the same thing on the other server. And so on and so forth.
If you can somehow automate the synchronization process, that would save you a great deal of time, wouldn't it?
Let's now talk about how you can do that using JSCAPE MFT Server's Failover module.
Note: Using the Failover module to synchronize server configuration data between two instances of MFT Server is only recommended if your MFT server file transfer services need to listen on different IP addresses (e.g. MFT Server 1 SHOULD listen only on 192.168.100.102 and MFT Server 2 SHOULD listen only on 192.168.100.105). In most situations, it should be alright for these services to listen to 0.0.0.0 (i.e. all available network interfaces on the server). And in such situations, we strongly recommend you use the first option, i.e. using a shared global datastore.
Failover settings are configured on your primary server. In our case, that would be MFT Server 1. This will enable synchronization, so that whatever configuration changes you make on JSCAPE MFT Server 1 will be reflected on JSCAPE MFT Server 2. In other words, it will make your administration life easier.
Note: Although these settings are found under the section named "Failover", which is part of JSCAPE MFT Server, the load balancing functionality is really provided by JSCAPE MFT Gateway.
To configure Failover settings on JSCAPE MFT Server 1, launch your JSCAPE MFT Server Manager and connect to that server. The moment you're inside, navigate to the Settings menu.
Next, go to the Failover section and enter the following information:
Host/IP - the hostname or IP address of your secondary server (e.g. MFT Server 2)
Port - the port number of the JSCAPE MFT Server service on your secondary server
Username - the username you enter as login information when connecting to your secondary server via the JSCAPE MFT Server Manager.
Password - the corresponding password you enter as login information when connecting to your secondary server via the JSCAPE MFT Server Manager.
Once Failover mode is activated, you can synchronize server configurations between your two servers.
Synchronization can be carried out through either one of two ways:
By checking the Enable automatic failover server synchronization check box, or
By clicking the Synchronize State button
If you check the Enable automatic failover server synchronization check box, an active connection will be maintained between your two MFT Servers. This active connection will be responsible for monitoring server configuration changes so that if any changes are made on the primary server, those changes can be automatically cascaded to the secondary server.
Here's a screenshot showing Failover settings on my JSCAPE MFT Server 1.
Here are screenshots of the System Monitor applications on my two Linux servers. Observe the activity on their Network History (bottom graphs). Those are caused by the active connection.
Here is another set of screenshots. This was taken as soon as I activated an FTP service on my JSCAPE MFT Server 1 (with failover already enabled), resulting in a similar activation on JSCAPE MFT Server 2. Notice the similarities in the activity levels on the CPU and Network charts of both servers.
In case you don't want to maintain any active connection between the two servers, just leave the Enable automatic failover server synchronization check box unchecked. Any time you want synchronization to take effect, all you have to do is click the Synchronize State button.
Take note that, by default, domain and web services on your failover server (the secondary server) will not be started automatically. To make them start without human intervention, check the check box that says Start domain / services after synchronization.
There's one more setting you may need to specify before you finalize your Failover settings. Go to the IP Substitution tab and click the Add button. Next, enter your primary server's IP address into the IP field and the failover server's IP address into the Substitution IP field.
What exactly does that do?
Remember that during synchronization, all server configurations on your primary server will be reflected on your failover server. But in some cases, you wouldn't want the services on your failover server to use the same IP address as your primary server. Instead, you would want them to use the IP address of the failover server itself.
This setting will ensure that, in the event of a failover, the services on your failover server will use the IP address of that server and not that of the primary server, which is certainly going to be down.
Tip: If possible use the address 0.0.0.0 for all of your file transfer services. This special address instructs the server to listen on all available IP addresses and eliminates the need to perform IP substitution during failover synchronization. However, if you're willing to use 0.0.0.0, then, again, we would recommend you use a shared global datastore, as mentioned a couple of times in this post.
That's all you need to set on your primary server. Just click the OK buttons to activate the failover feature.
You just learned how to set up JSCAPE MFT Server's Failover module, which eliminates the time-consuming and error-prone process of manually synchronizing the configurations of two file transfer servers while achieving high availability.
Want to be updated on posts like this? Connect with us...