Skip to main content
Feedback

High Availability Configuration

Primary Node

  1. Deploy the node on the primary machine (Windows or Linux). 
  2. The node is assigned a unique Node ID. 
  3. Configure MFT Node Health Check port.

Secondary Node

  1. Deploy an identical node on the secondary machine, either by installing it again using the same script as the primary, or copying the installation folder from the primary to the secondary.
  2. The secondary node must have the same Node ID as the primary. 
  3. The secondary node can now also be started, with the latest release of MFT Node, nodes can detect other active instances of itself in the network. If a node detects an already active instance, it will refrain from accepting new tasks, ensuring no conflicts arise between multiple active nodes. . 
  4. Configure MFT Node Health Check port. (recommended to enable local monitoring, but not mandatory)

Heartbeat Monitoring

Monitor the health of the installed nodes through: 

a. Local HealthCheck Port

b. The MFT cloud control plane

Failover Mechanism

In case the primary node becomes unresponsive (heartbeat down):

  • The secondary node will automatically take over as the active node. 
  • The updated node runtime ensures that: 
  • A node can detect other running nodes and adjust its behavior accordingly. 
  • Nodes will not restart or re-initiate tasks for at least 3 minutes (by default) after the previous instance shuts down. This delay is configurable via the HeartbeatTtlSeconds parameter in the node's appsettings.json file (default: 180 seconds).

Multiple identical nodes can run simultaneously.

When this happens:

  • One node will act as the primary, actively processing tasks. 
  • Other nodes will remain operational but will not accept new tasks unless the primary becomes unavailable. 
caution

When a failover from the primary to the secondary file transfer agent occurs, partially transferred files may not be automatically resumed by the secondary agent in the current implementation. Some partially transferred files may still require resending following a failover.

Best Practices

  • Regularly test failover and recovery processes to ensure smooth operation. 
  • Maintain robust logging for monitoring and troubleshooting. 
  • Ensure all active nodes are configured to detect and respond appropriately to each other. 

This approach eliminates the need for a passive secondary node and enhances system resilience by allowing both nodes to operate actively while preventing task conflicts. 

Stopping the Node

If you need to temporarily stop the MFT Node without fully uninstalling it, you can use PowerShell commands to disable and stop the scheduled task:

Disable-ScheduledTask -TaskName "ThruNode-{NODE_ID}" -Confirm:$false
Stop-ScheduledTask -TaskName "ThruNode-{NODE_ID}"

Replace {NODE_ID} with your actual Node ID (e.g., the folder name like TN7Y483B from your installation path).

What these commands do:

  • Disable-ScheduledTask: Prevents the scheduled task from running automatically
  • Stop-ScheduledTask: Immediately stops the currently running task

This approach allows you to stop the node temporarily while keeping the installation intact. To restart the node later, you can re-enable the scheduled task using:

Enable-ScheduledTask -TaskName "ThruNode-{NODE_ID}"
note

You'll need Administrator privileges to run these commands, just like during the initial installation.

On this Page