From c1dbd4339d7c571bd162f1636b7cfd76367a5574 Mon Sep 17 00:00:00 2001 From: Webber Huang Date: Tue, 25 Aug 2026 03:57:03 +0000 Subject: [PATCH] Document LVM striped volume deprecation Signed-off-by: Webber Huang --- docs/advanced/addons/lvm-local-storage.md | 23 +++++++++++++++++++++-- docs/advanced/csidriver.md | 6 ++++-- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/docs/advanced/addons/lvm-local-storage.md b/docs/advanced/addons/lvm-local-storage.md index 4f4c4b786a..0627ac96ca 100644 --- a/docs/advanced/addons/lvm-local-storage.md +++ b/docs/advanced/addons/lvm-local-storage.md @@ -94,7 +94,7 @@ You can only use one type of local volume in each volume group. If necessary, cr ![](/img/v1.4/csi-driver-lvm/create-lvm-sc-03.png) - - **Volume Group Type**: Select the type of local volume that matches your requirements. Harvester currently supports **striped** and **dm-thin**. + - **Volume Group Type**: Select **dm-thin**. This is the supported volume type for the LVM CSI driver. ![](/img/v1.4/csi-driver-lvm/create-lvm-sc-04.png) @@ -106,6 +106,25 @@ You can only use one type of local volume in each volume group. If necessary, cr For more information, see [StorageClass](../storageclass.md). +## dm-thin and Striped Volume Types + +**dm-thin** is the supported volume type for the LVM CSI driver. Use **dm-thin** for all new volume groups and StorageClasses. + +The **striped** volume type was available before the LVM CSI driver reached general availability, but is deprecated and is not included in the GA support scope. Striped logical volumes allocate their full capacity when they are created. Snapshots, clones, and restores also require full data copies, which consume additional capacity and I/O and can cause timeouts. Retrying an interrupted copy can also make it difficult to determine whether the operation completed successfully. + +:::caution + +Do not create new striped volume groups or StorageClasses. Existing striped volumes are not supported for GA and cannot be converted to dm-thin in place. + +Before upgrading to a version that removes striped-volume support, migrate data from existing striped volumes: + +1. Create a dm-thin volume group and StorageClass. A volume group can contain only one local volume type, so use a different volume group from the existing striped configuration. +1. Stop or quiesce the workload to prevent changes while its data is copied. +1. Create replacement volumes with the dm-thin StorageClass, and migrate the data using the workload's supported backup, restore, or copy procedure. +1. Update the workload to use the replacement volumes and verify the data before removing the striped volumes and StorageClass. + +::: + ## Creating a Volume with LVM 1. On the Harvester UI, go to the **Volumes** screen. @@ -177,4 +196,4 @@ You can also create a new virtual machine with the volume of the LVM StorageClas Backup creation is currently not supported. This limitation will be addressed in a future release. -::: \ No newline at end of file +::: diff --git a/docs/advanced/csidriver.md b/docs/advanced/csidriver.md index 0f49e42c55..ac56fbb4c5 100644 --- a/docs/advanced/csidriver.md +++ b/docs/advanced/csidriver.md @@ -150,7 +150,7 @@ The following is an example of an LVM storage profile: apiVersion: cdi.kubevirt.io/v1beta1 kind: StorageProfile metadata: - name: lvm-node-1-striped + name: lvm-node-1-dm-thin spec: claimPropertySets: - accessModes: @@ -165,11 +165,13 @@ status: dataImportCronSourceFormat: pvc provisioner: lvm.driver.harvesterhci.io snapshotClass: lvm-snapshot - storageClass: lvm-node-1-striped + storageClass: lvm-node-1-dm-thin ``` For more information, see [Storage Profiles](https://github.com/kubevirt/containerized-data-importer/blob/main/doc/storageprofile.md) in the CDI documentation. +For LVM storage, use a dm-thin StorageClass. The striped volume type is deprecated and is outside the LVM CSI GA support scope. For more information, see [dm-thin and Striped Volume Types](./addons/lvm-local-storage.md#dm-thin-and-striped-volume-types). + You can define the above fields to override the default configuration showing on the status. :::caution