K8S数据存储(高级存储之 PV、PVC、PV和PVC生命周期)

一、高级存储

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

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

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

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

  • 存储:存储工程师维护

  • PV:kubernetes管理员维护

  • PVC: kubernetes用户维护

(一)PV

PV是存储资源的抽象,PV资源是属于集群资源,跨namespace(不受命名空间隔离)

PV资源清单文件:

apiVersion: v1
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv2
spec:
  nfs: # 存储类型,与底层真正存储对应
  capacity: # 存储能力,目前只支持存储空间的设置
    storage: 2Gi
  accessModes: #访问模式
  storageClassName: #存储类别
  persistentVolumeReclaimPolicy: #回收策略

PV的关键配置参数说明:
存储类型
	底层实际存储的类型,kubernetes支持多种存储类型(nfs、cifs、glusterfs等),每种存储类型的配置都有所差异
存储能力(capacity)
	目前只支持存储空间的设置( storage=1Gi ),不过未来可能会加入IOPS、吞吐量等指标的配置
访问模式(accessModes)
	用于描述用户应用对存储资源的访问权限,访问权限包括下面几种方式:
		ReadWriteOnce (RWO) :读写权限,但是只能被单个节点挂载
		ReadOnlyMany (ROX) :只读权限,可以被多个节点挂载
		ReadWriteMany (RWX) :读写权限,可以被多个节点挂载
		需要注意的是,底层不同的存储类型可能支持的访问模式不同
回收策略(persistentVolumeReclaimPolicy)
	当PV不再被使用了之后,对其的处理方式。目前支持三种策略:
		Retain (保留) 保留数据,需要管理员手工清理数据
		Recycle (回收) 清除PV中的数据,效果相当于执行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个暴露的路径。

准备NFS环境

# 创建目录
[root@nfs ~]# mkdir -p /root/data/{pv1,pv2,pv3}
# 配置共享目录及权限
[root@nfs ~]# vim /etc/exports
/root/data/pv1 192.168.126.0/24
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值