K8S中的PV&&PVC

30 篇文章 1 订阅

有状态服务,这是一种特殊的服务,简单的归纳下就是会产生 需要持久化的数据,并且有很强的I/O需求,且重启需要依赖上次存储到磁盘的数据。如典型的mysql, kafka,zookeeper等。

kubernetes中定义一种了资源类型Stateful Service即有状态服务,有状态服务需要的持久化数据动态绑 定我们可以利用存储的API PersistentVolume(PV)和PersistentVolumeClaim(PVC)来进行需要的 相关数据的绑定和存储。

PV概念

persistentVolume:是由管理员设置的存储,它是集群的一部分。就像节点时集群中的资源一样,PV也 是集群中的资源。PV是Volumes之类的卷插件,但具有独立于使用PV的pod的生命周期。此API对象包 含存储实现的细节,即NFS、iSCSI或者特定于云供应商的存储系统

PVC概念

peresistentVolumeClaim是用户存储的请求。它与pod相似,pod消耗节点资源,PVC消耗PV资源。 pod可以请求特定级别的资源(CPU和内存)。盛名可以请求特定的大小和访问模式。例如:可以以读/写 一次或者 只读多次模式挂载。

PV & PVC

PV就好比是一个仓库,我们需要先购买一个仓库,即定义一个PV存储服务,例如CEPH,NFS,Local Hostpath等等。 PVC就好比租户,pv和pvc是一对一绑定的,挂载到POD中,一个pvc可以被多个pod挂载。

PV&&PVC理论补充

存储机制介绍 在 Kubernetes 中,存储资源和计算资源(CPU、Memory)同样重要,Kubernetes 为了能让管理员方便 管理集群中的存储资源,同时也为了让使用者使用存储更加方便,所以屏蔽了底层存储的实现细节,将 存储抽象出两个 API 资源 PersistentVolume 和 PersistentVolumeClaim 对象来对存储进行管理。 PersistentVolume(持久化卷): PersistentVolume 简称 PV , 是对底层共享存储的一种抽 象,将共享存储定义为一种资源,它属于集群级别资源,不属于任何 Namespace ,用户使用 PV 需要通过 PVC 申请。PV 是由管理员进行创建和配置,它和具体的底层的共享存储技术的实现方式 有关,比如说 Ceph、GlusterFS、NFS 等,都是通过插件机制完成与共享存储的对接,且根据不同 的存储 PV 可配置参数也是不相同。 PersistentVolumeClaim(持久化卷声明): PersistentVolumeClaim 简称 PVC ,是用户存 储的一种声明,类似于对存储资源的申请,它属于一个 Namespace 中的资源,可用于向 PV 申请 存储资源。 PVC 和 Pod 比较类似, Pod 消耗的是 Node 节点资源,而 PVC 消耗的是 PV 存储资 源, Pod 可以请求 CPU 和 Memory,而 PVC 可以请求特定的存储空间和访问模式。 上面两种资源 PV 和 PVC 的存在很好的解决了存储管理的问题,不过这些存储每次都需要管理员手动 创建和管理,如果一个集群中有很多应用,并且每个应用都要挂载很多存储,那么就需要创建很多 PV 和 PVC 与应用关联。 当我们创建 PVC 时指定对应的 StorageClass 就能和 PV 的 StorageClass 关联, StorageClass 会 交由与他关联 Provisioner 存储插件来创建与管理存储,它能帮你创建对应的 PV 和在远程存储上创建 对应的文件夹,并且还能根据设定的参数,删除与保留数据。所以管理员只要在 StorageClass 中配置 好对应的参数就能方便的管理集群中的存储资源。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值