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

あるクラスタから別のクラスタへのアプリケーションの移行

共同作成者

Veleroのバックアップとリストア機能は、クラスタ間でデータを移行するための貴重なツールです。このセクションでは、あるクラスタからオブジェクトストレージにアプリケーションのバックアップを作成し、同じオブジェクトストレージから別のクラスタにアプリケーションをリストアすることにより、あるクラスタから別のクラスタにアプリケーションを移行する方法について説明します。です。

最初のクラスタからのバックアップ

クラスタ1の前提条件

  • クラスタにAstra Tridentがインストールされている必要があります。

  • Tridentバックエンドとストレージクラスを作成する必要があります。

  • OADPオペレータがクラスタにインストールされている必要があります。

  • DataProtectionApplicationを設定する必要があります。

DataProtectionApplicationオブジェクトを構成するには、次の仕様を使用します。

spec:
  backupLocations:
    - velero:
        config:
          insecureSkipTLSVerify: 'false'
          profile: default
          region: us-east-1
          s3ForcePathStyle: 'true'
          s3Url: 'https://10.61.181.161'
        credential:
          key: cloud
          name: ontap-s3-credentials
        default: true
        objectStorage:
          bucket: velero
          caCert: <base-64 encoded tls certificate>
          prefix: container-backup
        provider: aws
  configuration:
    nodeAgent:
      enable: true
      uploaderType: kopia
    velero:
      defaultPlugins:
        - csi
        - openshift
        - aws
        - kubevirt
  • クラスタにアプリケーションを作成し、そのバックアップを作成します。例として、postgresアプリケーションをインストールします。

postgresアプリのインストール

  • バックアップCRには次の仕様を使用します。

spec:
  csiSnapshotTimeout: 10m0s
  defaultVolumesToFsBackup: false
  includedNamespaces:
    - postgresql
  itemOperationTimeout: 4h0m0s
  snapshotMoveData: true
  storageLocation: velero-sample-1
  ttl: 720h0m0s

postgresアプリのインストール

[すべてのインスタンス*]タブをクリックすると、さまざまなオブジェクトが作成され、さまざまなフェーズを移動して最終的にバックアップ完了**フェーズに進むことができます。

ネームスペースPostgreSQL内のリソースのバックアップは、OADP仕様のBackupLocationで指定されたオブジェクトストレージの場所(ONTAP S3)に格納されます。

2つ目のクラスタへのリストア

クラスタ2の前提条件

  • Astra Tridentがクラスタ2にインストールされている必要があります。

  • PostgreSQLアプリがPostgreSQL名前空間にインストールされていないことを確認してください。

  • OADPオペレータはクラスタ2にインストールする必要があり、BackupStorageの場所が1つ目のクラスタのバックアップが格納されたオブジェクトストレージの場所と同じ場所を指している必要があります。

  • バックアップCRは、2番目のクラスタから認識できる必要があります。

Tridentをインストール

Postgresがまだインストールされていません

クラスタ2にOADPをインストール

同じオブジェクトストアを参照しているバックアップストレージの場所

バックアップからこのクラスタ上のアプリを復元します。復元CRを作成するには、次のYAMLを使用します。

apiVersion: velero.io/v1
kind: Restore
apiVersion: velero.io/v1
metadata:
  name: restore
  namespace: openshift-adp
spec:
  backupName: backup
  restorePVs: true

復元が完了すると、PostgreSQLアプリがこのクラスタで実行されており、PVCと対応するpvに関連付けられていることがわかります。アプリの状態は、バックアップが作成されたときと同じです。

リストア完了

Postgresが移行されました