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

當 PV 不再需要時,可通過刪除 PVC 回收。

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

當數據清除完畢,mypv1 的狀態重新變爲 Available,此時則可以被新的 PVC 申請。

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

因爲 PV 的回收策略設置爲 Recycle,所以數據會被清除,但這可能不是我們想要的結果。如果我們希望保留數據,可以將策略設置爲 Retain

通過 kubectl apply 更新 PV:

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

① 重新創建 mypvc1

② 在 mypv1 中創建文件 hello

③ mypv1 狀態變爲 Released

④ 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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章