Creating PVCs

创建 PersistentVolumeClaim(PVC),并根据需要设置请求的 PersistentVolume(PV)参数。

您可以通过可视化 UI 表单或使用自定义 YAML 编排文件来创建 PersistentVolumeClaim。

前提条件

确保命名空间中有足够剩余的存储配额,以满足此次创建操作所需的存储大小。

PersistentVolumeClaim 示例:

# example-pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: example-pvc
  namespace: k-1
  annotations: {}
  labels: {}
spec:
  storageClassName: cephfs
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 4Gi

通过 Web 控制台创建 Persistent Volume Claim

  1. 进入 Container Platform

  2. 在左侧边栏点击 Storage > PersistentVolumeClaims (PVC)

  3. 点击 Create PVC

  4. 按需配置参数。

    注意:以下内容以表单方式为例,您也可以切换到 YAML 模式完成操作。

    参数说明
    NamePersistentVolumeClaim 的名称,必须在当前命名空间内唯一。
    Creation Method- 动态创建:根据存储类动态生成 PersistentVolume 并进行绑定。
    - 静态绑定:根据配置参数匹配并绑定已有的 PersistentVolume。
    Storage Class选择动态创建方式后,平台将根据所选存储类描述动态创建 PersistentVolume。
    Access Mode- ReadWriteOnce (RWO):可被单个节点以读写模式挂载。
    - ReadWriteMany (RWX):可被多个节点以读写模式挂载。
    - ReadOnlyMany (ROX):可被多个节点以只读模式挂载。

    提示:建议结合计划绑定当前 PersistentVolumeClaim 的工作负载实例数量及部署控制器类型考虑。例如,创建多实例部署(Deployment)时,由于所有实例共用同一个 PersistentVolumeClaim,不建议选择只能挂载到单节点的 RWO 访问模式。
    Capacity请求的 PersistentVolume 大小。
    Volume Mode- Filesystem:将 PersistentVolume 绑定为挂载到 Pod 的文件目录。此模式适用于任何类型的工作负载。
    - Block Device:将 PersistentVolume 绑定为挂载到 Pod 的原始块设备。此模式仅适用于虚拟机。
    More- Labels
    - Annotations
    - Selector:选择静态绑定方式后,可使用选择器定位带有特定标签的 PersistentVolume。PersistentVolume 标签可用于标注存储的特殊属性,如磁盘类型或地理位置。
  5. 点击 Create。等待 PersistentVolumeClaim 状态变为 Bound,表示 PersistentVolume 已成功匹配。

通过 CLI 创建 Persistent Volume Claim

kubectl apply -f example-pvc.yaml

操作

  • 绑定 PersistentVolumeClaim:创建需要持久化数据存储的应用或工作负载时,绑定 PersistentVolumeClaim 以请求符合条件的 PersistentVolume。

  • 使用 Volume Snapshots 创建 PersistentVolumeClaim:帮助备份应用数据并按需恢复,保障业务应用数据的可靠性。详情请参见 Using Volume Snapshots

  • 删除 PersistentVolumeClaim:可在详情页右上角点击 Actions 按钮,根据需要删除 PersistentVolumeClaim。删除前请确保 PersistentVolumeClaim 未绑定任何应用或工作负载,且不包含任何卷快照。删除后,平台将根据回收策略处理 PersistentVolume,可能会清除 PersistentVolume 中的数据并释放存储资源。请根据数据安全性谨慎操作。

通过 Web 控制台扩容 PersistentVolumeClaim 存储容量

  1. 在左侧导航栏点击 Storage > Persistent Volume Claims (PVC)。

  2. 找到对应的 PersistentVolumeClaim,点击 ⋮ > Expand。

  3. 填写新的容量。

  4. 点击 Expand。扩容过程可能需要一些时间,请耐心等待。

通过 CLI 扩容 Persistent Volume Claim 存储容量

kubectl patch pvc example-pvc -n k-1 --type='merge' -p '{
  "spec": {
    "resources": {
      "requests": {
        "storage": "6Gi"
      }
    }
  }
}'
INFO

当 Kubernetes 中 PVC 扩容失败时,管理员可以手动恢复 Persistent Volume Claim (PVC) 状态并取消扩容请求。详情请参见 Recover From PVC Expansion Failure

其他资源