Go to file
Lawrence Dudley 407fa3f435 update kubernetes api versions to be current to 1.8.8 2018-02-12 17:04:56 +00:00
cmd/nfs-client-provisioner Incorporate K8S API changes. 2017-07-12 21:05:59 +00:00
deploy update kubernetes api versions to be current to 1.8.8 2018-02-12 17:04:56 +00:00
docker Add support for ARM (Raspberry PI) for nfs-client 2017-08-05 16:28:57 +03:00
.gitignore nfs-client-provisioner fixes #5 2017-04-26 21:12:08 +01:00
CHANGELOG.md Add changelogs to provisioners missing them 2017-08-08 13:34:09 -04:00
Makefile Fix nfs-client Makefile for real 2017-08-15 17:41:12 -04:00
OWNERS Rename OWNERS assignees: to approvers: 2017-10-31 17:47:21 -07:00
README.md Remove provisioner versioning from efs,cephfs,nfs-client; use latest tag instead 2017-08-08 13:19:29 -04:00

README.md

kubernetes nfs-client-provisioner

Docker Repository on Quay

  • pv provisioned as ${namespace}-${pvcName}-${pvName}
  • pv recycled as archieved-${namespace}-${pvcName}-${pvName}

deploy

  • modify and deploy deploy/deployment.yaml
  • modify and deploy deploy/class.yaml

ARM based

To deploy on ARM based (Raspberry PI) use deploy/deployment-arm.yaml instead of deploy/deployment.yaml

authorization

If your cluster has RBAC enabled or you are running OpenShift you must authorize the provisioner. If you are in a namespace/project other than "default" either edit deploy/auth/clusterrolebinding.yaml or edit the oadm policy command accordingly.

RBAC

$ kubectl create -f deploy/auth/serviceaccount.yaml
serviceaccount "nfs-client-provisioner" created
$ kubectl create -f deploy/auth/clusterrole.yaml
clusterrole "nfs-client-provisioner-runner" created
$ kubectl create -f deploy/auth/clusterrolebinding.yaml
clusterrolebinding "run-nfs-client-provisioner" created
$ kubectl patch deployment nfs-client-provisioner -p '{"spec":{"template":{"spec":{"serviceAccount":"nfs-client-provisioner"}}}}'

OpenShift

$ oc create -f deploy/auth/serviceaccount.yaml
serviceaccount "nfs-client-provisioner" created
$ oc create -f deploy/auth/openshift-clusterrole.yaml
clusterrole "nfs-client-provisioner-runner" created
$ oadm policy add-scc-to-user hostmount-anyuid system:serviceaccount:default:nfs-client-provisioner
$ oadm policy add-cluster-role-to-user nfs-client-provisioner-runner system:serviceaccount:default:nfs-client-provisioner
$ oc patch deployment nfs-client-provisioner -p '{"spec":{"template":{"spec":{"serviceAccount":"nfs-client-provisioner"}}}}'

test

  • kubectl create -f deploy/test-claim.yaml
  • kubectl create -f deploy/test-pod.yaml
  • check the folder and file "SUCCESS" created
  • kubectl delete -f deploy/test-pod.yaml
  • kubectl delete -f deploy/test-claim.yaml
  • check the folder renamed to archived-???