zoukankan      html  css  js  c++  java
  • Kubernetes-PersistentVolume(PV)介绍

    PV介绍

      PV是对底层网络共享存储的一个抽象,PV由管理员创建和配置。PV是抽象出来的存储资源,包括存储能力、存储类型、访问模式、回收策略、后端存储类型等设置。

    PV的参数详解

    PV的yaml模板

    apiVersion: v1
    kind: PersistentVolume
    metadata: 
      name: test-pv1
    spec: 
      capacity: 
        storage: 1Mi
      accessModes: 
      - ReadWriteMany
      persistentVolumeReclaimPolicy: Recycle
      storageClassName: nfs-stoarge
      nfs: 
        path: /date-nfs/k8s
        server: 127.0.0.1
    
    1. spec.capacity.storage:存储大小;
    2. spec.accessModes:访问模式;
    • RWO:ReadWriteOnce,仅允许单个节点挂载进行读写;
    • ROX:ReadOnlyMany,允许多个节点挂载且只读;
    • RWX:ReadWriteMany,允许多个节点挂载进行读写;
    1. spec.persistentVolumeReclaimPolicy:回收策略,有三种Retain/Recycle/Delete
    • Retain:保留,删除PVC后,PV保留数据;
    • Recycle:回收空间,删除PVC后,简单的清除文件;(NFS和HostPath存储支持)
    • Delete:删除,删除PVC后,与PV相连接的后端存储会删除数据;(AWS EBS、Azure Disk、Cinder volumes、GCE PD支持)
    1. spec.storageClassName:存储类别,指定一个StorageClass资源对象的名称,具有特定类别的PV只能与请求了该类别的PVC进行绑定;未设置特定类型的PV只能与不请求任何类型的PVC进行绑定。
    2. spec.mountOptions: 挂载参数,当PV挂载到一个节点时,可能需要设置额外的挂载参数,就是通过mountOptions字段设置。
    3. spec.nodeAffinity:节点亲和性,PV可以设置节点亲和性限制只能通过某些节点访问卷,使用这些卷的Pod将被调度到满足条件的节点上。
    4. spec.volumeMode:存储卷模式,k8s v1.13版本引入存储卷模式Volume Mode,值有Filesystem(文件系统,默认值),Block(块设备)。

    PV的生命周期

    $ kubectl get pv
    pv生命周期
    PV一共有4个生命周期阶段:Available/Bound/Released/Failed

    • Available: 可用状态,无PVC绑定;
    • Bound:绑定状态,已经和某个PVC绑定;
    • Released:释放状态,绑定的PVC已删除,资源释放,但没有被集群回收;
    • Failed:失败状态,自动资源回收失败;

    PV的常用命令

    1. 创建(yaml的方式)
      $ kubectl create -f pv.yaml
    2. 删除
      $ kubectl delete pv pv_name
    3. 查看所有PV
      $ kubectl get pv
    4. 查看某个PV
      $ kubectl get pv pv_name
    5. 查看详情
      $ kubectl describe pv pv_name
      注意: 若在某个命名空间下,以上命令可以加上-n ns_name
  • 相关阅读:
    Maven最佳实践 划分模块 配置多模块项目 pom modules
    maven 之dependencyManagement 和 pluginManagement
    maven中properties标签定义变量
    Maven根据不同环境打包不同配置文件
    jrebel使用
    maven里如何根据不同的environment打包
    dubbo管理控制台安装和使用
    网站高并发及高并发架构详解
    C#线程安全的那些事
    多线程下C#如何保证线程安全?
  • 原文地址:https://www.cnblogs.com/Andya/p/12434091.html
Copyright © 2011-2022 走看看