Protection policy
Policy answers three independent questions:
- Which source volumes are in scope? Volume groups and ignore rules.
- How should they be protected? Replication profiles.
- How much work may proceed? Automation profiles.
Replication profile
| Parameter | Meaning |
|---|---|
| ONTAP policy | Existing asynchronous mirror, mirror-vault, or vault policy |
| Job schedule | Existing destination cron schedule; DonkeyFleet does not create it |
| Throttle (Kbps) | Optional relationship throttle; when empty, baseline admission uses the lower automation limit |
| Naming strategy | suffix or same_as_source; template provisioning is currently refused |
| Size policy | Match source, or source size plus configured headroom |
| Tiering and cooling | Destination storage-tier intent; select tiering explicitly |
Aggregates, policies, and schedules are discovered values. DonkeyFleet refuses missing or ambiguous placement rather than guessing.
Automation modes
| Mode | New protection | Remediation | Orphan deletion |
|---|---|---|---|
manual | Records review work only | Proposal only | Approval always required |
approve | Human approval required | Human approval required | Approval always required |
auto | Eligible work may run when effective dry-run is off | Only implemented bounded rules may run | Approval always required |
Automation parameters
The form defaults are starting points, not universal sizing recommendations.
| Parameter | UI default | Operational effect |
|---|---|---|
| Max actions per run | 10 | Bounded approval/admission window and preparation batch; does not override baseline limits |
| Minimum volume age (hours) | 24 | Time since first complete observation before protection is eligible |
| Max orphan transitions | 5 | Absolute cap on new orphan transitions in one run |
| Max orphan transitions (%) | 10 | Percentage cap evaluated with the absolute orphan guardrail |
| Orphan grace (hours) | 72 | Minimum orphan duration before cleanup can be proposed |
| Fill threshold (%) | 90 | Opens a destination-fill episode |
| Autonomous grow (%) | 10 | One bounded grow attempt per episode; configure 5 or less for the accepted safety cap |
| Target utilization (%) | 70 | Target used for the human growth recommendation |
| Episode reset threshold (%) | 80 | Fill must recover below this value before a new episode can open |
| Max cumulative growth (%) | 25 | Total autonomous-growth ceiling relative to the episode baseline |
| Max concurrent initializes | 1 | Maximum baselines admitted at once for this automation profile |
| Intercluster budget (Kbps) | 200000 | Total baseline bandwidth budget |
| Baseline throughput (Kbps) | 130000 | Estimate and default throttle input when the replication profile has no throttle |
| Baseline overrun factor | 1.5 | Urgent-alert multiplier over the larger of the size estimate and ten-minute floor |
Set minimum volume age to 0 only when existing matching volumes should become eligible
immediately. With a higher value, they remain in Backlog with min_volume_age until the age is
reached and a reconcile observes them again.
Raising max_concurrent_initializes does not guarantee that many simultaneous baselines. Each
candidate must also fit the intercluster budget. Estimate the impact on existing scheduled
SnapMirror traffic before raising either value.
Volume groups and ignores
Lower numeric group priority wins. Rules inside a group are ordered AND conditions. A matching group assigns both profiles; DonkeyFleet never infers an automation profile from a replication profile.
For Trident-backed Kubernetes storage, volume groups select the backing ONTAP volumes using ONTAP-visible attributes such as the storage prefix and provisioning metadata in the volume comment. DonkeyFleet applies policy to the ONTAP volume UUID, not to the PV or PVC object.
Ignore rules override group matching. Clones and foreign-managed volumes are also structurally excluded. Always preview resulting candidates in dry-run before enabling Apply.