Installing, Uninstalling, and Upgrading the Container Storage Interface (CSI) Storage Plugin

This section describes the steps for installing, uninstalling, and upgrading the Container Storage Interface (CSI) Storage Plugin.

By default, the CSI Driver includes CentOS 8 as the base image. If you want to customize the installation, you can build your own container with a FUSE-based POSIX supported OS. See Building Your Own Container for more information.

Installing the CSI Driver

  1. Download and install the CSI Driver custom resource definition on the Kubernetes cluster by running the following command:
    kubectl create -f csi-maprkdf-v<version>.yaml
    FUSE
    kubectl create -f csi-maprkdf-v1.2.0.yaml
    Loopback NFS
    kubectl create -f csi-maprnfskdf-v1.0.0.yaml
    When you run the command to install the CSI Driver, the service accounts, rule-based access controls (RBAC), and the statefulset and daemonset are created on the pods on the Kubernetes cluster.
  2. Verify the installation by running the following command.
    kubectl get pods --all-namespaces -o wide
After installing, you can use the CSI Driver to statically and dynamically provision and mount a data-fabric volume. See Using the Container Storage Interface (CSI) Storage Plugin for more information.

Uninstalling the CSI Driver

To uninstall the CSI driver, run the following command:
kubectl delete -f csi-maprkdf-v<version>.yaml
FUSE
kubectl delete -f csi-maprkdf-v1.2.0.yaml
Loopback NFS
kubectl delete -f csi-maprnfskdf-v1.0.0.yaml
When you run the command to uninstall, all the pods with the mount provisioned by CSI Driver are removed.

Upgrading the CSI Driver

Online upgrades for the CSI driver are not currently supported. To perform an offline upgrade, use the following steps:
  1. Shut down all application pods that have a persistent volume mounted in the HPE Ezmeral Data Fabric.
  2. Reapply the new CSI driver .yaml, and wait for Kubernetes to restart all the CSI pods:
    kubectl apply -f csi-maprkdf-<version>.yaml
  3. Restart application pods.