OpenEBS Dynamic NFS Provisioner Helm Repository
Helm 3 must be installed to use the charts. Please refer to Helm’s documentation to get started.
Once Helm is set up properly, add the repo as follows:
helm repo add openebs-nfs https://openebs-archive.github.io/dynamic-nfs-provisioner
You can then run helm search repo openebs-nfs
to see the charts.
Update OpenEBS Dynamic NFS Provisioner Repo
Once openebs-nfs repository has been successfully fetched into the local system, it has to be updated to get the latest version. The NFS Provisioner charts repo can be updated using the following command:
helm repo update
Install using Helm 3
Run the following command to install the OpenEBS Dynamic NFS Provisioner helm chart using the default StorageClass as the Backend StorageClass:
helm install [RELEASE_NAME] openebs-nfs/nfs-provisioner --namespace [NAMESPACE] --create-namespace
The chart requires a StorageClass to provision the backend volume for the NFS share. You can use the --set-string nfsStorageClass.backendStorageClass=<storageclass-name>
flag in the helm install
command to specify the Backend StorageClass. If a StorageClass is not specified, the default StorageClass is used.
Use the command below to get the name of the default StorageClasses in your cluster:
kubectl get sc -o=jsonpath='{range .items[?(@.metadata.annotations.storageclass\.kubernetes\.io/is-default-class=="true")]}{@.metadata.name}{"\n"}{end}'
Sample command to install the OpenEBS Dynamic NFS Provisioner helm chart using the default StorageClass as BackendStorageClass:
helm install openebs-nfs openebs-nfs/nfs-provisioner --namespace openebs --create-namespace
If you do not have an available StorageClass, you can install the OpenEBS Dynamic LocalPV Provisioner helm chart and use the ‘openebs-hostpath’ StorageClass as Backend Storage Class. Sample commands:
# Add openebs-localpv repo
helm repo add openebs-localpv https://openebs-archive.github.io/dynamic-localpv-provisioner
helm repo update
# Install localpv-provisioner
helm install openebs-localpv openebs-localpv/localpv-provisioner -n openebs --create-namespace \
--set openebsNDM.enabled=false \
--set deviceClass.enabled=false
# Install nfs-provisioner
helm install openebs-nfs openebs-nfs/nfs-provisioner -n openebs \
--set-string nfsStorageClass.backendStorageClass="openebs-hostpath"
Uninstall Chart
All NFS PVCs should be removed before installation.
# Helm
helm uninstall [RELEASE_NAME] --namespace [NAMESPACE]
This removes all the Kubernetes components associated with the chart and deletes the release.
See helm uninstall for command documentation.
Upgrading Chart
# Helm
helm upgrade [RELEASE_NAME] [CHART] --install --namespace [NAMESPACE]
Configuration
Refer to the OpenEBS Dynamic NFS Provisioner Helm chart README.md file for detailed configuration options.