Having three nodes and shared Ceph storage solves the “a single machine dies” problem, but it does nothing for “I fat-fingered an rm inside a VM” or “the whole rack loses power during a storage rebuild.” That’s what backups are for, and until this week mine consisted of vague intentions.

Why Proxmox Backup Server specifically

I could have pointed each node at a plain NFS share and called it done, but PBS gives you deduplication and incremental backups at the chunk level, which matters a lot once you’re backing up several VMs with mostly-overlapping base images. It also integrates directly into the Proxmox UI, so scheduling doesn’t mean juggling a separate cron job per node.

Setup, roughly

  1. Installed PBS as its own lightweight VM on the NAS hardware, not on a cluster node — I didn’t want backup infrastructure sharing failure domains with the thing it’s backing up
  2. Added the PBS instance as a storage target in the Proxmox datacenter view
  3. Set up a nightly backup job per VM, staggered so they don’t all hit the NAS at once
  4. Ran a manual restore test on a throwaway VM, because a backup you haven’t restored from is a theory, not a backup

What surprised me

Deduplication ratios were better than expected — after the first full backup, subsequent incrementals for the three VMs sharing a base Debian image were tiny, a few hundred megabytes instead of tens of gigabytes. The nightly job finishes in minutes now.

Next: getting a copy of the PBS datastore off-site, since right now “backed up” still means “backed up to something in the same room.”