Kubernetes v1.36 Brings Volume Group Snapshots to General Availability
Introduction
Kubernetes v1.36 marks a significant milestone for storage management: Volume Group Snapshots have officially reached General Availability (GA). First introduced as an alpha feature in v1.27, progressing to beta in v1.32, and reaching a second beta in v1.34, this feature now provides a stable, production-ready way to capture crash-consistent snapshots of multiple volumes simultaneously. Built exclusively for CSI volume drivers, it opens up new possibilities for data protection and workload recovery in multi-volume applications.
What Are Volume Group Snapshots?
Some storage systems support creating a point-in-time snapshot that is crash-consistent across multiple volumes. A volume group snapshot represents this capability in Kubernetes. It collects snapshots from several PersistentVolumeClaims (PVCs) taken at the exact same moment, ensuring write-order consistency. This is crucial for applications that span multiple volumes—for example, a database that stores data in one volume and transaction logs in another.
Internally, Kubernetes uses a label selector to identify which PVCs belong to a snapshot group. The group snapshot can then be used to either rehydrate new volumes (pre-populated with the snapshot data) or restore existing volumes to a previous state, providing a reliable recovery point.
Why Volume Group Snapshots Matter
The Kubernetes volume plugin ecosystem already offers robust automation for provisioning, attaching, resizing, and taking individual snapshots. However, until now, there was no native way to create a consistent snapshot across multiple volumes without manual coordination. The VolumeSnapshot API handles single-volume backups, but for multi-volume applications, taking separate snapshots at different times can lead to data inconsistency.
Consider an application with data and logs on separate volumes. If snapshots are taken at different moments, restoring from them could leave the application in an incoherent state. You could quiesce the application before taking sequential snapshots, but that process is time-consuming and sometimes impossible. Volume Group Snapshots eliminate this complexity by providing crash consistency across all volumes in the group without requiring application quiescence. This is a game-changer for:
- Databases with separate data and log volumes
- Content management systems storing uploads and metadata
- Any stateful workload spread across multiple PVs
Kubernetes APIs for Volume Group Snapshots
The feature introduces three custom resource definitions that form the group snapshot API:
VolumeGroupSnapshot
This resource is created by a user (or automation) to request a group snapshot. It specifies a label selector to match targeted PVCs and can optionally reference an existing VolumeSnapshotClass for driver-specific parameters.
VolumeGroupSnapshotContent
Created by the snapshot controller in response to a VolumeGroupSnapshot, this resource represents the actual provisioned cluster resource—the group snapshot on the storage system. It binds to the requesting VolumeGroupSnapshot and carries details like the snapshot handle and driver information.
VolumeGroupSnapshotClass
Analogous to StorageClass or VolumeSnapshotClass, this resource defines the CSI driver name and configuration for the group snapshot operation. It allows administrators to specify deletion policies and other driver-specific settings.
For a deeper look into these APIs, see the Getting Started section below.
CSI Driver Support
Volume Group Snapshots are only supported for CSI volume drivers that implement the group snapshot capability. Check your storage vendor’s documentation to confirm compatibility. The feature relies on the CSI GroupSnapshot specification, which defines gRPC calls for creating and deleting group snapshots.
Getting Started with Volume Group Snapshots
To use this feature in Kubernetes v1.36+, follow these steps:
- Enable the feature gate – In v1.36, the feature gate
VolumeGroupSnapshotis enabled by default. - Install the snapshot controller and CRDs – Deploy the external-snapshotter components (v8.x or later) that include the group snapshot CRDs.
- Create a VolumeGroupSnapshotClass – Define a class that points to your CSI driver and specifies any required parameters.
- Create a VolumeGroupSnapshot – Use a label selector to target the PVCs you want to snapshot. Example YAML:
apiVersion: groupsnapshot.storage.k8s.io/v1beta1 kind: VolumeGroupSnapshot metadata: name: my-group-snapshot spec: source: selector: matchLabels: app: my-multi-volume-app volumeGroupSnapshotClassName: csi-group-snapclass - Monitor the status – Once the
VolumeGroupSnapshotis ready, you’ll see areadyToUse: truestatus. - Restore – Use
PersistentVolumeClaimdefinitions withdataSourcepointing to the group snapshot (referencing individual snapshots within the group).
For more detailed examples, refer to the official Kubernetes documentation.
Conclusion
The promotion of Volume Group Snapshots to GA in Kubernetes v1.36 strengthens the platform’s storage capabilities, making it easier to protect complex, multi-volume applications. By providing crash consistency out of the box, this feature reduces operational overhead and improves recovery reliability. As the ecosystem of CSI drivers continues to adopt group snapshot support, we can expect even broader adoption of this critical data management primitive. Upgrade to v1.36 and start exploring how volume group snapshots can enhance your backup and disaster recovery strategies.
Related Articles
- Microsoft's API Management Platform Earns Leader Status in IDC MarketScape 2026 Assessment
- How to Prepare for Path of Exile 2's Full Launch After the Final Early Access Patch
- Critical ASP.NET Core Patch: Unauthenticated System Access on Linux and macOS
- Beyond Four Wheels: How Auto China 2026 Redefines Automotive Intelligence with Physical AI
- From AM4 to AM5: The Upgrade That Defied My Expectations
- GitHub Enhances Status Page Transparency with New Incident Tiers and Per-Service Uptime Metrics
- 10 Key Updates in Swift: March 2026 Edition
- Cloudflare's Dynamic Workflows: Customizable Durable Execution for Every Tenant and Agent