Skip to content

Upgrade and Rollback

An upgrade only replaces binaries and static assets; it preserves the /etc/ff1/ config, FF1_SECRET_KEY, SQLite data, and admin account.

Re-run the install command for an in-place upgrade (find the command in your activation email or Account Center → My Licenses — it is not published in the docs). The upgrade will:

  • Replace the FF1 Master binary and web/, dl/
  • Does not overwrite the /etc/ff1/ config, FF1_SECRET_KEY, or SQLite data
  • Restarts ff1-master
  1. Back up the data directory and /etc/ff1/
  2. Read the changelog for any breaking changes
  3. Perform the upgrade during off-peak hours

If the new version misbehaves: stop the service → restore the previous binary and backup → start and verify. Keep the previous install package before major-version upgrades.

Node binaries come from Master’s /dl/ and stay aligned with the Master version:

  1. Upgrade Master first so /dl/ holds the new build
  2. On each node, re-run the install script to overwrite, or systemctl restart ff1-agent
  3. In the console, confirm nodes are online and config delivery is healthy

Rolling recommendation: restart nodes in batches to avoid taking multiple nodes on the same tunnel chain offline at once.

  • Do not manually overwrite the entire /etc/ff1/ directory — you will lose config
  • FF1_SECRET_KEY is immutable; the upgrade script never resets it
  • In the long run, upgrade Master and Core together to avoid protocol mismatches

Q: Console returns 502 after upgrade? A: Run journalctl -u ff1-master to check for startup or data errors.

Q: Can I upgrade only Core without Master? A: Fine in the short term; upgrade both ends together over the long term.