运行应用恢复任务
您可以通过基于已有的应用备份记录执行应用恢复任务,快速将应用恢复到目标命名空间,适用于以下场景:
-
Kubernetes 资源被误删,需要恢复。
-
需要将应用数据迁移到同一集群的其他命名空间。
-
需要将应用资源迁移到平台上其他集群的命名空间。
-
需要将生产集群备份的 Kubernetes 资源恢复到灾备集群。
目录
前提条件
-
集群存储备份文件的对象存储中存在成功的应用备份。
-
如果 PersistentVolume 的 reclaimPolicy 为 Retain,则在恢复绑定的 PVC 数据前,需删除对应 PersistentVolume (PV) 上的
spec.claimRef.uid和spec.claimRef.resourceVersion。 -
对于跨集群恢复(数据迁移),确保目标集群与备份文件所在集群能够读取同一备份文件。可通过以下两种方式实现:
-
目标集群与备份文件所在集群连接同一对象存储。
-
事先将所需备份文件复制到目标集群连接的对象存储。
-
-
如果应用备份时选择了 备份 Kubernetes 资源和持久卷声明 作为资源类型,确保目标集群的 StorageClass 名称与源集群一致。若不一致,请在 高级恢复目标设置 中配置源存储类与目标存储类的映射关系。
操作步骤
-
在左侧导航栏点击 Clusters > Backup and Recovery。
-
切换到 Recovery Management 标签页。
-
点击 Execute Application Recovery Task。
-
按照下表配置参数。
-
点击右上角的 YAML 切换到 YAML 编辑模式。参考 Configuring Hooks 配置恢复过程中执行的命令。
注意:默认情况下,备份文件与目标命名空间中的资源进行比对,仅恢复备份文件中存在但命名空间中缺失的数据。名称相同的资源或增量资源(命名空间中存在但备份文件中缺失)不会被覆盖。
若需覆盖命名空间中已存在的同名资源:
-
点击右上角的 YAML 切换到 YAML 编辑模式。
-
在
.spec下添加existingResourcePolicy: update,并在excludedResources中添加pods,例如:excludedResources: ["pods"]。
提示:此方法无法覆盖绑定 PVC 的持久卷中的应用数据。
-
-
点击 Start。
后续操作
-
命名空间导入:跨集群或跨平台迁移后,需手动将命名空间导入到 Project Management 中对应的项目,否则恢复的应用可能无法在平台 UI 中显示。
-
重新配置固定 IP:跨集群或跨平台迁移后,计算组件中容器的固定 IP 地址会发生变化。如有需要,手动更新部署、守护进程集和有状态集容器组的 Static IP Address 参数。
相关操作
重试
恢复任务失败时,可重试任务。
重试会生成新的恢复记录,可通过新恢复记录查看任务执行状态。
操作步骤
-
在左侧导航栏点击 Clusters > Backup and Recovery。
-
切换到 Recovery Management 标签页。
-
点击失败恢复记录右侧的 Retry,并确认。
下载应用恢复任务日志
每次执行恢复任务时,都会生成恢复记录。可通过恢复记录查看执行状态和详情(YAML),并手动下载应用恢复任务的操作日志。
操作步骤
-
在左侧导航栏点击 Clusters > Backup and Recovery。
-
切换到 Recovery Management 标签页。
-
点击恢复记录右侧的 Export Log。