XenServer

ホストとVMのバックアップと復元

可能な限り、XenServerホストのインストール状態を変更しないでください。つまり、XenServerホストに追加のパッケージをインストールしたり、追加のサービスを開始したりせず、アプライアンスとして扱ってください。その場合、復元する最善の方法は、インストールメディアからXenServerホストソフトウェアを再インストールすることです。複数のXenServerホストがある場合は、この目的のためにTFTPサーバーと適切な応答ファイルを構成するのが最善のアプローチです。詳細については、「ネットワークブートインストール」を参照してください。

サードパーティプロバイダーが提供するバックアップソリューションを使用することをお勧めします。詳細については、「サードパーティのバックアップソリューション」を参照してください。

XenServer Premium Editionのお客様は、より高速な変更ブロックのみのバックアップを利用できます。詳細については、「変更ブロック追跡のドキュメント」を参照してください。

これらのソリューションは、Cloud Software Groupではなく、ベンダーによって認定されています。これらのバックアップソリューションのサポートは、ソリューションベンダーによって提供されます。

サーバーやソフトウェアの障害から回復するために、以下のバックアップ手順を可能な限り頻繁に実行することをお勧めします。

プールメタデータをバックアップするには:

  1. 次のコマンドを実行します。

    xe pool-dump-database file-name=backup
    <!--NeedCopy-->
    
  2. データベースを復元するには、次のコマンドを実行します。

    xe pool-restore-database file-name=backup dry-run=true
    <!--NeedCopy-->
    

    このコマンドは、ターゲットマシンに適切な数の適切な名前のNICがあることを確認します。これは、バックアップが成功するために必要です。

ホストの構成とソフトウェアをバックアップするには:

  1. 次のコマンドを実行します。

    xe host-backup host=host file-name=hostbackup
    <!--NeedCopy-->
    

注:

  • コントロール ドメインでバックアップを作成しないでください。

  • バックアップ手順により、大きなバックアップファイルが作成されることがあります。

  • リストアを完了するには、元のインストールCDから再起動する必要があります。

  • このデータは、元のマシンにのみ復元できます。

VMをバックアップするには:

  1. バックアップするVMがオフラインであることを確認します。

  2. コマンドを実行します。

    xe vm-export vm=vm_uuid filename=backup
    <!--NeedCopy-->
    

注:

このバックアップは、VMのすべてのデータもバックアップします。VMをインポートする際、バックアップされたデータに使用するストレージメカニズムを指定できます。

警告:

VMのすべてのデータをバックアップするため、バックアッププロセスが完了するまでに時間がかかる場合があります。

VMメタデータのみをバックアップするには:

コマンドを実行します。

xe vm-export vm=vm_uuid filename=backup metadata=true
<!--NeedCopy-->

仮想マシンメタデータのバックアップ

XenServer®ホストは、各ホスト上のデータベースを使用して、VMおよびストレージやネットワークなどの関連リソースに関するメタデータを保存します。SRと組み合わせることで、このデータベースはプール全体で利用可能なすべてのVMの完全なビューを形成します。したがって、物理ハードウェア障害やその他の災害シナリオから回復するために、このデータベースをバックアップする方法を理解することが重要です。

このセクションでは、まずシングルホストインストールの場合のメタデータのバックアップ方法について説明し、次に複雑なプール設定の場合について説明します。

シングルホストインストールのバックアップ

CLIを使用してプールデータベースをバックアップします。一貫性のあるプールメタデータバックアップファイルを取得するには、XenServerホストでpool-dump-databaseを実行し、結果のファイルをアーカイブします。バックアップファイルにはプールに関する機密性の高い認証情報が含まれているため、安全に保管してください。

プールデータベースを復元するには、以前のダンプファイルからxe pool-restore-databaseコマンドを使用します。XenServerホストが完全に故障した場合は、まずクリーンインストールを実行し、その後、新しくインストールされたXenServerホストに対してpool-restore-databaseコマンドを実行する必要があります。

プールデータベースを復元した後、一部のVMはまだSuspendedとして登録されている場合があります。ただし、suspend-VDI-uuidフィールドで定義された中断されたメモリ状態を持つストレージリポジトリがローカルSRである場合、ホストが再インストールされているため、そのSRは利用できない可能性があります。これらのVMをHalted状態にリセットして再度起動できるようにするには、xe vm-shutdown vm=vm_name -forceコマンドを使用するか、xe vm-reset-powerstate vm=vm_name -forceコマンドを使用します。

警告:

XenServerは、この方法で復元されたホストのUUIDを保持します。元のXenServerホストがまだ実行されている間に別の物理マシンに復元すると、重複するUUIDが存在する可能性があります。その結果、XenCenterは2番目のXenServerホストへの接続を拒否します。プールデータベースのバックアップは、物理ホストをクローンするための推奨されるメカニズムではありません。代わりに自動インストールサポートを使用してください。詳細については、インストールを参照してください。

プールされたインストールのバックアップ

プールシナリオでは、プールコーディネーターは、すべてのプールメンバーホストに同期的にミラーリングされる信頼できるデータベースを提供します。このプロセスにより、プールに組み込みの冗長性が提供されます。各プールメンバーはプールデータベースの正確なバージョンを持っているため、どのプールメンバーもプールコーディネーターを置き換えることができます。メンバーをプールコーディネーターに移行する方法の詳細については、ホストとリソースプールを参照してください。

このレベルの保護では不十分な場合があります。たとえば、VMデータを含む共有ストレージが複数のサイトでバックアップされているが、ローカルサーバーストレージ(プールメタデータを含む)がバックアップされていない場合などです。共有ストレージのセットが与えられたプールを再作成するには、まずプールコーディネーターホスト上のpool-dump-databaseファイルをバックアップし、このファイルをアーカイブする必要があります。このバックアップを後で新しいホストセットに復元するには:

  1. インストールメディアから新しいXenServerホストのセットをインストールするか、該当する場合はTFTPサーバーからネットワークブートします。

  2. 新しいプールコーディネーターとして指定されたホストでxe pool-restore-databaseを使用します。

  3. 新しいプールコーディネーターでxe host-forgetコマンドを実行して、古いメンバーマシンを削除します。

  4. メンバーホストでxe pool-joinコマンドを使用して、それらを新しいプールに接続します。

XenServerホストのバックアップ

このセクションでは、XenServerホストのコントロール ドメインのバックアップおよび復元手順について説明します。これらの手順は、VMを格納するストレージリポジトリをバックアップするものではなく、Xen®とXenServerエージェントを実行する特権コントロール ドメインのみをバックアップします。

注:

権限のあるコントロール ドメインは、他のパッケージでカスタマイズせずに、インストールされたままにしておくのが最適です。リカバリ戦略として、XenServerメディアからXenServerをクリーンにインストールするためのネットワーク ブート環境を設定することをお勧めします。通常、コントロール ドメインをバックアップする必要はありませんが、プール メタデータを保存することをお勧めします (「仮想マシン メタデータのバックアップ」を参照)。このバックアップ方法は、プール メタデータのバックアップを補完するものと考えてください。

xe コマンド host-backuphost-restore を使用することも、別の方法です。xe host-backup コマンドは、アクティブなパーティションを指定したファイルにアーカイブします。xe host-restore コマンドは、xe host-backup によって作成されたアーカイブを、ホストの現在非アクティブなディスクパーティションに展開します。このパーティションは、インストールCDから起動し、適切なバックアップを復元することを選択することでアクティブにできます。

前のセクションの手順を完了し、ホストを再起動した後、VMメタデータが一貫した状態に復元されていることを確認してください。VMメタデータを復元するには、/var/backup/pool-database-${DATE}xe pool-restore-database を実行します。このファイルは、実行中のファイルシステムをアーカイブする前に、VMメタデータの一貫した状態をスナップショットするために、xe pool-dump-database コマンドを使用して xe host-backup によって作成されます。

XenServerホストをバックアップするには:

十分なディスク容量を持つリモートホストで、次のコマンドを実行します

xe host-backup file-name=filename -h hostname -u root -pw password
<!--NeedCopy-->

このコマンドは、コントロール ドメイン ファイルシステムの圧縮イメージを作成します。イメージは、file-name 引数で指定された場所に保存されます。

実行中のXenServerホストを復元するには:

  1. 特定のバックアップからXenServerホストを復元したい場合は、XenServerホストが起動して到達可能な状態で、次のコマンドを実行します。

    xe host-restore file-name=filename -h hostname -u root -pw password
    <!--NeedCopy-->
    

    このコマンドは、圧縮イメージを、このコマンドを実行するXenServerホストのハードディスクに復元します (filename が存在するホストではありません)。この文脈では、「復元」という言葉は、通常、バックアップされた状態が完全に配置されたことを示唆するため、不適切な表現かもしれません。復元コマンドは、圧縮されたバックアップファイルを解凍し、通常の形式に戻すだけです。ただし、それは別のパーティション (/dev/sda2) に書き込まれ、ファイルシステムの現在のバージョンを上書きしません

  2. ルートファイルシステムの復元されたバージョンを使用するには、XenServerインストールCDを使用してXenServerホストを再起動し、バックアップから復元オプションを選択します。

    バックアップからの復元が完了したら、XenServerホストを再起動すると、復元されたイメージから起動します。

  3. 最後に、次のコマンドを使用してVMメタデータを復元します。

    xe pool-restore-database file-name=/var/backup/pool-database-* -h hostname -u root -pw password
    <!--NeedCopy-->
    

注:

このセクションで説明されているようにバックアップから復元しても、バックアップパーティションは破壊されません。

クラッシュしたXenServerホストを再起動するには:

XenServerホストがクラッシュして到達不能になった場合は、XenServerインストールCDを使用してアップグレードインストールを実行します。アップグレードインストールが完了したら、マシンを再起動し、XenCenter®またはリモートCLIでホストに到達できることを確認してください。

その後、このセクションで説明されているようにXenServerホストのバックアップに進みます。

VMのバックアップ

サードパーティプロバイダーが提供するバックアップソリューションを使用することをお勧めします。詳細については、「サードパーティのバックアップソリューション」を参照してください。

これらのソリューションは、Cloud Software Groupではなく、各ベンダーによって認定されています。これらのバックアップソリューションのサポートは、ソリューションベンダーによって提供されます。

XenServer Premium Editionのお客様は、より高速な変更ブロックのみのバックアップを利用できます。詳細については、「変更ブロック追跡」を参照してください。

ホストとVMのバックアップと復元