Skip to main content
Volume-level SnapMirror control
DonkeyFleet
Storage Replication Orchestration

Know what will change before storage changes.

Discover drift, protect new volumes, and guide destination-only remediation across ONTAP and Amazon FSx for ONTAP—with dry-run defaults, durable intent, and a human in every destructive decision.

Java 21QuarkusPostgreSQLVault + OIDC
Donkey carrying replicated storage between a data center and cloud
Control loop

Safety is structural, not a checklist.

DonkeyFleet turns intent and observation into bounded work.
Each boundary has a durable record and a visible operator outcome.

01

Observe completely

Read every page from both sides and stop the entire run when observation is incomplete.

02

Decide with guardrails

Apply age, action, bandwidth, placement, policy, and orphan-transition limits before work is eligible.

03

Authorize explicitly

Keep human approval separate from execution, with auto mode restricted to eligible new protection and fill growth.

04

Resume durably

Persist intent and ONTAP job identity before polling so interrupted work resumes instead of being duplicated.

One explainable path

Approval authorizes. Reconcile executes.

Browser actions never call ONTAP directly. The next reconcile re-observes identity and policy, then executes only when the approved payload is still valid and effective dry-run is off.

Follow an approval through Apply
  1. Observe
  2. Evaluate
  3. Decide
  4. Approve
  5. Apply
  6. Audit
Deploy at your scale

One image, two operating footprints.

Evaluate

Standalone stack

Docker Compose bundles PostgreSQL, dev-mode Vault, dev-mode Keycloak, and DonkeyFleet for a compact trial.

  • Best for demos and small footprints
  • Fixed development credentials
  • Persistent PostgreSQL volume
Open standalone quickstart →
Operate

Kubernetes

Run one controller replica with external PostgreSQL, Vault, and OIDC for a production control plane.

  • External persistent services
  • Helm-managed runtime safety
  • PostgreSQL advisory locking
Open Kubernetes quickstart →
Begin with observation

Run dry. Review the fleet.
Earn trust before Apply.

Run the first dry-run