创建 PV

手动创建类型为 HostPathNFS Shared Storage 的静态持久卷。

  • HostPath:将容器所在主机上的文件目录挂载到容器中的指定路径(对应 Kubernetes 的 HostPath),使容器能够使用主机文件系统进行持久化存储。如果主机变得不可访问,HostPath 也可能无法访问。

  • NFS Shared Storage:NFS Shared Storage 使用 Community 的 NFS CSI(Container Storage Interface)存储插件,更符合 Kubernetes 的设计原则,并为多个服务提供客户端访问能力。使用前请确保当前集群已部署 NFS 存储插件

前提条件

  • 确认要创建的持久卷大小,并确保后端存储系统当前具备提供相应存储的容量。

  • 获取后端存储访问地址、要挂载的文件路径、凭证访问方式(如需要)以及其他相关信息。

持久卷示例

# example-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: manual
  hostPath:
    path: "/mnt/data"
  1. 存储容量。
  2. 卷的挂载方式。
  3. 删除 PVC 后的处理方式(Retain、Delete、Recycle)。
  4. StorageClass 名称(用于动态绑定)。
  5. 存储后端类型。

使用 Web 控制台创建 PV

  1. 进入 管理员

  2. 在左侧导航栏中,点击 存储管理 > 持久卷(PV)

  3. 点击 创建持久卷

  4. 配置以下参数,然后点击 创建

存储信息

类型参数描述
HostPathPath后端存储卷所在节点上的文件目录路径。例如:/etc/kubernetes
NFS Shared StorageServer AddressNFS 服务器的访问地址。
Path服务器节点上 NFS 文件系统的挂载路径,例如 /nfs/data
NFS Protocol Version平台当前支持的 NFS 协议版本为 v3v4.0v4.1。您可以在服务端执行 nfsstat -s 查看版本信息。

使用 CLI 创建 PV

kubectl apply -f example-pv.yaml

访问模式

持久卷的访问模式受后端存储设置的相关参数影响。

访问模式含义
ReadWriteOnce (RWO)只能由单个节点以读写方式挂载。
ReadWriteMany (RWX)可由多个节点以读写方式挂载。
ReadOnlyMany (ROX)可由多个节点以只读方式挂载。

回收策略

回收策略含义
Delete在删除持久卷声明的同时,删除已绑定的持久卷以及后端存储卷资源。
注意:NFS Shared Storage 类型 PV 的回收策略不支持 Delete
Retain即使持久卷声明已删除,已绑定的持久卷和存储数据仍会保留。之后需要手动处理存储数据并删除持久卷。

相关操作

您可以点击列表页右侧的 ⋮,或者在详情页右上角点击 操作,按需更新或删除持久卷。

删除持久卷适用于以下两种场景:

  • 删除未绑定的持久卷:尚未写入且不再需要写入,因此删除后可释放相应存储空间。

  • 删除 Retain 类型的持久卷:持久卷声明已删除,但由于保留回收策略,持久卷未被同时删除。如果持久卷中的数据已备份到其他存储或不再需要,删除它同样可以释放相应存储空间。

其他资源