Starting today, we have Monthly, Weekly, Daily, and Hourly backups of the club server. Offsite. Encrypted.
Retention times for each backup set:
- Monthly: 14
- Weekly: 6
- Daily: 10
- Hourly: 24
How does this work? Tarsnap + Snapbak
Tarsnap is an online backup service, with a commandline interface that's effectively the same as the tar command. so
tarsnap -cf RootFS / creates an online archive name
RootFS that's the entire
/ mount point deduplicated, compressed, encrypted, and then stashed away online. Since the deduplication happens across all of the archives, you can do
tarsnap -cf RootFS-$(date -I) / and then delete the older ones to keep your backups rotating, without having to compress and upload files that haven't changed. That's where Snapbak comes in. It handles that rotation and archive expiration automatically. So I've setup 4 cronjobs that call Snapbak and it deals with the rest for me.
Additionally Tarsnap charges 250 picodollars/byte for bandwidth in/out and 250 picodollars/byte-month for storage. So the club server ends up costing ~$5.30/month.