Docker для Ма c класс хранения по умолчанию - это динамический c тип обеспечения , как вы бы получили на AKS / GKE, где он выделяет физический хранилище.
→ kubectl get StorageClass
NAME PROVISIONER AGE
hostpath (default) docker.io/hostpath 191d
Чтобы PV C использовал существующий PV, вы можете отключить класс хранения и указать в PV, какой PV C может использовать его с claimRef
.
Заявка Ref
PV включает claimRef
для PV C, который вы создадите
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-nfs-data
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 10Gi
claimRef:
namespace: insert-your-namespace-here
name: pv-nfs-data-claim
persistentVolumeReclaimPolicy: Retain
nfs:
server: 192.168.1.250
path: "/volume1/docker"
PV C устанавливает storageClassName
в ''
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pv-nfs-data-claim
namespace: insert-your-namespace-here
spec:
storageClassName: ''
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
Dynami c
Вы можете go динамический c маршрут с NFS, добавив NFS динамический c инициатор , создайте для него класс хранения и позвольте kubernetes решить все остальное. Более поздняя версия Kubernetes (1.13+) может использовать драйвер CSI NFS