• K8S持久化存储PV、PVC笔记


     
    Kubernetes 使用Persistent Volume和Persistent Volume Claim 两种API资源来管理存储。
    • PersistentVolume  (简称PV):  由管理员设置的存储,它是集群的一部分。就像节点(Node)是集群中的资源一样,PV也是集群中的资源。它包含存储类型,存储大小和访问模式。它的生命周期独立于Pod,例如当使用它的Pod销毁时对PV没有影响。
    • PersistentVolumeClaim (简称PVC): 是用户存储的请求。它和Pod类似。Pod消耗Node资源,PVC消耗PV资源。Pod可以请求特定级别的资源(CPU和MEM)。PVC可以请求特定大小和访问模式的PV。
     
      可以通过两种方式配置PV:静态或动态。
    •   静态PV:集群管理员创建许多PV,它们包含可供集群用户使用的实际存储的详细信息。
    •   动态PV:当管理员创建的静态PV都不匹配用户创建的PersistentVolumeClaim时,集群会为PVC动态的配置卷。此配置基于StorageClasses:PVC必须请求存储类(storageclasses),并且管理员必须已创建并配置该类,以便进行动态创建。
     
    关于PersistentVolume的访问方式
    • ReadWriteOnce - 卷以读写方式挂载到单个节点
    • ReadOnlyMany  - 卷以只读方式挂载到多个节点
    • ReadWriteMany - 卷以读写方式挂载到多个节点
     
    在CLI(命令行界面)中,访问模式缩写为:
    • RWO - ReadWriteOnce
    • ROX - ReadOnlyMany
    • RWX - ReadWriteMany
    特别注意:  卷只能一次使用一种访问模式安装,即使它支持很多。
     
    关于回收策略
    • Retain  -  手动回收。在删除pvc后PV变为Released不可用状态, 若想重新被使用,需要管理员删除pv,重新创建pv,删除pv并不会删除存储的资源,只是删除pv对象而已;若想保留数据,请使用该Retain
    • Recycle -  基本擦洗(rm -rf /thevolume/*)。 删除pvc自动清除PV中的数据,效果相当于执行 rm -rf /thevolume/*。删除pvc时,pv的状态由Bound变为Available。此时可重新被pvc申请绑定。
    • Delete  -  删除存储上的对应存储资源。关联的存储资产(如AWS EBS,GCE PD,Azure磁盘或OpenStack Cinder卷)将被删除。NFS不支持delete策略。
     
    目前,只有NFS和HostPath支持回收。AWS EBS,GCE PD,Azure磁盘和Cinder卷支持删除。
     
    关于PersistentVolume (PV) 状态
    • Available(可用状态)   -   一块空闲资源还没有被任何声明绑定
    • Bound(绑定状态)       -   声明分配到PVC进行绑定,PV进入绑定状态
    • Released(释放状态)    -   PVC被删除,PV进入释放状态,等待回收处理
    • Failed(失败状态)      -   PV执行自动清理回收策略失败
     
    关于PersistentVolumeClaims (PVC) 状态
    • Pending(等待状态)     -   等待绑定PV
    • Bound(绑定状态)       -   PV已绑定PVC
    *************** 当你发现自己的才华撑不起野心时,就请安静下来学习吧!***************
  • 相关阅读:
    HDU 3729【二分匹配】
    51nod 1456【强连通,缩点,并查集】
    51nod1459【二级最短路】
    51nod1640 【最小生成树】
    CodeForces660B【模拟—水】
    CodeForces691C 【模拟】
    Codeforces698B【并查集+拆环】
    CodeForces717C 【数学】
    Codeforces710C【数学】
    HDU5904【瞎搞】
  • 原文地址:https://www.cnblogs.com/kevingrace/p/14501472.html
Copyright © 2020-2023  润新知