简单来说,持久量(PV)和持久量声明(PVC)之间有什么区别?

smc*_*smc 35 storage openshift kubernetes

通过参考文档,Kubernetes/Openshift中的持久量(PV)和持久量声明(PVC)之间有什么区别?

简单来说两者之间有什么区别?

Rad*_*nka 32

PVC是一种需要存储的声明,可以在某些时候变得可用 - 就像某些实际PV一样.

它有点像承诺的异步编程概念.PVC承诺,它将在某个时候"转换"为您的应用程序将能够使用的存储卷,以及定义的特性之一,如类,大小和访问模式(ROX,RWO和RWX).

这是一种抽象思考特定存储实现的方法,远离您的pod /部署.在大多数情况下,您的应用程序不需要声明"从大小为Y的服务器X给我NFS存储"; 它更像是"我需要持久存储默认类和大小Y".

有了这个,不同集群上的部署可以选择以不同方式满足该需求.可以链接EBS设备,另一个可以配置GlusterFS,并且在两种情况下您的核心清单仍然相同.

此外,您可以在部署中定义卷声明模板,以便每个窗格都可以自动创建反射PVC(即,为一组可扩展容器支持基础架构无关的存储定义,每个容器都需要自己的专用存储.

  • “持久卷声明代表特定 Pod 对持久卷的独占使用”引用不准确。一个 PVC 可以安装在多个 Pod 中。 (4认同)
  • 任何想要在PV,PVC,存储类之间寻求明显区别/澄清的人都可以参考:-https://portworx.com/basic-guide-kubernetes-storage/ (2认同)
  • 引用链接文章:“持久卷声明代表特定 Pod 对持久卷的独占使用” (2认同)

Wil*_*don 28

来自文档

PV是群集中的资源.PVC是对这些资源的请求,并且还充当对资源的索赔检查.

因此,持久卷(PV)是主机上存储持久数据的"物理"卷.持久性卷声明(PVC)是平台为您创建PV 的请求,您通过PVC将PV附加到您的Pod.

类似的东西

Pod -> PVC -> PV -> Host machine
Run Code Online (Sandbox Code Playgroud)

  • 主机可以是任何类型的存储= [NFS | 云存储| 存储提供者| ...] (2认同)
  • @WillGordon 是的,我现在看到你的图片是这样的,如果我错了,请纠正我:- **Pod -> PVC -> PV ->(存储类,如果适用)-> 主机**。而且,对于其他人来说,这是了解 PV、PVC、存储类之间区别的很好指南 (https://portworx.com/basic-guide-kubernetes-storage/)。 (2认同)

Das*_*kar 15

  1. 持久卷 (PV) 是集群或中央存储中的一块存储,比如说 100GB。

  2. PersistentVolumeClaim (PVC) 是用户对应用程序使用 10GB 的存储请求。

在现实生活场景中,PV 是整个蛋糕,PVC 是小菜一碟(但是如果没有其他人吃,你可以拥有整个蛋糕(就像没有其他应用程序可以使用你可以使用整个 PV 一样))。


edt*_*dta 10

简短:
-这里有存储!PersistenVolume (PV)
-如果您真的需要它,您可以获得存储!持久卷声明(PVC)


Div*_*ngh 9

PersistentVolume (PV) 是集群中的一块存储,由服务器/存储/集群管理员配置或使用存储类动态配置。它与节点一样是集群中的资源。

PersistentVolumeClaim (PVC) 是用户对存储的请求,可以从 PV 获得。它类似于 Pod。Pod 消耗节点资源,PVC 消耗 PV 资源。Pod 可以请求特定级别的资源(CPU 和内存)。声明可以请求特定的大小和访问模式(例如,它们可以安装为 ReadWriteOnce、ReadOnlyMany 或 ReadWriteMany。


小智 5

简短而简单

持久卷 - 可用存储空间假设您有 100Gi

Persistent Volume Claim - 你从 Persistent Volume 请求,假设你请求 10Gi 你会得到它,但如果你请求 110Gi 你不会得到它。