Using kubernetes.io/vsphere-volume csi driver to provision pv's in vSphere
search cancel

Using kubernetes.io/vsphere-volume csi driver to provision pv's in vSphere

book

Article ID: 375506

calendar_today

Updated On:

Products

VMware vCenter Server vSphere with Tanzu

Issue/Introduction

The vsphereVolume driver is deprecated and not supported for provisioning PVCs.

The following issues are known to occur when using vsphereVolumes in vSphere

  • PVC corruption during OS or application patching
  • PVC corruption when copying a VMDK
  • PVC corruption when renaming a VMDK

 

 

Environment

vSphere with Tanzu

Resolution

To ensure optimal performance and support, use the supported vsphere-csi driver Compatibility Matrices for vSphere Container Storage Plug-in (vmware.com)

For additional advice on migrating in-tree vsphere-Volume to the vSphere CSI driver, please refer Migrating In-Tree vSphere Volumes to vSphere Container Storage Plug-in

Please note that VMware GS will not provide assistance with migrating the deprecated in-tree 'vspherevolume' driver to the supported vSphere CSI driver as this functionality is provided by kubernetes.

Additional Information

To check if the vsphereVolume driver is used for provisioning PVCs, you can use the following commands:

  • Check the details of a specific StorageClass:  

[root@xxxxxxx ~]# kubectl describe storageclass <Name of StorageClass>
Name:            test
IsDefaultClass:  No
Provisioner:     kubernetes.io/vsphere-volume
Parameters:      diskformat=thin
ReclaimPolicy:   Delete
Events:          <none>

  • List all StorageClasses to identify those using the 'vsphereVolume' provisioner:

[root@xxxxxxx ~]# kubectl get storageclass -o wide
NAME                   PROVISIONER                            AGE
test-data              kubernetes.io/vsphere-volume           5y
test2-data             kubernetes.io/vsphere-volume           5y
nfs                    cluster.local/nfs-server-provisioner   5y
test-k8s-0001          kubernetes.io/vsphere-volume           5y
test-k8s-0002          kubernetes.io/vsphere-volume           5y
persistent (default)   kubernetes.io/vsphere-volume           5y
test-thin              kubernetes.io/vsphere-volume           5y