4.3. 持久性存储
4.3.1. 概述
管理存储与管理计算资源不同。OpenShift Container Platform 使用 Kubernetes 持久性卷 (PV) 框架来允许集群管理员为集群提供持久性存储。开发者可以使用持久性卷声明 (PVC) 来请求 PV 资源而无需具体了解底层存储基础架构。
PVC 特定于 某个项目,开发人员会创建和使用 PV。PV 资源本身并不特定于某一个项目; 它们可以在整个 OpenShift Container Platform 集群间共享,并可以被任何项目使用。当 PV 绑定到 PVC 后,但该 PV 不能绑定到额外的 PVC。这会使绑定的 PV 限定为 一个命名空间 (绑定项目是什么)。
PV 由一个 persistentVolume
API 对象定义,它代表了集群管理员置备的已存在的网络存储。它与一个节点一样,是一个集群资源。PV 是卷插件,与 Volumes
资源类似,但PV 的生命周期独立于任何使用它的 pod。PV 对象获取具体存储(NFS、iSCSI 或者特定 cloud-provider 的存储系统)的实现详情。
存储的高可用性功能由底层的存储架构提供。
PVC 由 PersistentVolumeClaim
API 项定义,它代表了开发人员对存储的一个请求。它与一个 pod 类似,pod 会消耗节点资源, PVC 消耗 PV 资源。例如,pod 可以请求特定级别的资源(如 CPU 和内存),而 PVC 可以请求特定 的存储容量 和访问模式 (例如,可以在读/写或多次只读时挂载它们)。