Prerequisites
- An existing SimpleCloud network with at least one serverhost
- Additional machines to run serverhosts on
- Root or sudo access on each machine
Part 1: Adding Serverhosts
Install SimpleCloud on Each Machine
On each machine that will run a serverhost, install the SimpleCloud CLI:Add Serverhost to Network
Use the CLI to add a new serverhost to your existing network:- Select your network - Choose the network your controller manages
- Authenticate - Log in with your SimpleCloud account
- Configure the serverhost - Set port ranges and other options
Verify Connection
After adding, verify the local serverhost component is running:Part 2: Synchronizing Files
With multiple serverhosts, you need to keep templates and workflows synchronized. We recommend using Syncthing for automatic file synchronization.What to Synchronize
| Directory | Purpose | Sync? |
|---|---|---|
templates/ | Server templates, plugins, configs | Yes |
workflows/ | Workflow definitions | Yes |
options/ | Configurator settings | Yes |
secrets/ | Network credentials | No - unique per host |
running/ | Active server instances | No - local only |
logs/ | Serverhost logs | No - local only |
Finding Your SimpleCloud Directory
The installation path is user-configurable. Your serverhost directory contains:simplecloud
templates
Sync this
workflows
Sync this
options
secrets
running
Initialize Sync on the Primary Serverhost
Run this on the serverhost that should act as your primary sync host:templates/cache/, configures Syncthing for templates/, workflows/, and options/, stores the folder IDs in .simplecloud-sync.json, and prints a sc sync join ... command for the next serverhost.
If you run SimpleCloud as root, add
--as-root so the CLI uses
syncthing@root.service.Join from Another Serverhost
On the new serverhost, run thesc sync join ... command printed by sc sync init or sc sync add.
sc sync approve ... command.
Approve the Joining Serverhost
Run the printed approve command on the primary serverhost:Verify Synchronization
Test that synchronization works:Best Practices
Server Distribution
Configure groups to specify which serverhosts can run them:| Strategy | Use Case |
|---|---|
| Any host | Load balancing across all machines |
| Specific hosts | Dedicated hardware for resource-intensive servers |
| Geographic | Players connect to nearest serverhost |
File Sync Settings
| Setting | Recommended | Reason |
|---|---|---|
| Folder Type | Send & Receive | Allows changes from any serverhost |
| File Versioning | Simple | Keeps backup copies |
| Ignore Permissions | Enabled | Avoids permission conflicts |
Exclude Cache from Sync
Thetemplates/cache/ folder contains locally generated files. Consider excluding it from synchronization to avoid unnecessary transfers.
Troubleshooting
Serverhost not appearing in list
Serverhost not appearing in list
Symptom: After
sc serverhost add, the host doesn’t show up.Solutions:- Check the serverhost is running:
sc status serverhost - Verify network connectivity to the controller
- Check credentials in
secrets/directory exist - Review serverhost logs:
sc logs serverhost
Syncthing devices not connecting
Syncthing devices not connecting
Symptom: Devices show as “Disconnected”.Solutions:
- Ensure firewall allows port 22000 TCP and UDP
- Run
sc sync statuson each host - Verify the
sc sync approve ...command was run on the primary host - If running as root, include
--as-rootwith eachsc synccommand
Files not syncing between hosts
Files not syncing between hosts
Symptom: Template changes don’t appear on other serverhosts.Solutions:
- Run
sc sync statusand check thattemplates,workflows, andoptionsare configured - Verify the folder IDs in
.simplecloud-sync.jsonmatch across hosts - Confirm the joining host was approved with
sc sync approve - Review Syncthing connection errors reported by
sc sync status
Servers starting on wrong host
Servers starting on wrong host
Symptom: Servers start on unexpected serverhosts.Solutions:
- Check group configuration for host restrictions
- Verify all serverhosts have required templates synced
- Review serverhost availability in the dashboard
Conflict files appearing
Conflict files appearing
Symptom: Files with
.sync-conflict in the name appear.Cause: Same file modified on multiple hosts simultaneously.Solutions:- Review conflict files and choose correct version
- Avoid editing same file on multiple hosts at once
- Designate one host as “primary” for template editing
Related Topics
- Templates - Template hierarchy and management
- Workflows - Workflow configuration
- Serverhost - Serverhost architecture