配置VolumeSnapshot
VolumeSnapshot可以通过两种方式进行制备:预制备或动态制备。华为CSI当前仅支持动态制备。本章节将说明如何使用华为CSI动态制备VolumeSnapshot。
VolumeSnapshot的配置文件示例如下:
如果您的环境中api-versions支持v1,请使用以下示例:
apiVersion: snapshot.storage.k8s.io/v1 kind: VolumeSnapshot metadata: name: mysnapshot spec: volumeSnapshotClassName: mysnapclass source: persistentVolumeClaimName: mypvc
如果您的环境中api-versions支持v1beta1,请使用以下示例:
apiVersion: snapshot.storage.k8s.io/v1beta1 kind: VolumeSnapshot metadata: name: mysnapshot spec: volumeSnapshotClassName: mysnapclass source: persistentVolumeClaimName: mypvc
VolumeSnapshot中api-versions信息,请和创建VolumeSnapshotClass使用的版本保持一致。
实际参数可以参考表 VolumeSnapshot参数说明中的说明修改。
表 1 VolumeSnapshot参数说明
以Kubernetes v1.22.1为例,支持数字、小写字母、中划线(-)和点(.)的组合,并且必须以字母数字字符开头和结尾。 | ||
前提条件
- 源PVC存在,且PVC所在的backend存在支持创建VolumeSnapshot。支持创建VolumeSnapshot的存储请参考表 华为企业存储支持的特性及约束和表 华为分布式存储支持的特性及约束,支持创建VolumeSnapshot的Kubernetes版本请参考表 Kubernetes版本与支持的特性。
- 华为CSI运行所依赖的卷快照组件CRD已经安装。具体信息请参考检查卷快照依赖组件章节说明。
- 系统中已经存在使用华为CSI的VolumeSnapshotClass。
操作步骤
执行以下命令,使用已经创建的VolumeSnapshot配置文件创建VolumeSnapshot。
kubectl create -f mysnapshot.yaml
执行以下命令,查看已创建的VolumeSnapshot信息。
kubectl get volumesnapshot
命令结果示例如下:
NAME READYTOUSE SOURCEPVC SOURCESNAPSHOTCONTENT RESTORESIZE SNAPSHOTCLASS SNAPSHOTCONTENT CREATIONTIME AGE mysnapshot true mypvc 100Gi mysnapclass snapcontent-1009af0a-24c2-4435-861c-516224503f2d <invalid> 78s