使用卷快照

卷快照是持久卷声明(PVC)的某一时刻副本,可用于配置新的持久卷声明(使用快照数据预填充),也可用于将现有持久卷声明回滚到之前的状态,从而实现备份应用数据并按需恢复的效果,确保应用数据的可靠性。

前提条件

  • 管理员已为当前集群部署卷快照组件 Snapshot Controller,并在存储集群中启用了与快照相关的功能。

  • 持久卷声明必须是动态创建的,且其状态必须为 Bound

  • 绑定到持久卷声明的存储类必须支持快照功能,例如 CephRBD Built-in StorageCephFS Built-in StorageTopoLVM

示例 VolumeSnapshot 自定义资源(CR)

这将使用 CSI 快照类为示例 pvc PVC 创建一个快照。

# example-snapshot.yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot
metadata:
  name: example-pvc-20250527-111124
  namespace: k-1
  labels:
    snapshot.cpaas.io/sourcepvc: example-pvc
  annotations:
    cpaas.io/description: demo
spec:
  volumeSnapshotClassName: csi-cephfs-snapshotclass
  source:
    persistentVolumeClaimName: example-pvc

使用 Web 控制台创建卷快照

基于指定的持久卷声明(PVC)创建卷快照

方法一

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Storage > Persistent Volume Claims (PVC)

  3. 单击列表中对应持久卷声明旁边的 ⋮,然后选择 Create Volume Snapshot

  4. 填写快照描述。此描述有助于记录持久卷的当前状态,例如 Before Application Upgrade

  5. 单击 Create。快照创建时间取决于网络状况和数据量。

    当快照状态变为 Available 时,表示创建成功。

方法二

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Storage > Persistent Volume Claims (PVC)

  3. 单击列表中持久卷声明的名称。

  4. 切换到 Volume Snapshots 选项卡。

  5. 单击 Create Volume Snapshot,并根据需要配置相关参数。

  6. 单击 Create。快照创建时间取决于网络状况和数据量。

    当快照状态变为 Available 时,表示创建成功。

以自定义方式创建卷快照

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Storage > Volume Snapshots

  3. 单击 Create Volume Snapshot,并根据需要配置相关参数。

  4. 单击 Create。快照创建时间取决于网络状况和数据量。

    当快照状态变为 Available 时,表示创建成功。

使用 CLI 创建卷快照

kubectl apply -f example-snapshot.yaml

从卷快照创建持久卷声明

目前,平台仅支持使用通过 Dynamic Provisioning 创建的存储类所创建的 PVC 来创建卷快照。您可以基于该快照创建新的 PVC 并进行绑定。

注意:从快照创建 PVC 时支持的访问模式,与从存储类创建 PVC 时支持的访问模式不同,表中以 加粗 形式标出。

用于创建卷快照的存储类单节点读写(RWO)多节点只读(ROX)多节点读写(RWX)
TopoLVM支持不支持不支持
CephRBD Block Storage支持不支持不支持
CephFS File Storage支持支持支持

方法一

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Storage > Persistent Volume Claims (PVC)

  3. 单击列表中持久卷声明的名称。

  4. 切换到 Volume Snapshots 选项卡。

  5. 单击列表中对应卷快照旁边的 ⋮,然后选择 Create Persistent Volume Claim,并配置相关参数。

  6. 单击 Create

方法二

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Storage > Volume Snapshots

  3. 单击列表中对应卷快照旁边的 ⋮,然后选择 Create Persistent Volume Claim,并配置相关参数。

  4. 单击 Create

附加资源