Skip to content

High Availability (HA)

Syncplify Server! supports an active/active High Availability (HA) deployment model, where two (or more) nodes run simultaneously and continuously replicate data between them. This ensures that if one node goes down, the other(s) can continue serving clients without interruption.

How It Works

Active/Active Replication

In an HA cluster, every node is a fully functional Syncplify Server! instance. Each node:

  • Accepts client connections independently
  • Maintains a full copy of the configuration, virtual sites, users, and settings
  • Continuously replicates changes to all other nodes in the cluster

There is no "primary" or "secondary" distinction: all nodes are equal peers. A change made on any node (e.g. creating a new user, modifying a virtual site, updating global configuration) is automatically replicated to the other node(s).

Peer to Peer Communication

Nodes communicate with each other over a dedicated IPC (Inter-Process Communication) channel. This channel uses HTTPS on a configurable port (set during initial setup). Each node must be able to reach the other's IPC endpoint.

Heartbeat and Health Monitoring

Each node periodically sends heartbeat messages to its peers. The heartbeat includes:

  • The node's unique ID
  • Its software version
  • A timestamp (used to detect clock drift between nodes)
  • Its current online/offline status

If a node stops sending heartbeats, the other nodes mark it as offline after a configurable timeout.

Clock Drift Detection

Accurate timekeeping is essential for replication consistency. Syncplify Server! monitors the clock difference between nodes and will warn administrators if the drift exceeds a safe threshold. Large clock drift can cause replication ordering issues and should be corrected promptly.

Version Compatibility

All nodes in a cluster must run the same major version of Syncplify Server!. When a node detects that a peer is running an incompatible version, it will refuse the join and report a version mismatch error.

Terminology

TermMeaning
NodeA single Syncplify Server! instance participating in the cluster
ClusterTwo or more nodes that replicate data between each other
HeartbeatA periodic health check message sent between nodes
Clock DriftThe time difference in seconds between two nodes' system clocks
DrainGracefully stop accepting new connections on a node while allowing existing ones to finish
Replication CycleA complete round of data synchronization between nodes

Requirements

  • All nodes must be able to reach each other's IPC endpoint (HTTPS)
  • All nodes must run the same major version of Syncplify Server!
  • System clocks should be synchronized (use NTP)
  • Each node must have a unique Node ID (assigned automatically during setup)
  • The HA cluster is configured through the Setup UI on each node

What Gets Replicated

All configuration data is replicated across nodes:

  • Virtual sites and their settings
  • Users, groups, and permissions
  • Admin and SuperAdmin accounts
  • Global configuration settings
  • Certificates and security settings
  • Scripts and automation rules

What is NOT replicated:

  • Transferred files (file storage replication is outside Syncplify Server!'s scope)
  • Log files (each node maintains its own logs)
  • Node specific settings (e.g. the IPC binding address)