Proxmox does have High Availability (HA) but it's for VM's running services and not backup/storage:
https://pve.proxmox.com/wiki/High_Availability
You'll need shared storage and at least three nodes to make sure, for example, that there's a VM with pihole always available for your network clients. I haven't really ventured into this because of the shared storage and extra node requirements. I have set up a separate network for Corosync (keeping the nodes synced) and that itself required additional network ports on each node and a separate vlan/switch connecting the Corosync interfaces together.
For redundant storage, it's much easier to setup VM's with TrueNAS on each host and making sure they're all synced with each other. Personally, I have one NAS as my main storage server and all of the non-redownloadable data (keys, licenses, configuration files, documents) are synced to two other network devices with Syncthing (which is a two-way sync). I also have a manual one-way sync to another network device for these files that runs every night at 1am. I keep the last 30 days backups of each file and then one version for each month prior to that. This way, I have my important data in four locations and I have version history that goes back a few years.
That said, I have plans and I can come up with scenarios to make use of multiple Tiny PCs easily!
I just finished setting one up as a server running MQTT + NodeRed + InfluxDB + Grafana and I'm using that to monitor power consumption from a few of the smart plugs I have connected to my network. It's a simple i3 with 4GB of memory and a 250GB ssd, pulls under 10w and shows me nice graphs.
Another I'm setting up is a Proxmox Backup Server, which doesn't need a dedicated node on its own so I'll have a network share on that to store Ansible configuration files and other backups. Snapshots would be very helpful since it feels like I'm always breaking stuff when I intend to streamline things.
I'm also planning a media transcoding server with one of these machines, currently that role is being done by an old laptop. I don't use Youtube subscriptions, I just download new videos using youtube-dl that then get put into a plex library, so that can also be done on the transcoding server.
I want to get back into seeding linux distros (ha) or at least the OSS that I made use of, I used to do this when I was younger, and a TinyPC is perfect for this.
One very important todo is a caching server — we use a ton of bandwidth (over 5TB each month), so it would be nice to cache software/app updates since they consume a lot of bandwith.
The list goes on and on — like my own self hosted password manager, but that is for later once I have an offsite backup as part of my network.
For the last year or so, I've been chasing 99.9% uptime (9 hours of downtime per year) — just for the personal satisfaction aspect of achieving it with second hand batteries and non-enterprise equipment:
Availability % | Downtime per year |
---|
99 | 3.65 days |
99.9 | 8.76 hours |
99.99 | 52.56 minutes |
99.999 | 5.26 minutes |
99.9999 | 31.5 seconds |
99.99999 | 3.15 seconds |