Back Up and Restore Object Storage
विहंगावलोकन
इलम does not run automated backups of object storage by default.
The bundled providers persist their data on PersistentVolumeClaims
managed by the underlying CSI driver, and the chart preserves those
PVCs across हेल्म अपग्रेड और helm rollback. Disaster recovery
beyond PVC retention is operator-driven.
This page describes three layers of data protection, ordered from infrastructure-level to application-level:
- PV snapshots via the Kubernetes
VolumeSnapshotAPI. Point-in-time copies of the underlying volume; CSI-driver-dependent. - Off-cluster
mc mirrorcopies to an external S3 backend. Logical-object-level mirrors that survive cluster loss. - Application-level table snapshots in Iceberg, Delta, and DuckLake. Time-travel semantics inside the table format; no infrastructure involvement.
The recipes below cover the active provider's bucket data. For recovering from misconfiguration without data loss, refer to Troubleshoot Object Storage.
Backup layers compared
| Layer | RPO | RTO | Coverage | Cluster loss survives? |
|---|---|---|---|---|
| PV snapshot | Snapshot interval (typically hourly) | Minutes (restore + provider restart) | All buckets, including metadata indices | No (snapshot lives on the same storage backend) |
Off-cluster mc mirror | Mirror interval (typically hourly) | Minutes (re-mirror to new cluster) | All buckets at the S3 layer | हाँ |
| Iceberg / Delta snapshot | Per-commit | Seconds (VERSION AS OF) | One table at a time | Only if the table's underlying objects survive |
For production deployments, combine an off-cluster mc mirror job for
disaster recovery with the table-format snapshots that Iceberg, Delta,
and DuckLake already provide.
Layer 1: PV snapshots via the VolumeSnapshot एपीआई
The Kubernetes VolumeSnapshot API has been generally available since
Kubernetes 1.20 (December 2020). Snapshot support is provided by the
CSI driver and must be advertised by the driver itself; not every CSI
driver implements snapshotting. For the upstream reference, see
Volume Snapshots.
Verify CSI snapshot support
kubectl get csidriver -ओ custom-columns=NAME:.metadata.name,SNAP:.spec.attachRequired
kubectl get volumesnapshotclass
If volumesnapshotclass returns nothing, install the
external-snapshotter controller and a VolumeSnapshotClass for the
cluster's CSI driver before proceeding.