How to enable clustering

The Enterprise Edition of CompleteFTP supports clustering as described in detail here.

A CompleteFTP cluster consists of a primary server and one or more secondary servers. All configuration changes are made on the primary and propagated to the secondaries within seconds.

To set up a cluster, CompleteFTP needs to be installed and running on the machine designated as the primary, and also on the machines that will host secondary servers. It must also be possible for the primary server to be able to communicate with the secondary servers across the network via:

  1. the protocol that is initially set for the admin user on each secondary (admin user can be found in Users panel by selecting "Show system users/folders/sites" in the main form's Options menu), and
  2. the protocol that will be used by all servers after they have been added to the cluster

It is important that firewall rules are configured to allow this server to server communication. By default, the SFTP protocol is used, which requires communication on port 14983.

It is also important that each secondary server's IP filtering rules permit the primary server to contact them (by default the rules only permit connections LAN IP addresses). This requires connecting locally to each secondary server, and opening the Admin Site configuration (in Sites panel by selecting the "Show system users/foldes/sites" menu item). Add an IP Filter rule that allows the primary server to connect to the secondary.

To designate a server as a primary server, the CompleteFTP manager must be connected to that server. In the Overview panel, the Servers window is used to control the servers. Select Add server to add another server as a secondary - this will automatically designate the current server that the CompleteFTP manager is connected to as the primary.

Add server brings up the dialog box below:

Enter the details of the secondary server, and select the Next button. In the follow dialog, select the Add button to add the secondary server to the cluster. A progress report will be produced, detailing the registration process. As part of this process, the secondary server has its configuration overwritten with a copy of the primary server's configuration.

If the registration process is successful, the new server will now be a secondary server in the cluster that is controlled by the primary. All future configuration changes on the primary will be instantly propagated to the secondary as soon as they are applied (provided the "Sync enabled" checkbox is checked, which means automatic synchronization of changes). Also note that the frequency of synchronization can be altered from the default 60 seconds.

Once a server has been added to create a cluster, the servers will be listed in the Servers tab, together with the sites they support and the last time they were contacted (i.e. synchronized with the primary's configuration).The end result should look like the image below:

Additional servers can be added by using the "Add server" link at the bottom left of the Servers tab, or by using "Add server" from the menu that is shown when the right mouse button is clicked. Servers can also be removed from the cluster by selecting "Remove server".

For step by step instructions on how to set up a cluster, please refer to Step-by-step guide: Set up a cluster.