HostPath
Делаю: 31.03.2019
По материалам из видео индуса.
https://www.youtube.com/watch?v=I9GMUn15Nes&index=14&list=PL34sAs7_26wNBRWM6BDhnonoA5FMERax0
HostPath (не для продуктового использования)
Смысл показать, что если данные хранятся на одной ноде, а потом кластер переключится на другую. То данные автоматически не перенесутся и у приложения не будет каких-либо данных.
Подготовили кластер как здесь.
$ mkdir ~/vagrant-kubernetes-scripts && cd ~/vagrant-kubernetes-scripts
# git clone https://bitbucket.org/sysadm-ru/kubernetes .
$ cd yamls/
$ ssh root@master
Пароль root: kubeadmin
# mkdir /kube
# chmod 777 /kube/
$ kubectl create -f 4-pv-hostpath.yaml
$ kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pv-hostpath 1Gi RWO Retain Available manual 30s
$ kubectl create -f 4-pvc-hostpath.yaml
$ kubectl get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvc-hostpath Bound pv-hostpath 1Gi RWO manual 30s
$ kubectl create -f 4-busybox-pv-hostpath.yaml
$ kubectl describe pod busybox
$ kubectl exec busybox touch /mydata/hello
$ kubectl delete pod busybox
$ kubectl get pv,pvc
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
persistentvolume/pv-hostpath 1Gi RWO Retain Bound default/pvc-hostpath manual 12m
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
persistentvolumeclaim/pvc-hostpath Bound pv-hostpath 1Gi RWO manual 9m47s
$ kubectl delete pvc pvc-hostpath
# ls /kube/
$ kubectl create -f 4-pvc-hostpath.yaml
$ kubectl delete pvc pvc-hostpath
$ kubectl delete pv pv-hostpath
persistentvolume "pv-hostpath" deleted