This is unreleased documentation for SUSE® Storage 1.10 (Dev). |
Volume Expansion
Starting with v1.10.0, SUSE Storage supports online expansion for v2 data engine volumes that use the NVMe frontend. This feature allows you to expand a volume to the requested size while keeping the workload running.
During the expansion process, SUSE Storage automatically resizes all replicas to match the user-requested size. This eliminates the need to stop or detach the application from the volume, ensuring a seamless and non-disruptive scaling of storage.
This capability significantly improves storage management flexibility in storage management by enabling volumes to be scaled without any downtime.
How to use
When creating the V2 volume from the SUSE Storage UI
-
Select a volume with
Block Device
orNVMf
as the frontend. -
In the SUSE Storage UI, navigate to the Volumes page.
-
Click Expand Volume from the volume operations menu.
-
Enter the new desired size and confirm. The expansion will begin automatically.
When creating the v2 volume from manifest
-
Create a StorageClass for the v2 data engine. Make sure
allowVolumeExpansion
is set totrue
. For example:kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: longhorn-v2-data-engine provisioner: driver.longhorn.io allowVolumeExpansion: true reclaimPolicy: Delete volumeBindingMode: Immediate parameters: numberOfReplicas: "3" staleReplicaTimeout: "2880" fsType: "ext4" dataEngine: "v2"
-
Create a PersistentVolumeClaim (PVC) that references this StorageClass:
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: longhorn-volv-pvc namespace: default spec: accessModes: - ReadWriteOnce storageClassName: longhorn-v2-data-engine resources: requests: storage: 2Gi
-
To expand the volume, edit the PVC manifest to increase the storage request to a larger size (shown below), then apply the updated manifest.
resources: requests: storage: 3Gi
Known Limitations
The UBLK
frontend does not support online expansion as of v1.10.0. You are not allowed to expand a volume that uses the UBLK
frontend.
Reference
For more information, see Issue #8022.