Data Volumes cloning a PVC source support multiple forms of cloning. Based on the prerequisites listed here, a cloning method will be utilized with varying degrees of efficiency. These forms are CSI volume cloning, smart cloning, and host-assisted cloning. CSI volume cloning and smart cloning employ CSI driver features in order to more efficiently clone a source PVC, but have certain limitations, while host-assited cloning provides a slower means with little limitation.
The required prerequisites in order to trigger efficient cloning methods
-
CSI Volume Cloning:
- The csi driver backing the storage class of the PVC supports volume cloning, and corresponding StorageProfile has the cloneStrategy set to CSI Volume Cloning (see here for more details)
- The source and target PVCs share the same Storage Class
- The source and target PVCs share the same Volume Mode
- The user creating the DataVolume has permission to create the
datavolumes/source
resource in the source namespace - The source volume is not in use
-
Smart Cloning:
- A Snapshot Class associated with the Storage Class exists
- The source and target PVCs share the same Storage Class
- The source and target PVCs share the same Volume Mode
- The user creating the DataVolume has permission to create the
datavolumes/source
resource in the source namespace - The source volume is not in use
- DataVolumes: datavolumes
- DataVolume Cloning: clone-datavolumes
- CSI Volume Cloning: csi-cloning
- Smart Cloning: smart-clone
- Namespace Transfer: namespace-transfer