バックアップからアプリを復元する
このセクションでは、バックアップからアプリを復元する方法について説明します。
前提条件
バックアップから復元するには、アプリが存在していたネームスペースが誤って削除されたと仮定します。
同じネームスペースにリストア
作成したバックアップからリストアするには、Restore Custom Resource(CR)を作成する必要があります。名前とリストア元のバックアップの名前を指定し、restorePVをtrueに設定する必要があります。追加のパラメータは、 "ドキュメント"。[作成]ボタンをクリックします。
apiVersion: velero.io/v1 kind: Restore apiVersion: velero.io/v1 metadata: name: restore namespace: openshift-adp spec: backupName: backup-postgresql-ontaps3 restorePVs: true
フェーズが完了と表示されると、アプリケーションがスナップショットが取得されたときの状態に復元されたことがわかります。アプリが同じ名前空間に復元されます。
別のネームスペースへのリストア
アプリを別の名前空間に復元するには、Restore CRのYAML定義でnamespaceMappingを指定します。
次のYAMLファイルの例では、RestoreCRを作成して、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-postgresql-ontaps3というアプリケーションのバックアップが作成されます。
アプリケーションをアンインストールして、アプリケーションの損失をシミュレートします。
別のストレージクラス(ontap-nas-ecoストレージクラスなど)を使用してVMをリストアするには、次の2つの手順を実行する必要があります。
ステップ1
OpenShift-ADPネームスペースに次のように構成マップ(コンソール)を作成します。スクリーンショットに示すように詳細を入力します。Select namespace:OpenShift-ADP Name:change-ontap-sc(任意の名前を指定できます)Key: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"
設定マップオブジェクトは次のようになります(CLI)。
この設定マップは、リストアの作成時にリソース修飾子ルールを適用します。RHELで始まるすべての永続ボリューム要求に対して、ストレージクラス名をontap-nas-ecoに置き換えるパッチを適用します。
ステップ2
VMをリストアするには、Velero CLIから次のコマンドを使用します。
#velero restore create restore1 --from-backup backup1 --resource-modifier-configmap change-storage-class-config -n openshift-adp
アプリケーションは、ストレージクラスontap-nas-ecoを使用して作成された永続ボリューム要求を使用して、同じネームスペースにリストアされます。