Overview
A retention policy declares which snapshots to keep and which to remove based on age and recency. Ironcore Backup Solution (IBS) applies the policy during scheduled prune runs. The standard compliance pattern across the platform is 7-day daily + 3-week weekly at the Primary DC, with 52-week weekly archival at the Backup site. This page covers the retention syntax, policy placement (job vs. datastore), the Prune Simulator, and how to roll out a new policy safely.Prerequisites
- Administrator role on the Polystack platform
- At least one datastore provisioned
- At least one backup group with existing snapshots (to preview policy impact)
Compliance Retention Pattern
The pattern below satisfies the standard infrastructure retention model. Apply it consistently across all production workloads.| Layer | Policy | Target | Purpose |
|---|---|---|---|
| Daily | keep-daily=7 | Primary DC datastore | Recover any day in the past week |
| Weekly | keep-weekly=3 | Primary DC datastore | Recover a stable weekly snapshot for the past 3 weeks |
| Weekly Archival | keep-weekly=52 | Backup site datastore | Long-term archival and offsite disaster recovery |
Retention Window Reference
| Window | Behaviour |
|---|---|
keep-last=N | Keep the N most recent snapshots regardless of age |
keep-hourly=N | Keep the most recent snapshot for each of the last N hours |
keep-daily=N | Keep the most recent snapshot for each of the last N days |
keep-weekly=N | Keep the most recent snapshot for each of the last N weeks |
keep-monthly=N | Keep the most recent snapshot for each of the last N months |
keep-yearly=N | Keep the most recent snapshot for each of the last N years |
keep-daily=7, keep-weekly=4, keep-monthly=12:
- The 7 most recent daily snapshots are kept
- Plus the most recent snapshot in each of the last 4 weeks
- Plus the most recent snapshot in each of the last 12 months
Policy Placement
A retention policy can be attached at three levels:| Level | Scope | When to Use |
|---|---|---|
| Backup job | All snapshots created by that job | Most common — keeps policy with the workload |
| Datastore | Default for all groups in the datastore | Platform-wide minimums |
| Namespace | All groups in that namespace | Per-team or per-environment overrides |
Configure a Job Retention Policy
- Deployment Console
- CLI
Preview the impact
Click Prune Simulator. The Simulator lists which existing snapshots
would be removed and which retained, without making any changes.
Configure a Datastore-Level Policy
A datastore-level policy is the default for any group that does not declare its own retention.- Deployment Console
- CLI
Open the datastore detail page. The Default Retention field accepts the
same windows as job-level retention. Save to apply.
Prune Simulator
The Prune Simulator computes the effect of a retention policy without modifying any data. Use it before any policy change to confirm the result matches your intent.Simulate a policy change
Prune Schedule
Prune jobs run on the datastore schedule (default: daily 05:00). Adjust as needed:- Deployment Console
- CLI
Open the datastore. Set Prune Schedule under Scheduled Tasks.
Compliance Hold
To prevent specific snapshots from being pruned regardless of retention policy, apply a Compliance Hold. Held snapshots are excluded from prune runs until the hold is removed.- Deployment Console
- CLI
Open the snapshot. Click Apply Hold. Enter a reason and the responsible
user / case number.
Troubleshooting
Prune did not remove expected snapshots
Prune did not remove expected snapshots
Confirm the active policy and check whether a more permissive policy is
cascading from the namespace or datastore level. Run the Prune Simulator
to identify the effective policy.
Snapshots remain in the datastore long after prune
Snapshots remain in the datastore long after prune
Prune only removes the snapshot manifest. The underlying chunks are
reclaimed at the next Garbage Collection run. Check the GC schedule and
last GC task result.
Policy change reduced retention too aggressively
Policy change reduced retention too aggressively
A more aggressive retention is permanent once GC runs. If GC has not
yet run, restoring the policy and re-running prune may bring back some
snapshots. Otherwise, restore from the Backup site replica.
Compliance hold not being honored
Compliance hold not being honored
Confirm the hold is active and not yet expired. Holds are also listed in
the snapshot detail panel and in the audit log.
Next Steps
Datastores
Datastore provisioning and scheduled tasks
Replication and Sync
Replicate the weekly archival window to the Backup site
Verification and Validation
Verify retained snapshots and run bi-annual mock drills
Backup Jobs
Operator view of backup jobs and retention
