For namespaces you have several options to implement your backup scheme:
- First you would create several namespaces for your local backups like localdaily, localweekly, localmonthly and for your remote backups (meaning the backups you want to sync to your remote PBS) remotedaily, remoteweekly, remotemonthly etc backups. Depending on your usecase you don't need all of them, just do what you are comfortable with.
- Create a prunejob on your local namespaces (e.g. keep 24 hourly, 30 daily backups, 5 weekly and 12 monthly)
- Afterwards you have several options:
- Configure additional backup jobs with a schedule of your wish. Data which is already in the datastore won't be added again
- First create a sync job on your local PBS to sync from your local namespace/s to your remote namespace, e.G. localdaily to remotedaily. Afterwards create a prune job with your intended schedule for the remote backups for the namespace you want to sync to your remote pbs (e.g. keep 6 hourly, 14 daily, 2 weekly and 6 monthly). As final step create a sync job to push the remote namespace to your remote pbs.
I personally do it like this (I actually have different numbers, modified to make things easier):
- A local PBS has a namespace pve-cluster for the local backups, it's prune schedule is something like twenty-four hourly, thirty daily, six weekly and twelve monthly backups.
- I have a second namespace called remotesync, a local syncjob sync all backups from pve-cluster to remotesync every hour (e.G. 0:00, 1:00, 2:00 etc), a prunejob makes sure that I just keep the last seven daily, six weekly and twelve monthly backups.
- A pull-sync job on my remote PBS pulls everything new from the remotesync namespace on my local PBS. If I wanted I could also do this as a push-sync but I prefer pull-sync for security reasons (since no local server of mine need write-access to the remote PBS->Great for ransomware protection).