09-kubernetes集羣存儲

1. Kubernetes Volume

Volume:生命週期與其所附着的Pod相同

  • Kubernetes Volume本質是一個目錄
  • 要使用Volume,需要爲Pod指定spec.volumes字段以及將它掛載到容器的位置(spec.containers.volumeMounts 字段)
  • 支持多種Volume Type: cephfs、configMap、hostPath、nfs 、rbd、secret、local、emptyDir等

2. PersistentVolume(PV)

  • PV是集羣中的資源,可以把pv看成volume plugin
  • PV生命週期獨立於pod
  • PV對象封裝了底層存儲卷實現的細節

PV訪問模式有三種:ReadWriteOnce、ReadOnlyMany、ReadWriteMany

在這裏插入圖片描述

3. PersistentVolumeClaim(PVC)

PVC是對PV資源的請求

  • PVC負責請求PV的大小和訪問方式
  • 綁定:PVC將與滿足請求的PV資源一對一綁定
  • 使用:像Volume—樣

4. StorageCIass

PVC按"CIass"匹配PV

  • PVC負責請求PV的大小和訪問方式
  • 可以爲PV指定storageClassName屬性,標識pv歸屬哪一個Class
  • 綁定:一個請求綁定特定Class的PVC只能綁定擁有該Class屬性的PV;一個沒有指定CIass的PVC僅可以綁定沒有特CIass屬性字段的PV

5. 基於StorageCIass的動態PV供給

  • 開啓動態PV供給:StorageClass和使用StorageClass的PVC
  • 集羣默認動態PV供給行爲:存在DefaultStorageClass、PVC未指定StorageClass
  • 集羣至多存在一個Default StorageClass

6. PV狀態與回收策略

  • PV的狀態:Available/Bound/Released/Failed
  • PV回收策略:Retain/Recycle/Delete
  • 當前,只有NFS和HostPath支持Recycle策略;AWS EBS、GCEPD、AzureDisk和Cinder卷支持Delete策略

7. Kubernetes存儲模型

在這裏插入圖片描述

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