XenServerの障害回復について

XenServerの障害回復(DR:Disaster Recovery)機能は、壊滅的なハードウェア障害などによりそのプールやサイト全体が使用不能になった場合に、仮想マシンやvAppを回復できるように設計されています。単一サーバーの障害からの回復については、XenServerの高可用性機能を使用して、同一プール内のほかのサーバー上で仮想マシンが再起動されるように設定できます。

XenServerの障害回復のしくみ

XenServerの障害回復では、仮想マシンやvAppを回復するために必要なすべての情報がストレージリポジトリ(SR)上に格納され、その情報が実務環境(プライマリサイト)からバックアップ環境(セカンダリサイト)に複製されます。プライマリサイトのリソースプールが停止すると、複製されたストレージから仮想マシンやvAppが復元され、セカンダリサイト(障害回復サイト)上に再作成されます。

障害回復サイトのプールで仮想マシンが起動すると、そのプールのメタデータも複製されたストレージ上に格納されます。プライマリサイトがオンライン状態に復帰すると、セカンダリサイトで再作成された仮想マシンやvAppが、このメタデータに基づいてプライマリサイトに復元されます。

注: XenServerの障害回復機能で使用できるストレージは、HBA上のLVMまたはiSCSI上のLVMである必要があります。

XenServerの仮想マシンは、以下の2つのコンポーネントで構成されています。

  • 仮想マシンにより使用される仮想ディスク。その仮想マシンのリソースプールで構成されているストレージリポジトリ上に格納されます。
  • 仮想マシン環境の内容が記述されたメタデータ。使用不能になったり破損したりした仮想マシンを再作成するために必要な情報は、このメタデータのみです。通常、仮想マシンの作成時にメタデータ設定データが書き込まれ、仮想マシン構成を変更すると更新されます。プール内の仮想マシンでは、メタデータのコピーがそのプール内のすべてのサーバー上に格納されます。

障害回復機能が有効な場合、プール内のすべての仮想マシンやvAppについての設定情報であるプールメタデータにより、仮想マシンがセカンダリサイト(障害回復サイト)上に再作成されます。各仮想マシンのメタデータには、仮想マシンの名前と説明、固有の識別子であるUUID(Universally Unique Identifier)、メモリと仮想CPUの構成、およびネットワークとストレージの情報が記録されます。また、高可用性または障害回復環境での仮想マシンの起動オプション(起動順序、起動間隔、および高可用性再起動優先度)も仮想マシンのメタデータに記録されます。たとえば、障害発生時に仮想マシンをDRサイトのプールに再作成する場合、vAppに含まれる各仮想マシンはメタデータに記録されている順序および間隔で起動します。

XenServer DR要件

   
ソフトウェアのバージョン XenServerバージョン6.0以降
アクセス ルートユーザーまたはプールオペレータ以上の権限が必要

障害回復インフラストラクチャ

XenServerの障害回復機能を使用するには、プライマリサイトおよびセカンダリサイトで特定のインフラストラクチャ要件を満たす必要があります。

  • プールメタデータおよび仮想マシンの仮想ディスクで使用されるストレージが、実務環境(プライマリサイト)からバックアップ環境(セカンダリサイト)に複製されている。ストレージの複製(ミラー化など)は、使用するストレージソリューションにより行われ、その方法はデバイスによって異なります。
  • 障害回復サイトのプールで再作成された仮想マシンおよびvAppが起動した後で、障害回復プールのメタデータと仮想ディスクを格納するストレージリポジトリが複製されている。これにより、プライマリサイトがオンライン状態になったときに、これらの仮想マシンおよびvAppがプライマリサイトに復元( フェイルバック )されます。
  • 障害回復サイトのハードウェアインフラストラクチャは、プライマリサイトのものと同一である必要はありません。ただし、XenServerのバージョンおよびパッチレベルが一致しており、プライマリサイトすべての仮想マシンの再作成および実行に必要なリソースが障害回復プールに設定されている必要があります。

重要: XenCenterおよび [障害回復] ウィザードでは、ストレージアレイの機能を制御することはできません。障害回復機能を使用する場合は、プールメタデータおよび仮想マシンのストレージがバックアップサイトに複製されるように設定しておく必要があります。一部のストレージアレイには、自動的に複製するためのミラー化機能が用意されています。このような機能を使用する場合は、仮想マシンが障害回復サイト上で再起動する前に、ミラー化機能を無効にしておく必要があります。

障害回復ウィザードによるフェイルオーバー、フェイルバック、およびフェイルオーバーテスト

[障害回復] ウィザードを使用すると、フェイルオーバー(仮想マシンやvAppのセカンダリサイト上での回復)とフェイルバック(仮想マシンやvAppのプライマリサイト上への復元)を簡単に設定できます。これらの2つの設定は、以下の手順で行います。

フェイルオーバー

  1. まず、仮想マシンとvAppのフェイルオーバー先として、セカンダリの障害回復サイトのプールを選択します。
  2. 次に、プライマリサイトから複製されたストレージリポジトリを格納するストレージターゲットの詳細を指定します。
  3. ウィザードによりターゲットがスキャンされ、検出されたすべてのストレージリポジトリが表示されます。

    フェイルオーバーする仮想マシンとvAppのメタデータと仮想ディスクを格納しているストレージリポジトリを選択します。

  4. ウィザードによりストレージリポジトリがスキャンされ、検出されたすべての仮想マシンとvAppが表示されます。

    障害回復サイトにフェイルオーバーする仮想マシンとvAppを選択し、それらをフェイルオーバー後に自動的に起動するか手作業で起動するかを指定します。

  5. ウィザードによりいくつかの事前チェックが実行され、選択した仮想マシンやvAppがフェイルオーバー可能かどうかが検証されます。たとえば、仮想マシンやvAppの起動に必要なストレージが障害回復プールで使用可能かどうかがチェックされます。
  6. 最後に、事前チェックが完了し、すべての問題が解決されると、フェイルオーバーが実行されます。選択した仮想マシンとvAppが、複製ストレージから障害回復プールにエクスポートされます。

    フェイルオーバーが完了します。

フェイルバック

  1. まず、障害回復サイト上で実行されている仮想マシンとvAppのフェイルバック先として、プライマリサイトのプールを選択します。
  2. 次に、障害回復サイトから複製されたストレージリポジトリを格納するストレージターゲットの詳細を指定します。
  3. ウィザードによりターゲットがスキャンされ、検出されたすべてのストレージリポジトリが表示されます。

    フェイルバックする仮想マシンとvAppのメタデータと仮想ディスクを格納しているストレージリポジトリを選択します。

  4. ウィザードによりストレージリポジトリがスキャンされ、検出されたすべての仮想マシンとvAppが表示されます。

    プライマリサイトにフェイルバックする仮想マシンとvAppを選択し、それらをフェイルバック後に自動的に起動するか手作業で起動するかを指定します。

  5. ウィザードによりいくつかの事前チェックが実行され、選択した仮想マシンやvAppがフェイルバック可能かどうかが検証されます。たとえば、仮想マシンやvAppの起動に必要なストレージがプライマリサイトのプールで使用可能かどうかがチェックされます。
  6. 最後に、事前チェックが完了し、すべての問題が解決されると、フェイルバックが実行されます。障害回復サイトで実行されている、選択した仮想マシンとvAppが、複製ストレージからプライマリサイトのプールにエクスポートされます。

    フェイルバックが完了します。

[障害回復] ウィザードにより同一仮想マシンについての複数の情報が検出された場合(プライマリサイトのストレージ、障害回復サイトのストレージ、およびインポート先のプールに同一仮想マシンのメタデータが見つかった場合など)は、最新の情報のみが使用されます。

ヒント: 仮想マシンやvAppとストレージリポジトリの対応、およびストレージリポジトリとLUNの対応を表すストレージリポジトリ名を使用すると、複製ストレージからの仮想マシンやvAppの回復がわかりやすくなります。

[障害回復] ウィザードでは、障害回復システムの設定を確認するために、フェイルオーバーテストを実行することもできます。このテストでは、通常のフェイルオーバーと同じ処理が実行されますが、障害回復サイトにエクスポートされた仮想マシンやvAppは一時停止状態で起動します。さらに、テスト完了時にこれらの仮想マシンやvApp、および再作成されたストレージが障害回復サイトから消去されます。「フェイルオーバーテスト」を参照してください。

XenServer DRの用語

vApp
関連する複数の仮想マシンを単一の管理対象として論理的にグループ化したものを指します。
サイト
XenServerのリソースプール、ストレージ、およびハードウェア機材の物理的なグループを指します。
プライマリサイト
フェイルオーバー対象の仮想マシンやvAppを実行する物理サイトを指します。
セカンダリサイト、障害回復サイト
障害発生時にプライマリサイトのフェイルオーバー先として使用される物理サイトを指します。
フェイルオーバー
障害発生時にプライマリサイトの仮想マシンやvAppをセカンダリ(障害回復)サイト上で復元する処理を指します。
フェイルバック
仮想マシンやvAppをセカンダリ(障害回復)サイトからプライマリサイトに復元する処理を指します。
フェイルオーバーテスト
フェイルオーバーの「ドライラン」で、仮想マシンやvAppを複製ストレージからセカンダリ(障害回復)サイトのプールにエクスポートしますが、これらの仮想マシンは実際には起動しません。フェイルオーバーテストにより、障害回復が効果的に設定されているかどうかを検証できます。
プールメタデータ
リソースプール内の仮想マシンおよびvAppに関する情報で、名前や説明、および仮想マシンについては固有の識別子であるUUID(Universally Unique Identifier)、メモリと仮想CPUの構成、およびネットワークとストレージの情報が記録されます。また、高可用性または障害回復環境での仮想マシンの起動オプション(起動順序、起動間隔、および高可用性再起動優先度)も仮想マシンのメタデータに記録されます。プールメタデータは、障害回復機能でプライマリサイトの仮想マシンやvAppをセカンダリ(障害回復)サイトのプールで再作成するときに使用されます。