container:kubernetes:nfs_provisioner
This is an old revision of the document!
Table of Contents
NFS Subdir External Provisioner
Dazu wird ein NFS Server benötigt. Ich gehe hier davon aus das es diese schon gibt und die Master/Worker darauf zugreifen können.
NFS Storage Provider via kubectl
Die nötigen Yaml Files runter laden
wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/raw/master/deploy/rbac.yaml wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/raw/master/deploy/class.yaml wget https://raw.githubusercontent.com/kubernetes-sigs/nfs-subdir-external-provisioner/master/deploy/deployment.yaml Für ARM wget https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner/blob/master/deploy/deployment-arm.yaml
Anpassen der Files
Es muss das File deployment.yaml oder deployment-arm.yaml angepasst werden.
..
...
env:
- name: PROVISIONER_NAME
value: fuseim.pri/ifs
- name: NFS_SERVER
value: <IP or FQDN>
- name: NFS_PATH
value: <NFS EXPORT PATH>
volumes:
- name: nfs-client-root
nfs:
server: <IP or FQDN>
path: <NFS EXPORT PATH>
...
..
Einspielen der Files
kubectl create -f rbac.yaml kubectl create -f deployment.yaml kubectl create -f class.yaml
Storage Class anzeigen
root@kube01:~/nfs# kubectl get storageclasses.storage.k8s.io NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE local-path (default) rancher.io/local-path Delete WaitForFirstConsumer false 2d6h managed-nfs-storage fuseim.pri/ifs Delete Immediate false 2d5h
Default Storage Class ändern
kubectl patch storageclass local-path -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
kubectl patch storageclass managed-nfs-storage -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
root@kube01:~# kubectl get storageclass
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
local-path rancher.io/local-path Delete WaitForFirstConsumer false 16m
managed-nfs-storage (default) fuseim.pri/ifs Delete Immediate false 3m20s
NFS Storage Provider via helm
Ich gehe davon aus Helm ist installiert und funktioniert
Installation
git clone https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner.git cd nfs-subdir-external-provisioner/deploy/helm/ helm install nfs-subdir-external-provisioner . --set nfs.server=x.x.x.x --set nfs.path=/exported/path
container/kubernetes/nfs_provisioner.1610448349.txt.gz · Last modified: by stone
