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

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

共同作成者 kevin-hoke

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

前提条件

バックアップから復元するには、アプリが存在していた名前空間が誤って削除されたと仮定します。

アプリを削除しました

同じ名前空間に復元する

作成したバックアップから復元するには、復元カスタム リソース (CR) を作成する必要があります。名前を付け、復元元のバックアップの名前を指定して、restorePVs を 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

フェーズが完了したことが表示されると、アプリがスナップショットが取得された時点の状態に復元されたことがわかります。アプリは同じ名前空間に復元されます。

復元が完了しました 同じ名前空間に復元

別の名前空間に復元する

アプリを別の名前空間に復元するには、復元 CR の yaml 定義で namespaceMapping を指定できます。

次のサンプル yaml ファイルは、アプリとその永続ストレージを postgresql 名前空間から新しい名前空間 postgresql-restored に復元するための復元 CR を作成します。

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 は復元コマンドで参照されます。この機能を使用すると、異なるストレージ クラスを使用して復元できます。

以下の例では、アプリはデプロイメント中に、永続ボリュームのストレージ クラスとして ontap-nas を使用します。 「backup-postgresql-ontaps3」という名前のアプリのバックアップが作成されます。

ontap-nas を使用した VM

VMバックアップ ontap-nas

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

別のストレージ クラス (ontap-nas-eco ストレージ クラスなど) を使用して VM を復元するには、次の 2 つの手順を実行する必要があります。

ステップ1

次のように、openshift-adp 名前空間に構成マップ (コンソール) を作成します。スクリーンショットに示すように詳細を入力します。名前空間を選択: openshift-adp 名前: change-ontap-sc (任意の名前にすることができます) キー: change-ontap-sc-config.yaml: 値:

version: v1
resourceModifierRules:
- conditions:
     groupResource: persistentvolumeclaims
     resourceNameRegex: "data-postgresql*"
     namespaces:
     - postgresql
  patches:
  - operation: replace
    path: "/spec/storageClassName"
    value: "ontap-nas-eco"

設定マップUI

結果の構成マップ オブジェクトは次のようになります (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