Customizing your backup snapshot retention lets you specify the length of time your recovery points are kept on a device before being automatically purged.
What is the best method for setting my snapshot retention settings?
There are two methods available for determining how snapshot retention maintenance will be performed:
Tiered retention versus Basic retention
Tiered retention is the modern standard and we recommend it for all use cases and environments.
Tiered retention (sometimes referred to as Grandfather-Father-Son) is a process by which recovery points are removed differently, based on various time frames (tiers).
Recently-created granular recovery points are more frequently retained, while fewer older recovery points are kept.
Tiered retention involves granular recovery points with recent time frames (so fewer recovery points are retained for older backups.)
Tiered retention also allows you to specify the number of daily, weekly, monthly, and even yearly recovery points for a given protected system, with intervening backups automatically removed and consolidated.
Note: We recommend tiered retention for all use cases and environments.
Basic retention is officially deprecated as a long-term retention strategy and offers only a limited duration retention period on Axcient-hosted vaults. For long term retention, switch to tiered retention.
We do not recommend the use of basic retention in any environment.
- Basic retention retains all snapshots less than a given number of days old.
- Snapshots older than the set retention period are discarded.
- Basic retention does not use storage efficiently, so significantly more storage is required for a given length of recovery retention.
Do snapshot retention limits vary, based on the type of device?
- Appliances and private (self-hosted vaults) have no pre-defined snapshot retention limits.
Axcient-hosted vaults have hard limits on the maximum number of snapshots that may be retained for each tiered time period.
NOTE: If you are modifying existing protected systems, -1 will no longer be a retention setting option.
|Axcient-hosted vault retention choices||Limit of retention|
|Retain all snapshots for 1-30 days||30 days|
|After <Days> days, retain last snapshot of the day for||no more than 60 days|
|After <Weeks> weeks, retain last snapshot of the week for||no more than 26 weeks|
|After <Months>months, retain last snapshot of the month for||no more than 36 months|
|After <Years> years, retain last snapshot of the year for||no more than 10 years|
NOTE: If you are modifying existing protected systems, -1 will no longer be a retention setting option.
x360Recover release 12.2.0 is changing the default retention settings for new protected systems. These changes to default retention settings affect appliances, private vaults and Axcient-hosted vaults for new protected systems.
With release 12.2.0, servers and desktops will now be treated differently, and each has a different default value for retention settings (see below).
Important: Existing retention settings will not be modified by release 12.2.0, even if those existing retention settings contain invalid values under the new policy constraints.
Also: Please note that new changes to existing retention settings cannot be saved unless their new values comply with the new limits in release 12.2 0.
A newly-registered protected system will default to tiered retention with the following settings, based on the type of new device:
Default retention for servers
Default tiered retention for new servers:
Default retention of workstations/desktops
Default tiered retention for new desktops/workstations:
Keep all snapshots for seven (7) days
After seven (7) days, default tiered retention uses the following settings:
Keep last snapshot of the day for seven (7) days
This length of time provides granular recovery of changes made throughout each day for recent backups. As an example, you may need this when users request recovery of a file from a specific time in a recent workday.
This time frame provides reasonable granularity of available backup snapshots. These snapshots can be used for recoveries spanning a medium time frame, such as when a user discovers a bad file but does not know specifically when the file was lost or whether it was corrupted recently.
These tiers allow long term historical backups for compliance and SLA purposes, while efficiently managing the storage requirements of the BDR server.
Think of tiered retention as a series of passes. Each pass "marks" a given snapshot to be retained. A snapshot that is "marked" by any pass must be retained.
There are three types of snapshot retention passes available:
Pass to retain all snapshots
You can set this to retain a specific number of days. This must be a positive, non-zero number. If you select an invalid value, the default will automatically set to 14 days. The retention period is relative to the date/time of the newest snapshot, or the current date/time, whichever is older. All snapshots newer than the retain-all-oldest-mark-date will be marked for retention.
Pass to retain a certain number of snapshots
There are four instances of this type of pass:
- End of day
- End of week
- End of month
- End of year
These passes are all independent of each other. (In other words, the "time periods" for each of these passes will overlap.) These passes are all relative to the "retain-all-oldest-mark-date" and the times for each are not relative to each other.
In this way, each pass simply marks additional recovery points to be retained.
Changing the configuration of a different "end of period" pass does not change any other "end of period" pass.
Airgap is deployed by default to ensure recoverability of recent backups and retains a number of snapshots (regardless of dates). This ensures that some minimum number of recovery points is always available for recovery. For more information on AirGap, please review this article
But remember to consider the details of those longer time periods: The last backup during a weekly time frame might be on Friday, or Sunday, or even Tuesday afternoon, if backup frequency is intermittent.
For example: Setting retention to keep seven daily snapshots does NOT (necessarily) mean you'll keep only snapshots from the last seven days.
Setting retention to keep seven daily snapshots means you'll retain the last seven existing end-of-day snapshots.
So, if your protected system is configured to only take one backup per week, is that seventh snapshot retained from 26 weeks ago?
Not quite. It will actually be x number of days (based on your configuration for the Keep All snapshots value) plus 26 weeks old!
IMPORTANT: All tiers are each calculated starting the day AFTER the end of the Keep All snapshots period.
In other words, each tier is calculated independently, starting from the same date: the end of the Keep All time frame.
For example, if you retain fourteen daily and two weekly snapshots, both of those weekly snapshots overlap with one of the fourteen daily snapshots - and you have not added any length to your overall retention time frame.
Whatever value you enter for daily, weekly, monthly, or yearly, the retention engine adds one to it.
Why do we do this? Because calculating retention based on keeping the last recovery point is somewhat counter-intuitive. Determining in your head what your oldest snapshot will be is tricky.
For the most extreme example of this, consider yearly backups. If you set your schedule to retain one yearly snapshot, intuitively (in most people’s minds) that implies that you retain a whole year of data that you can roll back and recover. The last yearly snapshot will presumably be from one of the last days in December, from last year. But - if today is Jan 1, that ‘yearly’ snapshot is from last week!
The bottom line is that retaining one extra daily or weekly snapshot has almost no impact on your overall storage usage. And retaining that extra monthly or yearly snapshot ensures that you really have that whole month or year of data history.
Note: Adding +1 to the value does not apply to values of zero.
Q: What happens during retention cleanup if there have been no recent backups?
A: Retention cleanup is based upon the time of the most recent snapshot. So, for example, if your most recent backup was 10 days ago, and your retention schedule is to keep all snapshots for 7 days, then keep 7 daily snapshots, etc., the most recent snapshot would be that last snapshot that was taken 10 days ago. You will retain all snapshots taken between 10 and 17 days ago, and then begin retaining the last snapshot of the day between 18 and 24 days ago. Essentially, if backups stop occurring, retention cleanup will stop occurring and you will not gradually ‘bleed-out’ your remaining snapshots.
Q: If a system clock is improperly set to the future, and then a snapshot is created, what happens when the clock is set backwards to the correct date/time?
A: The new snapshot time will be taken as the starting point for calculating retention cleanup. Depending on configuration and the specific time ranges involved, some unintended snapshot removal could result in this scenario if retention cleanup is started while the clock is set forward. ‘Now’ time used to calculate cleanup of snapshots is either the current time, or the time of the most recent backup, whichever is OLDER.
Q: Are ALL snapshots newer than the "retain-oldest-mark-date" marked for retention?
A: Yes. For example, if Retain all snapshots is set to 7 days, and Retain the last snapshot of the day is set to 14 days, then the retain-oldest-mark-date for all days is the date/time of the most recent snapshot minus 7 days. No snapshot younger that that date will be removed. The retain-oldest-mar-date for Daily snapshots is the date/time of the most recent snapshot minus 7 days (keep ALL) minus another 14 days (Keep Daily). One snapshot per day (the oldest one taken during the 24-hour day) will be retained. If no snapshots were taken on a given day (Sat/Sun perhaps?) then no snapshot will remain for that day slot.
Important note: Further tiers are ALSO calculated from the end of Keep ALL date period. For example, if we set keep 5 Weekly snapshots, the retain-oldest-mark-date will be the date/time of the most recent snapshot minus 7 days (Keep All) minus 5 weeks, where each week BEGINS on Monday and ENDS on Sunday. The snapshot retained will be the LAST snapshot taken during that Mon-Sunday time block (probably some time on Friday, Saturday, or Sunday, depending on your backup schedule.)
Important Note: Just to repeat: The retention cycle is NOT
Keep ALL snapshots for some days, then
- Keep an end of day snapshot for some days, then
- Keep some end of week snapshots for some weeks, etc.
Instead, the retention cycle is:
Keep ALL snapshots for some days, then:
- Keep some end of Day snapshots from the end of Keep All time window
- Keep some end of Week snapshots from the end of Keep All time window
- Keep some end of Month snapshots from the end of Keep All time window
- Keep some end of Year snapshots from the end of Keep All time window
Q: What happens if I disable the "effective-number-of-periods" by setting it to zero?
A: The pass will be skipped without doing anything. No end of period snapshots for that type of period will be marked for retention. Some periods may overlap with other tiers, however. For example if you set Retain 21 days of Daily snapshots, and retain 0 weeks of Weekly snapshots, depending on the day of the week, you will have either 2 or 3 ‘Sunday’ backups that would have qualified as an End of Week backup, etc.
Q: How is the oldest snapshot for a day interval determined?
A: The latest snapshot is chosen from all snapshots included in the date interval between 00:00 and 23:59 of the day of the year determined by the date parameters according to the date data type.
For example: To determine the last snapshot of the daily period, we select all snapshots that relate to the time between 2021-04-28 00:00:00, 2021-04-28 23:59:59. The oldest snapshot will be the one that is closer to the end time of the current day period.
Q: How do I determine the oldest snapshot for a week?
A: The oldest snapshot for a week interval is determined by selecting the latest snapshot for all snapshots included in the date range between 00:00 on the first day of the week (Monday) and 23:59 on the last day of the week (Sunday), as defined by the date parameter set according to the Python date data type "isocalendar" function.
Note: “Isocalendar” weeks always start on Monday, and depending on how the calendar date falls, years may have either 52 or 53 weeks.
Q: When a protected system is configured for replication on an Appliance, are snapshots deleted that have not yet been successfully transferred to all configured vaults and ingested into ZFS?
A: No, snapshots that have not yet been successfully transferred to all configured vaults and ingested into ZFS cannot be deleted and will not be removed by retention cleanup regardless of what settings the user has chosen for retention.
Q: Do retention policies vary based on the license type?
A: Protected systems licensed on an appliance using Storage Licensing have a fixed mandatory retention policy on Axcient-hosted vaults. (The actual policy is dependent on the Storage License selected (3-year or 10-year), with changes to retention settings on the vault locked out. Appliance retention settings may be selected at will.)
Q: Are there any situations where retention cleanup is blocked?
A: Yes, there are several cases where retention cleanup may be blocked:
1. Retention cleanup on vaults and appliances is blocked for a protected system while network recovery back to an appliance is in progress. While the job is active, retention cleanup will not occur, and snapshots will not be removed.
2. Retention cleanup on appliances where replication to a vault is enabled cannot occur for any snapshot not yet replicated to the vault.
3. During appliance to vault USB seeding, snapshots on the appliance cannot be removed, and retention cleanup will not occur, until the seeded base image has been ingested on the vault. Only snapshots fully ingested by the vault are eligible for cleanup on the appliance.
4. During migration (over network) from one appliance to another, or one vault to another, retention cleanup will not occur for the protected system on either the source or target device.
Q: How efficient is the retention cleanup algorithm?
A: The retention cleanup algorithm should use a reasonable amount of memory (< 1 GB) and take a reasonable amount of time (< 5 seconds) even for a protected system that has 10,000 snapshots.
Q: Do I ever need to adjust my retention settings to keep all snapshot forever?
A: No. Default retention cleanup rules will prevent cases where retention cleanup may break functionality (like re-enabling appliance to vault replication after performing a recovery) or cause unexpected data loss (like slowly bleeding away all snapshots over time if a system is parked or otherwise stops taking backups.)
Note: This includes the specific scenario of archiving a server and retaining the existing backups. All snapshots will be retained indefinitely when backups stop occurring. To ensure no new backup occurs later in the future (which could result in unexpected data removal for the protected system,) we recommend assigning a Disabled backup schedule to the protected dystem to explicitly exclude it from future backups should the system come online.
SUPPORT | 720-204-4500 | 800-352-0248
- Contact Axcient Support at https://partner.axcient.com/login or call 800-352-0248
- Free certification courses are available in the Axcient x360Portal under Training
- To learn more about Axcient products, sign up for a free one-on-one training
- Subscribe to the Axcient Status page for updates and scheduled maintenance
802 | 826 | 951 | 1329 | 1350 | 1514 | 1545