K8s 1.32: Volume Group Snapshots now in beta for data integrity.
The volume group snapshot feature, introduced as an Alpha in Kubernetes 1.27 has now reached Beta in version 1.32. This functionality enables crash-consistent snapshots of multiple volumes using group snapshot extension APIs. Kubernetes organizes PersistentVolumeClaims (PVCs) into groups via a label selector for snapshotting. The feature’s primary goal is to facilitate workload recovery by restoring a collection of snapshots to new volumes from a crash-consistent recovery point.
This feature is supported exclusively for CSI volume drivers.
Certain storage systems can create crash-consistent snapshots of multiple volumes simultaneously. These “group snapshots” ensure that all volumes are captured at the same point in time. Group snapshots can either populate new volumes with the snapshot data or restore existing volumes to a previous state.
The ability to take consistent group snapshots is beneficial for applications that span multiple volumes, ensuring that all components are captured at the same point in time. Although it is possible to manually quiesce applications before taking individual snapshots, this process can be time-consuming or impractical in certain scenarios. Consequently, users may prefer to conduct regular backups with application quiescence while relying on consistent group snapshots for more frequent backups.
Read Also: Data Management in Kubernetes with Portworx
Kubernetes manages volume group snapshots using three API resources:
These APIs are implemented as CustomResourceDefinitions (CRDs) and require installation in Kubernetes clusters for CSI driver compatibility.
The implementation of volume group snapshots, part of the external-snapshotter repository, involved updates to multiple components:
The volume snapshot controller and CRDs operate at the cluster level, while the snapshotter sidecar is deployed with each CSI driver. Kubernetes encourages distributors to include the snapshot controller and CRDs in their cluster management processes as a default addon.
--enable-volumegroup-snapshot flag was replaced with a feature gate (--feature-gates=CSIVolumeGroupSnapshot=true). The feature is disabled by default.To create a group snapshot:
VolumeGroupSnapshotClass specifying the CSI driver and provisioning rules.VolumeGroupSnapshot, which either dynamically provisions the snapshot or references a pre-existing VolumeGroupSnapshotContent.For dynamic provisioning, use a selector to group PVCs by labels. The creation process also generates individual volume snapshots and a VolumeGroupSnapshotContent with references to the underlying storage.
To import an existing group snapshot, manually create the following:
VolumeSnapshotContent objects for each individual snapshot.VolumeGroupSnapshotContent with references to the individual snapshot handles.VolumeGroupSnapshot referencing the VolumeGroupSnapshotContent.Restore involves creating new PVCs from the individual snapshots in the group. Repeat the process for each snapshot to fully restore the application state.
To implement support, CSI drivers must:
CREATE_DELETE_GET_VOLUME_GROUP_SNAPSHOT capability.The Kubernetes project recommends bundling the snapshot controller and CRDs with cluster management processes, independent of CSI drivers. The external-snapshotter sidecar monitors API server changes and triggers CSI operations for group snapshots.
Current limitations include:
Future releases aim to gather feedback and increase adoption to advance the feature to General Availability (GA).
ZSvirt is a KVM-based virtualization platform that ZStack open-sourced under GPLv3 in August 2026. It…
The perimeter your firewall was built to protect no longer exists. 88% of organizations now…
SaaS security teams are under pressure from every side. Product teams ship faster, customers expect…
A convincing preview is a useful first result, but an asset becomes usable only when…
It always starts small, doesn’t it? One team picks up Playwright for UI tests. Somebody…
Your IT team is already stretched. Ticket queues grow faster than headcount. Finance demands cost…