Kubernetes-数据存储-PV和PVC实例

本文介绍了Kubernetes中的持久化卷(PV)和持久化卷声明(PVC)概念,它们用于简化存储管理。PV由管理员创建,PVC由用户申请,实现了存储的解耦。讨论了PV的存储类型、容量、访问模式和回收策略,以及PVC的绑定和存储类别。通过NFS实例展示了如何创建和使用PV。
摘要由CSDN通过智能技术生成

PV和PVC

使用NFS提供存储,此时就要求用户会搭建NFS系统,并且会在yaml配置nfs。由于kubernetes支持的存储系统有很多,要求客户全都掌握,显然不现实。为了能够屏蔽底层存储实现的细节,方便用户使用,kubernetes引入PV和PVC两种资源对象。I

PV(Persistent Volume)是持久化卷的意思,是对底层的共享存储的一种抽象。一般情况下PV由kubernetes管理员进行创建和配置,它与底层具体的共享存储技术有关,并通过插件完成与共享存储的对接。

PVC (Persistent Volume Claim)是持久卷声明的意思,是用户对于存储需求的一种声明。换句话说,PVC其实就是用户向kubernetes系统发出的—种资源需求申请。
在这里插入图片描述

使用了PV和PVC之后,工作可以得到进—步的细分:

  • 存储:存储工程师维护

  • PV: kubernetes管理员维护

  • PVC: kubernetes用户维护
    在这里插入图片描述

  • 存储类型

    底层实际存储的类型,kubernetes支持多种存储类型,每种存储类型的配置都有所差异

  • 存储能力(capacity)

    目前只支持存储空间的设置( storage=1Gi ),不过未来可能会加入IOPS、吞吐量等指标的配置

  • 访问模式(accessModes)

用于描述用户应用对存储资源的访问权限,访问权限包括下面几种方式:

  • ReadWriteOnce (RWO) :读写权限,但是只能被单个节点挂载

  • ReadOnlyMany (ROX) :只读权限,可以被多个节点挂载

  • ReadWriteMany (RWX) :读写权限,可以被多个节点挂载

             需要注意的是,底层不同的存储类型可能支持的访问模式不同
    
  • 回收策略 (persistentVolumeReclaimPolicy)

当PV不再被使用了之后,对其的处理方式。目前支持三种策略:

  • Retain(保留)保留数据,需要管理员手工清理数据

  • Recycle (回收)清除PⅣV中的数据,效果相当于执行rm -rf /thevolume/*

  • Delete(删除)与PV相连的后端存储完成volume的删除操作,当然这常见于云服务商的存储服务

               需要注意的的是,底层不同的存储类型可能支持的回收策略不同
    
  • 存储类别

PV可以通过storageClassName参数指定一个存储类别

  • 具有特定类别的PV只能与请求了该类别的PVC进行绑定。
  • 未设定类别的PV则只能与不请求任何类别的PVC进行绑定
  • 状态(status)

一个PV的生命周期中,可能会处于4中不同的阶段:

  • Available (可用):表示可用状态,还未被任何PVC绑定
  • Bound (已绑定):表示PV已经被PVC绑定
  • Released (已释放)︰表示PVC 被删除,但是资源还未被集群重新声明
  • Failed(失败)︰表示该PV的自动回收失败

实验:
使用NFS作为存储,来演示PV的使用,创建3个PV,对用的NFS中的3个暴露的路径

准备环境

#创建目录
mkdir /data/{
   pv1,pv2,pv3} -pv
#暴露服务
cat /etc/exports
/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值