Skip to content

Latest commit

 

History

History
36 lines (24 loc) · 1.84 KB

File metadata and controls

36 lines (24 loc) · 1.84 KB

Set up a NFS Server on a Kubernetes cluster

After the NFS CSI Driver is deployed in your cluster, you can follow this documentation to quickly deploy some example applications. You can use NFS CSI Driver to provision Persistent Volumes statically or dynamically. Please read Kubernetes Persistent Volumes for more information about Static and Dynamic provisioning.

There are multiple different NFS servers you can use for testing of the plugin, the major versions of the protocol v2, v3 and v4 should be supported by the current implementation. This page will show you how to set up a NFS Server deployment on a Kubernetes cluster.

  • To create a NFS provisioner on your Kubernetes cluster, run the following command.
kubectl create -f https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/example/nfs-provisioner/nfs-server.yaml
  • During the deployment, a new service nfs-server will be created which exposes the NFS server endpoint nfs-server.default.svc.cluster.local and the share path /. You can specify PersistentVolume or StorageClass using these information.

  • Deploy the NFS CSI driver, please refer to install NFS CSI driver.

  • To check if the NFS server is working, we can statically create a PersistentVolume and a PersistentVolumeClaim, and mount it onto a sample pod:

kubectl create -f https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/deploy/example/nfs-provisioner/nginx-pod.yaml
  • Verify if the NFS server is functional, you can check the mount point from the example pod.
kubectl exec nginx-nfs-example -- bash -c "findmnt /var/www -o TARGET,SOURCE,FSTYPE"
  • The output should look like the following:
TARGET   SOURCE                                 FSTYPE
/var/www nfs-server.default.svc.cluster.local:/ nfs4