Another day with some spare time, and another improvment incoming. I've set up Litestream on my VPS to do streaming replication of the SQLite database backing this site. So far I've set up ansible to install dependencies (sqlite and litestream itself, latter installed from a downloaded .deb), create the litestream config file from a template, and start the service. Service will also be reloaded on configuration changes. Right now I'm just replicating the database to another directory on the host to verify that everything is working. Next step is to set up replication to Backblaze B2 so I can have a proper backup setup.
Streaming replication to Backblaze works like a charm! Seeing as this is a very low-traffic site, I've set the sync interval on the s3 bucket to 1m. This should really limit any costs associated with this backup, even in the case of a massive traffic surge. For normal operation, I'm pretty sure I'm looking at free backup here. We'll see in a month, I guess.
One thing I actually should try is a recovery of the B2 backups. Not today, though.