Hereβs exactly how you sync backups between two Proxmox Backup Servers (PBS):
π Step-by-Step: PBS β PBS Sync Setup
1. Add the second PBS as a Remote on your first PBS
- On your main PBS (where the backups originate):
- Go to Datastore β Remotes β Add.
- Enter:
- Remote name: e.g.,
pbs-secondary
- Server: IP or DNS name of second PBS
- Username: PBS user account (needs
Datastore.Sync
permission) - Password/API Token: authenticate
- Fingerprint: (accept the fingerprint if prompted β security)
- Remote name: e.g.,
π₯ Tip: Use a dedicated PBS user just for syncing if you want to be clean and secure (
Role: DatastoreSync
).
2. Create a Sync Job
- On your main PBS again:
- Go to Datastore β Sync Jobs β Add.
- Configure:
- Remote: Select the remote you just added (e.g.,
pbs-secondary
) - Remote Datastore: Select the datastore name on the second PBS.
- Local Datastore: Where to pull the backups into.
- Schedule: How often? (hourly, daily, etc.)
- Namespace: (optional β if you use namespaces)
- Options:
- Remove vanished (optional, usually no for backups)
- Prune afterwards (optional, depends if you want old copies gone)
- Remote: Select the remote you just added (e.g.,
Done. π₯
π Quick Example
Setting | Value |
---|---|
Remote Name | pbs-secondary |
Server | 192.168.10.20 |
User | syncuser@pbs |
Remote Datastore | backups |
Local Datastore | backups |
Schedule | Daily at 2AM |
Result = Your first PBS pulls backups from the second PBS (or vice versa depending how you set it).
π¦ Important Notes
- PBS Sync is pull-based β main server pulls from the remote.
- PBS backups are de-duplicated β syncing is efficient.
- Sync only chunks, not full raw VM images.
- You can sync both ways if you want, but itβs better to treat one PBS as βprimaryβ and one as βreplicaβ.
π₯ Quick Command Line Version (if you prefer shell)
Add a Remote (shell):
proxmox-backup-manager remote create pbs-secondary --server 192.168.10.20:8007 --auth-id syncuser@pbs
Create a Sync Job (shell):
proxmox-backup-manager sync-job create my-sync-job --remote pbs-secondary --remote-store backups --store backups --schedule "daily"
π― TL;DR
- Add second PBS as remote β Create sync job β Set schedule.
- 1 PBS pulls backups from the other on a schedule.
- Efficient, encrypted, deduplicated.
Would you also want a short example of the perfect PBS user permissions setup for sync-only access? (e.g., avoid using root@pbs?)
Could give you a ready-to-paste config too if you want to keep it clean and safe. π₯