1.2.2. 将复制镜像转换为可用的持久性卷声明
您可能需要使用复制的镜像来恢复数据,或创建持久性卷声明的新实例。镜像的副本必须转换为持久性卷声明,然后才能使用它。要将复制镜像转换为持久性卷声明,请完成以下步骤:
复制完成后,输入以下命令识别
ReplicationDestination
对象的最新快照:$ kubectl get replicationdestination <destination> -n <destination-ns> --template={{.status.latestImage.name}}
记录下在创建持久性卷声明时的最新快照值。
将
destination
替换为复制目的地的名称。将
destination-ns
替换为您的目的地的命名空间。创建一个类似以下示例的
pvc.yaml
文件:apiVersion: v1 kind: PersistentVolumeClaim metadata: name: <pvc-name> namespace: <destination-ns> spec: accessModes: - ReadWriteOnce dataSource: kind: VolumeSnapshot apiGroup: snapshot.storage.k8s.io name: <snapshot_to_replace> resources: requests: storage: 2Gi
将
pvc-name
替换为您的新持久性卷声明的名称。将
destination-ns
替换为持久性卷声明所在的命名空间。使用您在上一步中找到的
VolumeSnapshot
名称替换snapshot_to_replace
。最佳实践: 当值至少与初始源持久性卷声明的大小相同时,您可以使用不同值更新
resources.requests.storage
。输入以下命令验证您的持久性卷声明是否在环境中运行:
$ kubectl get pvc -n <destination-ns>
原始备份镜像作为主持久性卷声明运行。