前面的例子中,咱們提早建立了 PV,而後經過 PVC 申請 PV 並在 Pod 中使用,這種方式叫作靜態供給(Static Provision)。html
與之對應的是動態供給(Dynamical Provision),即若是沒有知足 PVC 條件的 PV,會動態建立 PV。相比靜態供給,動態供給有明顯的優點:不須要提早建立 PV,減小了管理員的工做量,效率高。3d
動態供給是經過 StorageClass 實現的,StorageClass 定義瞭如何建立 PV,下面是兩個例子。code
StorageClass standard
:htm
StorageClass slow
:blog
這兩個 StorageClass 都會動態建立 AWS EBS,不一樣在於 standard
建立的是 gp2
類型的 EBS,而 slow
建立的是 io1
類型的 EBS。不一樣類型的 EBS 支持的參數可參考 AWS 官方文檔。文檔
StorageClass 支持 Delete
和 Retain
兩種 reclaimPolicy
,默認是 Delete
。get
與以前同樣,PVC 在申請 PV 時,只須要指定 StorageClass 和容量以及訪問模式,好比:kubernetes
除了 AWS EBS,Kubernetes 支持其餘多種動態供給 PV 的 Provisioner,完整列表請參考 https://kubernetes.io/docs/concepts/storage/storage-classes/#provisionerit
下一節以 MySQL 爲例演示如何在項目中使用 PV 和 PVC。io
書籍:
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