第6章 RHEL ベースのセルフホスト環境のバックアップと復元

セルフホストエンジンの特性およびホストとホストエンジン用仮想マシン間の関係により、セルフホストエンジン環境のバックアップと復元には、標準的な Red Hat Virtualization 環境の考慮事項以外にも追加で検討が必要な事項があります。特に、セルフホストエンジン用ホストは、バックアップ時に環境に残るため、環境が復元された後に新規ホストとセルフホストエンジンの仮想マシンの間での同期が失敗する可能性があります。
この問題に対処するには、バックアップを実行する前に 1 台のホストをメンテナンスモードに切り替えて、仮想化の負荷から解放することを推奨します。このフェイルオーバー用ホストは、新しいセルフホストエンジンのデプロイに使用することができます。
バックアップ時にセルフホストエンジンに仮想化の負荷がかかっている場合には、IP アドレス、完全修飾ドメイン名、名前などの識別子が一致しているホストは、復元したセルフホストエンジンのデプロイには使用できません。データベースで競合が発生すると、復元したセルフホストエンジン用仮想マシンとの同期が妨げられます。ただし、フェイルオーバー用ホストは、同期の前に復元したセルフホストエンジン用仮想マシンから削除することができます。

注記

新規ホストを使用してセルフホストエンジンをデプロイする場合には、バックアップ時にフェイルオーバー用ホストが必ずしも必要なわけではありません。データベースのバックアップ内にあるいずれかのホストと競合しないようにするには、新規ホストに、一意の IP アドレス、完全修飾ドメイン名、および名前が必要です。

手順6.1 セルフホストエンジン環境のバックアップのワークフロー

以下の手順では、フェイルオーバー用ホストを使用してセルフホストエンジンをバックアップするワークフローの例を説明します。このホストは、復元したセルフホストエンジン環境を後でデプロイする際に使用することができます。セルフホストエンジンのバックアップに関する詳しい説明は、「セルフホストエンジンの Manager 用仮想マシンのバックアップ」を参照してください。
  1. セルフホストエンジン用仮想マシンは Host 2 上で実行され、環境内の通常の仮想マシン 6 台は 3 つのホストに分散されます。
    Host 1 をメンテナンスモードに切り替えます。これにより、Host 1 上の仮想マシンは別のホストに移行され、仮想化の負荷から解放されて、バックアップ時のフェイルオーバーに使用することができるようになります。
  2. Host 1 は、メンテナンスモードに入っています。このマシンがホストしていた 2 台の仮想マシンは、Host 3 に移行されます。
    engine-backup を使用して環境のバックアップを作成します。バックアップを作成した後には、Host 1 を再度アクティブ化して、セルフホストエンジン用仮想マシンを含む仮想マシンをホストすることができます。

手順6.2 セルフホストエンジン環境の復元のワークフロー

以下の手順は、セルフホストエンジン環境をバックアップから復元する例を説明します。フェイルオーバー用ホストは、新規セルフホストエンジン用仮想マシンをデプロイし、そのマシンにバックアップから復元します。バックアップからの復元完了の直後には、Red Hat Virtualization Manager はバックアップ作成時の環境なので、フェイルオーバー用のホストはまだ存在します。Manager から古いフェイルオーバー用ホストを削除すると、ホストは新規セルフホストエンジン用仮想マシンと同期され、デプロイメントが終了します。セルフホストエンジンの復元に関する詳しい情報は、「セルフホストエンジン環境の復元」を参照してください。
  1. Host 1 は、新規セルフホストエンジンのデプロイに使用され、前の手順例で作成したバックアップから復元をしました。復元した環境のデプロイには、通常のセルフホストエンジンのデプロイに加えて、追加の手順が必要となります。
    • セルフホストエンジンのマシンに Red Hat Virtualization Manager をインストールした後に、初めて engine-setup を実行する前には、engine-backup ツールを使用してバックアップから復元します。
    • engine-setup を設定して、Manager を復元したら、管理ポータルにログインして、バックアップから表示されている Host 1 を削除します。古い Host 1 が削除されず、新しい Host 1 のデプロイメントを終了時に Manager で依然として表示されている場合には、セルフホストエンジン用仮想マシンは、新しい Host 1 とは同期されず、デプロイメントは失敗します。
    Host 1 とセルフホストエンジン用仮想マシンが同期され、デプロイメントが終了した後には、環境は基本レベルで稼働していると見なすことができます。セルフホストエンジン用ホストが 1 台の場合には、セルフホストエンジン用仮想マシンは高可用性ではありません。ただし、必要な場合には、優先度の高い仮想マシンを Host 1 で起動することができます。
    稼働中の標準 RHEL ベースホスト (環境内に表示されているが、セルフホストエンジンではないホスト) はアクティブになり、バックアップ時に稼働していた仮想マシンは、これらのホストで実行され、Manager 内で利用可能となります。
  2. Host 2Host 3 は、現在の状態ではリカバリーできません。これらのホストは環境から削除してから、ホストエンジンのデプロイメントスクリプトを使用して再度追加する必要があります。この操作に関する詳しい説明は、「復元したセルフホストエンジン環境からの非稼働状態のホストの削除」および「7章セルフホスト環境に追加のホストをインストールする手順」を参照してください。
    復元した環境に、Host 2 および Host 3 を再デプロイしました。環境は最初の図のように、バックアップを作成する前の状態になりましたが、セルフホストエンジン用仮想マシンが Host 1 でホストされている点が異なります。

6.1. セルフホストエンジンの Manager 用仮想マシンのバックアップ

セルフホストエンジン環境を定期的にバックアップすることを推奨します。サポートされているバックアップの方法では、engine-backup ツールを使用し、ovirt-engine サービスを中断せずにバックアップを実行することができます。engine-backup ツールがバックアップできるのは、Red Hat Virtualization Manager 用仮想マシンのみで、Manager 用仮想マシンを含むホストまたはこの環境内でホストされる他の仮想マシンはバックアップされません。

手順6.3 既存の Red Hat Virtualization Manager のバックアップ

  1. フェイルオーバー先のホストの準備

    フェイルオーバーホスト (環境内にあるホストエンジンのホストの 1 つ) は、メンテナンスモードに設定して、バックアップ時に仮想負荷がない状態にします。このホストは後ほど、復元したセルフホストエンジン環境をデプロイする際に使用することができます。今回のシナリオでは、ホストエンジンのホストはどれでもフェイルオーバーホストとして使用することができますが、Host 1 を使用すると、復元のプロセスがより簡単になります。Host 1 ホストのデフォルト名は hosted_engine_1 で、これは、ホストエンジンのデプロイメントスクリプトが最初に実行された際に設定されたものです。
    1. ホストエンジンのホストの 1 つにログインします。
    2. hosted_engine_1 ホストが Host 1 であることを確認します。
       # hosted-engine --vm-status
    3. 管理ポータルにログインします。
    4. ホスト タブをクリックします。
    5. 結果一覧から hosted_engine_1 ホストを選択して、メンテナンス をクリックします。
    6. OK をクリックします。
    ホストの仮想負荷によっては、全仮想マシンが移行されるまでしばらく時間がかかる場合があります。ホストのステータスがMaintenance に変わってから次のステップに進んでください。
  2. Manager のバックアップ作成

    Manager 用仮想マシン上で、仮想マシンの構成設定とデータベースの内容をバックアップします。[EngineBackupFile] はバックアップファイルのファイル名に、[LogFILE] はバックアップログのファイル名に置き換えます。
    # engine-backup --mode=backup --file=[EngineBackupFile] --log=[LogFILE]
  3. 外部サーバーへのファイルのバックアップ

    外部サーバーにファイルをバックアップします。以下の例では、[Storage.example.com] は、必要になるまでバックアップを格納するネットワークストレージサーバーの完全修飾ドメイン名に、/backup/ は指定したフォルダーまたはパスに置き換えます。仮想マシンの構成設定とデータベースの内容を復元するには、このバックアップファイルにアクセス可能である必要があります。
    # scp -p [EngineBackupFiles] [Storage.example.com:/backup/EngineBackupFiles]
  4. フェイルオーバーホストの有効化

    hosted_engine_1 ホストのメンテナンスモードから切り替えます。
    1. 管理ポータルにログインします。
    2. ホスト タブをクリックします。
    3. 結果一覧から hosted_engine_1 を選択します。
    4. アクティブ化 をクリックします。
Red Hat Virtualization Manager 用仮想マシンの構成設定とデータベースの内容をバックアップしました。