Volume Snapshots
By default, this is disabled.
Sync VolumeSnapshot, VolumeSnapshotContent
and VolumeSnapshotClass
resources from the virtual cluster to the host cluster.
Until enabled, creating a VolumeSnapshot custom resource in the virtual cluster has no effect on the host cluster.
Host prerequisites​
- You should install the volume snapshots validating webhook in your host cluster and alternatively use the central admission controller feature within your vCluster.
- Your host cluster must have all relevant snapshot CRDs installed, without which the vCluster instance fails to start when volume snapshots sync is enabled.
- You should install a common snapshot controller on your host cluster, as well as a compatible CSI driver. Without these, vCluster cannot create the volume snapshots in the storage backend.
Sync VolumeSnapshots from the virtual to host cluster​
sync:
toHost:
volumeSnapshots:
enabled: true
Config reference​
volumeSnapshots
required object ​
VolumeSnapshots defines if volume snapshots created within the virtual cluster should get synced to the host cluster.
volumeSnapshots
required object ​enabled
required boolean false ​
Enabled defines if this option should be enabled.
enabled
required boolean false ​patches
required object[] ​
Patches patch the resource according to the provided specification.
patches
required object[] ​path
required string ​
Path is the path within the patch to target. If the path is not found within the patch, the patch is not applied.
path
required string ​expression
required string ​
Expression transforms the value according to the given JavaScript expression.
expression
required string ​reverseExpression
required string ​
ReverseExpression transforms the value according to the given JavaScript expression.
reverseExpression
required string ​reference
required object ​
Reference treats the path value as a reference to another object and will rewrite it based on the chosen mode
automatically. In single-namespace mode this will translate the name to "vxxxxxxxxx" to avoid conflicts with
other names, in multi-namespace mode this will not translate the name.
reference
required object ​apiVersion
required string ​
APIVersion is the apiVersion of the referenced object.
apiVersion
required string ​apiVersionPath
required string ​
APIVersionPath is optional relative path to use to determine the kind. If APIVersionPath is not found, will fallback to apiVersion.
apiVersionPath
required string ​kind
required string ​
Kind is the kind of the referenced object.
kind
required string ​kindPath
required string ​
KindPath is the optional relative path to use to determine the kind. If KindPath is not found, will fallback to kind.
kindPath
required string ​namePath
required string ​
NamePath is the optional relative path to the reference name within the object.
namePath
required string ​namespacePath
required string ​
NamespacePath is the optional relative path to the reference namespace within the object. If omitted or not found, namespacePath equals to the
metadata.namespace path of the object.
namespacePath
required string ​labels
required object ​
Labels treats the path value as a labels selector.
labels
required object ​