创建 PV

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

  • HostPath:将容器所在主机的文件目录挂载到容器内指定路径(对应 Kubernetes 的 HostPath),允许容器使用主机的文件系统作为持久存储。如果主机不可访问,则 HostPath 可能无法访问。

  • NFS Shared Storage:NFS Shared Storage 使用社区 NFS CSI(Container Storage Interface)存储插件,更符合 Kubernetes 设计理念,支持多个服务的客户端访问能力。使用前请确保当前集群已部署 NFS 存储插件

目录

前提条件

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

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

示例 PersistentVolume

# 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. 进入 Administrator

  2. 在左侧导航栏点击 Storage Management > Persistent Volumes (PV)

  3. 点击 Create Persistent Volume

  4. 参考以下说明配置参数后点击 Create

存储信息

类型参数说明
HostPathPath支持存储卷的节点上文件目录的路径。例如:/etc/kubernetes
NFS Shared StorageServer AddressNFS 服务器的访问地址。
PathNFS 文件系统在服务器节点上的挂载路径,如 /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即使持久卷声明被删除,绑定的持久卷和存储数据仍会保留。之后需要手动处理存储数据并删除持久卷。

相关操作

您可以点击列表页右侧的 ⋮,或在详情页右上角点击 Operations,根据需要更新或删除持久卷。

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

  • 删除未绑定的持久卷:该卷未被写入且不再需要写入,删除后释放对应存储空间。

  • 删除 Retain 状态的持久卷:持久卷声明已删除,但由于 Retain 回收策略,持久卷未被同时删除。如果持久卷中的数据已备份至其他存储或不再需要,删除该持久卷也可释放对应存储空间。

额外资源