Skip to main content

System Requirements

Server Requirements

Operating System

  • Ubuntu 20.04 LTS, 22.04 LTS, or 24.04 LTS (recommended)
  • Debian 11 (Bullseye) or 12 (Bookworm)

Other Linux distributions may work but are not officially supported.

Hardware (Minimum)

ResourceMasterSlave
CPU1 vCPU1 vCPU
RAM1 GB1 GB
Disk20 GBSame as master
ResourceMasterSlave
CPU2+ vCPU2+ vCPU
RAM2+ GB2+ GB
DiskSSD, 2x WordPress sizeSame as master

Software Stack

The master server must have:

  • Web server: Nginx or Apache
  • PHP: 7.4, 8.0, 8.1, 8.2, or 8.3
  • Database: MySQL 5.7+, 8.0+ or MariaDB 10.3+
  • WordPress: Any recent version

The slave server should match the master's software versions. If software is missing, Tergum can auto-install it during setup.

Network Requirements

Outbound Access (Required)

Both servers need outbound HTTPS (port 443) to:

  • app.tergum.ca - Tergum API
  • login.tailscale.com - Tailscale coordination
  • *.cloudflare.com - Cloudflare services

Inbound Access

  • No inbound ports required on either server
  • All communication uses outbound connections
  • Works behind NAT, firewalls, and residential internet

Bandwidth

  • Initial clone: depends on WordPress size (plan for 10-100 MB/min)
  • Ongoing replication: minimal (a few KB/s for typical sites)
  • Heartbeats: ~1 KB every 30 seconds

Third-Party Accounts

Cloudflare (Required)

  • Free tier is sufficient
  • Domain DNS must be managed by Cloudflare
  • API token with Zone:DNS:Edit and Account:Cloudflare Tunnel:Read permissions

Tailscale (Required)

  • Free tier supports up to 100 devices
  • Used for secure server-to-server communication

WordPress Requirements

Supported Configurations

  • ✅ Single-site WordPress
  • ✅ WordPress Multisite (subdirectory mode)
  • ⚠️ WordPress Multisite (subdomain mode) - requires additional DNS setup

Plugin Compatibility

Most plugins work normally. During failover, plugins that require:

  • Outbound API calls: will work if slave has internet
  • Local file writes: may have delayed sync (few seconds)
  • External services: depend on those services

Known Incompatibilities

  • Plugins that modify .htaccess dynamically
  • Plugins with hardware-locked licenses (may need reactivation)
  • Real-time collaboration plugins (may lose recent changes)

Pre-Flight Checklist

Before starting setup, verify:

  • Two servers meeting hardware requirements
  • Ubuntu/Debian installed on both
  • Root SSH access working
  • WordPress running on master
  • Cloudflare account with domain added
  • Tailscale account created
  • Tergum account registered