I have a few servers without offsite backups. Luckily I just acquired a new physical location that allows me the opportunity to run a fully self-owned backup server.

I have a Dell Poweredge server with a bunch of random consumer drives I used to use for a media server that I’m planning on using as a backup server to back up some accounting, scans, photos, etc as well as Proxmox snapshots and backups from my main servers which run Proxmox VMs and containers.

So here’s my plan, and please feel free to critique anything here:

Backup Server – Proxmox on baremetal — VM for OMV — VM for Proxmox Backup Server Production Server – Proxmox on baremetal — Duplicati LXC

The optical drive has been replaced with an SSD which will contain the operating system. The front 4 drive bays will contain HDDs passed directly through to the OMV VM.

In OMV, I’ll use snapraid + mergerfs to combine my drives into a pool, reserving the largest drive as a parity drive. I’ll then share the pool as an NFS. This pool will contain backups only.

In the Proxmox Backup Server VM, I’ll configure the storage to use the NFS pool from OMV. I have tried using TrueNas Scale instead of OMV, but tinkering with TrueNas Scale in terminal ended up quickly corrupting everything.

I’ll connect the two VMs to a VPS over wireguard. That VPS will also be connected to my main servers. This will allow backups to flow directly to the backup server without any local port-forwarding. The main servers will backup their Proxmox snapshots and backups directly to that Proxmox Backup Server.

On the main servers, an LXC with Duplicati will handle data backups and send them encrypted over to OMV via the NFS share.

I feel pretty good about this setup, but I’m not so confident about the choice of NFS for this. I’m curious if there’s a better suited transfer method.

  • Conrad Poohs@vlemmy.net
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 years ago

    One recommendation is to test failure recovery before considering your setup production. Pull a data disk from your backup server to confirm your array still functions, then document your recovery procedure. Do all this prior to backing-up any critical data in case there’s a problem with recovery.