NFS PersistentVolume - 每天5分钟玩转 Docker 容器技术(151)
上一節我們介紹了 PV 和 PVC,本節通過 NFS 實踐。
作為準備工作,我們已經在 k8s-master 節點上搭建了一個 NFS 服務器,目錄為?/nfsdata:
下面創建一個 PV?mypv1,配置文件?nfs-pv1.yml?如下:
①?capacity?指定 PV 的容量為 1G。
②?accessModes?指定訪問模式為?ReadWriteOnce,支持的訪問模式有:
ReadWriteOnce – PV 能以 read-write 模式 mount 到單個節點。
ReadOnlyMany – PV 能以 read-only 模式 mount 到多個節點。
ReadWriteMany – PV 能以 read-write 模式 mount 到多個節點。
③?persistentVolumeReclaimPolicy?指定當 PV 的回收策略為?Recycle,支持的策略有:
Retain – 需要管理員手工回收。
Recycle – 清除 PV 中的數據,效果相當于執行?rm -rf /thevolume/*。
Delete – 刪除 Storage Provider 上的對應存儲資源,例如 AWS EBS、GCE PD、Azure Disk、OpenStack Cinder Volume 等。
④?storageClassName?指定 PV 的 class 為?nfs。相當于為 PV 設置了一個分類,PVC 可以指定 class 申請相應 class 的 PV。
⑤ 指定 PV 在 NFS 服務器上對應的目錄。
創建?mypv1:
STATUS?為?Available,表示?mypv1?就緒,可以被 PVC 申請。
接下來創建 PVC?mypvc1,配置文件?nfs-pvc1.yml?如下:
PVC 就很簡單了,只需要指定 PV 的容量,訪問模式和 class。
創建?mypvc1:
從?kubectl get pvc?和?kubectl get pv?的輸出可以看到?mypvc1?已經 Bound 到?mypv1,申請成功。
接下來就可以在 Pod 中使用存儲了,Pod 配置文件?pod1.yml?如下:
與使用普通 Volume 的格式類似,在?volumes?中通過?persistentVolumeClaim?指定使用?mypvc1?申請的 Volume。
創建?mypod1:
驗證 PV 是否可用:
可見,在 Pod 中創建的文件?/mydata/hello?確實已經保存到了 NFS 服務器目錄?/nfsdata/pv1?中。
如果不再需要使用 PV,可用刪除 PVC 回收 PV,下節我們詳細討論。
書籍:
1.《每天5分鐘玩轉Kubernetes》
https://item.jd.com/26225745440.html
2.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html
3.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html
總結
以上是生活随笔為你收集整理的NFS PersistentVolume - 每天5分钟玩转 Docker 容器技术(151)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 跌幅收窄是什么意思
- 下一篇: 突发!央行确认支付宝3种违法违规行为,处