1.4.11

PV:Persistent Volume
PV:Persistent Volume Claim

PV 可以理解成kubernetes集群中的某个网络存储中对应的一块存储,它与volume很类似,但有区别:
*PV只能是网络存储,不属于任何Node,但可以在每个Node上访问
*PV并不是定义在POD上,而是独立在pod之外。
*PV目前支持的的类型包括:gcePersistenDisk、AWSElasticBlockStore、AzureFile、AzureDisk、FC(Fibre Channel)、Flocker、NFS、iSCSI、RBD(Rados Block Device)、CephFS、Cinder、GlusterFS、VsphereVolume、Quobyte Volumes、VMware Photon、Portworx Volumes、scaleIO volumes、HostPath(仅供单机测试)


一个NFS类型的PV的yaml定义文件,声明了需要5Gi的存储空间:
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv0003
  spec:
    capaccty:
      storage: 5Gi
    accessModes:
      - ReeadWriteOnce
    nfs:
      path: /somepath
      server: 172.17.0.2
比较重要的是PV的accessModes属性,目前有以下类型:
*ReadWriteOnce: 读写权限,并且只能被单个Node挂载
*ReadOnlyMany:只读权限,允许被多个Node挂载
*ReadWrteMany:读写权限、允许被多个Node挂载

如果某个POD想申请某种类型的PV,则首先需要定义一个PersistnetVolumeClaim(PVC)对象,然后在,pod的volume定义中引用上述的pvc即可:

最后,我们说说PV的状态,PV是有状态的对象,状态如下:
*Available:空闲状态
*Bound:已经绑定到某个PVC
*Released:对应的PVC已经删除,但资源还没有被集群回收
*Failed:PV自动回收失败



思考:
如上几个,可以在本地搭建测试环境的,有机会要搭建一下!
对于没有相关资源的从网上查找相关的视频资源,了解一下!