Установим NFS provisioner в Kubernetes кластер, для существующего NFS сервера
Дано:
- 192.168.1.1 — IP адрес NFS сервера
- /var/lib/nfs — путь NFS директории на сервере
Устанавливаем используя HELM:
helm install nfs-client-provisioner --set fullnameOverride=nfs-client-provisioner --set nfs.server=192.168.1.1 --set nfs.path=/var/lib/nfs stable/nfs-client-provisioner
Опцией "fullnameOverride" перезапишем полное имя чарта, так как он после имени все равно добавит "nfs-client-provisioner"
Делаем NFS типом хранилища по умолчанию:
kubectl patch storageclass nfs-client -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
Теперь можно создать PVC, NFS provisioner сам отследит запрос и создаст PV
test-pv-claim.yaml:
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: test-pv-claim labels: app: test-app spec: accessModes: - ReadWriteMany resources: requests: storage: 1Gi
Создаем PVC:
kubectl apply -f test-pv-claim.yaml
Проверяем созданный PVC и PV:
kubectl get pvc kubectl get pv
провижионер устарел, теперь https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
Спасибо!
Нужно будет поправить статью, потеряла актуальность за 2 года