I was wondering how often does one choose to make and keep back ups. I know that “It depends on your business needs”, but that is rather vague and unsatisfying, so I was hoping to hear some heuristics from the community. Like say I had a workstation/desktop that is acting as a server at a shop (taking inventory / sales receipts) and would be using something like timeshift to keep snapshots. I feel like keeping two daily and a weekly would be alright for a store, since the two most recent would not be too old or something. I also feel like using the hourly snapshots would be too taxing on a CPU and might be using to much disk space.
Storage arrays: hourly snapshots stored for 24 hours, daily snapshots stored for one week.
Longer term stored in veeam on a different array, those are taken daily and stored for 30 days typically. Sometimes longer archival copies if the business needs.
Bare metal usually daily
We also replicate all data live up to the cloud, for DR. (windows dfsr)
Backup on different levels, one of my clients who I would say has similar ifrastructure uses following approach:
- backup on the vm level - backing up snapshot of the entire virtualization guest - at least once a week, always before update/upgrade. These can be big - consider ZFS pool w/ compression and deduplication active - but that is also hw intesive. On the other hand, I don’t think you need to keep more than last two successfull backups.
- filesystem level - run rdiff-backup against the / of the filesystem several times a day. SInce it is essentially versioning, you are only backing up new changes. No zetabyte needed here, ext3/4 will do.
- drop database somewhere ideally several times a day - even if there are no incidents, your developers will love you.
The recovery strategy is as follows:
- pull the guest out of the last vm backup
- sync up the files from last rdiff-backup run
- discuss w/ the developer DB recovery - or just recover the last backup and hope for the best…