Complete the following steps:
-
If you're upgrading from VAST CSI Driver 2.0.x or earlier to VAST CSI Driver 2.2.0, download and run the VAST PV migration script to make the existing Kubernetes persistent volumes (PVs) compatible with VAST CSI Driver 2.2.0. For more information, see Migrating PVs from VAST CSI Driver 2.0.x to 2.1.1. Otherwise, skip to step 2.
>> wget https://raw.githubusercontent.com/vast-data/vast-csi/v2.2/scripts/migrate-pv.py >> python3 ./migrate-pv.py [--vast-csi-namespace='<namespace>'] ... info: PV pvc-12345 updated. info: Done.
- If you're upgrading from a non helm chart deployment to helm chart deployment below steps for removing the old driver version are required.
-
Remove the old version of VAST CSI Driver.
The existing containers will continue to run with the volumes provisioned by the old VAST CSI Driver version.
-
To remove VAST CSI Driver 2.0.0 or later:
-
Remove all VAST storage classes:
kubectl delete sc vastdata-filesystem
-
Remove the VAST CSI driver:
kubectl delete csidriver csi.vastdata.com
-
Remove the VAST namespace:
kubectl delete all --all -n vast-csi
- When upgrading from non helm chart deployment to helm chart, the following also need to be removed before installing from helm
- Remove the Vast ServiceAccounts:
-
kubectl delete sa csi-vast-controller-sa -n vast-csi
kubectl delete sa csi-vast-node-sa -n vast-csi - Remove the Vast Secret:
-
kubectl delete secret csi-vast-mgmt -n vast-csi
- Remove the Vast ClusterRole:
-
kubectl delete ClusterRole csi-vast-attacher-role
kubectl delete ClusterRole csi-vast-provisioner-role - Remove the Vast ClusterRoleBinding:
-
kubectl delete ClusterRoleBinding csi-resizer-role
kubectl delete ClusterRoleBinding csi-vast-attacher-binding
kubectl delete ClusterRoleBinding csi-vast-provisioner-binding - Remove the Vast VolumeSnapshotClass:
-
kubectl delete VolumeSnapshotClass vastdata-snapshot
-
-
To remove VAST CSI Driver 1.0.0, you'll need the YAML configuration file that was used to deploy VAST CSI Driver. You can generate the file using the 1.0.0 container.
Run the following command:
kubectl delete -f vast-csi-deployment.yaml
-
-
Deploy the new version of VAST CSI Driver.
Containers referencing VAST CSI Driver will run with the new version of VAST CSI Driver the next time they are created.
You have to migrate Kubernetes persistent volumes (PVs) that were created with VAST CSI Driver 2.0.x and below to be able to use the PVs with VAST CSI Driver 2.2.0.
Each PV created with VAST CSI Driver versions 2.1. and later has the following parameters in its volumeAttributes
configuration entry:
-
root_export
. This is the path within the VAST cluster where the volume directory is created. -
vip_pool_name
. This is the name of the VAST VIP pool to be used when mounting the volume. -
mount_options
. This parameter lists custom NFS mount options to be used when mounting the volume. If no custom mount options are needed, the parameter is specified with an empty value ('').
PVs created with earlier versions of VAST CSI Driver do not have these attributes and thus cannot be mounted with VAST CSI Driver 2.2.0 for Kubernetes pods.
To add the missing attributes to PVs created with pre-2.1.1 versions of VAST CSI Driver, download and run the PV migration script provided by VAST.
Comments
0 comments
Article is closed for comments.