从备份还原应用程序
本节介绍如何从备份还原应用程序。
前提条件
要从备份中还原、我们假定应用程序所在的命名空间已被意外删除。
还原到同一命名空间
要从刚刚创建的备份进行还原、需要创建一个还原自定义资源(CR)。我们需要为其提供一个名称、提供要从中还原的备份的名称、并将restorEPVs设置为true。可以按中所示设置其他参数 "文档。"。单击创建按钮。
apiVersion: velero.io/v1 kind: Restore apiVersion: velero.io/v1 metadata: name: restore namespace: openshift-adp spec: backupName: backup-postgresql-ontaps3 restorePVs: true
当阶段显示完成时、您可以看到应用程序已还原到创建快照时的状态。应用程序将还原到同一命名空间。
还原到其他命名空间
要将应用程序还原到其他命名空间、您可以在还原CR的YAML定义中提供一个命名空间映射。
以下示例YAML文件创建了一个还原CR、用于将应用程序及其永久性存储从PostgreSQL命名空间还原到新命名空间PostgreSQL还原。
apiVersion: velero.io/v1 kind: Restore metadata: name: restore-to-different-ns namespace: openshift-adp spec: backupName: backup-postgresql-ontaps3 restorePVs: true includedNamespaces: - postgresql namespaceMapping: postgresql: postgresql-restored
当阶段显示完成时、您可以看到应用程序已还原到创建快照时的状态。应用程序将还原到YAML中指定的其他命名空间。
还原到其他存储类
Velero提供了一种在恢复期间通过指定json修补程序来修改资源的通用功能。json修补程序会在还原之前应用于资源。json修补程序在configmap中指定、而configmap则在restore命令中引用。通过此功能、您可以使用不同的存储类进行还原。
在以下示例中、此应用程序在部署期间使用ONTAP NAS作为其永久性卷的存储类。此时将创建名为backup-postgrest-ontaps3的应用程序的备份。
卸载应用程序、模拟应用程序丢失。
要使用其他存储类(例如、ONTAP NAS生态存储类)还原VM、需要执行以下两个步骤:
步骤1
在OpenShift-ADP命名空间中创建配置映射(控制台)、如下所示:填写屏幕截图中所示的详细信息:Select namep命名 空间:OpenShift-ADP名称:change-ONTAP SC (可以是任意名称)密钥:change-ONTAP SC-config.yaml:value:
version: v1 resourceModifierRules: - conditions: groupResource: persistentvolumeclaims resourceNameRegex: "data-postgresql*" namespaces: - postgresql patches: - operation: replace path: "/spec/storageClassName" value: "ontap-nas-eco"
生成的配置映射对象应如下所示(命令行界面):
创建还原时、此配置映射将应用资源修饰符规则。对于从RHEL开始的所有永久性卷声明、将应用修补程序将存储类名称替换为ONTAP NAS生态。
步骤2
要恢复VM、请在Velero命令行界面中使用以下命令:
#velero restore create restore1 --from-backup backup1 --resource-modifier-configmap change-storage-class-config -n openshift-adp
应用程序将还原到使用存储类ONTAP NAS生态创建的永久性卷声明所在的命名空间中。