mirror of
https://github.com/vmware-tanzu/velero.git
synced 2026-01-07 13:55:20 +00:00
2.4 KiB
2.4 KiB
title, layout
| title | layout |
|---|---|
| Container Storage Interface Snapshot Support in Velero | docs |
This feature is under development. Documentation may not be up-to-date and features may not work as expected.
Prerequisites
The following are the prerequisites for using Velero to take Container Storage Interface (CSI) snapshots:
- The cluster is Kubernetes version 1.17 or greater.
- The cluster is running a CSI driver capable of support volume snapshots at the v1beta1 API level.
- The Velero server is running with the
--features EnableCSIfeature flag to enable CSI logic in Velero's core. - The Velero CSI plugin is installed to integrate with the CSI volume snapshot APIs.
- When restoring CSI volumesnapshots across clusters, the name of the CSI driver in the destination cluster is the same as that on the source cluster to ensure cross cluster portability of CSI volumesnapshots
Implementation Choices
This section documents some of the choices made during implementation of the Velero CSI plugin:
- Volumesnapshots created by the plugin will be retained only for the lifetime of the backup even if the
DeletionPolicyon the volumesnapshotclass is set toRetain. To accomplish this, during deletion of the backup the prior to deleting the volumesnapshot, volumesnapshotcontent object will be patched to set itsDeletionPolicytoDelete. Thus deleting volumesnapshot object will result in cascade delete of the volumesnapshotcontent and the snapshot in the storage provider. - Volumesnapshotcontent objects created during a velero backup that are dangling, unbound to a volumesnapshot object, will also be discovered, through labels, and deleted on backup deletion.
Known Limitations
- The Velero CSI plugin, to backup CSI backed PVCs, will choose the first VolumeSnapshotClass in the cluster that has the same driver name. Issue #17
Roadmap
Velero's support level for CSI volume snapshotting will follow upstream Kubernetes support for it, and will reach general availability sometime after volume snapshotting is GA in upstream Kubernetes. Beta support is expected to launch in Velero v1.4.