Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

バックアップからアプリを復元する

共同作成者

このセクションでは、バックアップからアプリを復元する方法について説明します。

前提条件

バックアップから復元するには、アプリが存在していたネームスペースが誤って削除されたと仮定します。

アプリの削除
同じネームスペースにリストア

作成したバックアップからリストアするには、Restore Custom Resource(CR)を作成する必要があります。名前とリストア元のバックアップの名前を指定し、restorePVをtrueに設定する必要があります。追加のパラメータは、 "ドキュメント"。[作成]ボタンをクリックします。

リストアCRの作成
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を使用するVM
VMバックアップONTAP-NAS

アプリケーションをアンインストールして、アプリケーションの損失をシミュレートします。

別のストレージクラス(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"
構成マップUI

設定マップオブジェクトは次のようになります(CLI)。

設定マップCLIセッテイマップ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を使用して作成された永続ボリューム要求を使用して、同じネームスペースにリストアされます。

VMリストアontap-nas-eco