回收 PV - 天天5分鐘玩轉 Docker 容器技術(152)

當 PV 再也不須要時,可經過刪除 PVC 回收。html

當 PVC mypvc1 被刪除後,咱們發現 Kubernetes 啓動了一個新 Pod recycler-for-mypv1,這個 Pod 的做用就是清除 PV mypv1 的數據。此時 mypv1 的狀態爲 Released,表示已經解除了與 mypvc1 的 Bound,正在清除數據,不過此時還不可用。app

當數據清除完畢,mypv1 的狀態從新變爲 Available,此時則能夠被新的 PVC 申請。ide

/nfsdata/pv1 中的 hello 文件已經被刪除了。學習

由於 PV 的回收策略設置爲 Recycle,因此數據會被清除,但這可能不是咱們想要的結果。若是咱們但願保留數據,能夠將策略設置爲 Retaincode

經過 kubectl apply 更新 PV:htm

回收策略已經變爲 Retain,經過下面步驟驗證其效果:對象

① 從新建立 mypvc1blog

② 在 mypv1 中建立文件 hello資源

③ mypv1 狀態變爲 Releasedget

④ Kubernetes 並無啓動 Pod recycler-for-mypv1

⑤ PV 中的數據被完整保留。

雖然 mypv1 中的數據獲得了保留,但其 PV 狀態會一直處於 Released,不能被其餘 PVC 申請。爲了從新使用存儲資源,能夠刪除並從新建立 mypv1。刪除操做只是刪除了 PV 對象,存儲空間中的數據並不會被刪除。

新建的 mypv1 狀態爲 Available,已經能夠被 PVC 申請。

PV 還支持 Delete 的回收策略,會刪除 PV 在 Storage Provider 上對應存儲空間。NFS 的 PV 不支持 Delete,支持 Delete 的 Provider 有 AWS EBS、GCE PD、Azure Disk、OpenStack Cinder Volume 等。

下一節咱們學習 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

相關文章
相關標籤/搜索