ディザスタリカバリとバックアップ
XenServer のディザスタリカバリ (DR) 機能を使用すると、プール全体またはサイト全体を破壊するハードウェア障害から仮想マシン (VM) および vApp を復旧できます。単一ホストの障害に対する保護については、高可用性を参照してください。
注:
DR 機能を使用するには、root アカウントでログインしているか、プールオペレーター以上の役割を持っている必要があります。
XenServer® DR の理解
注:
DR は、サイトが地理的に分散している場合に適切な回復メカニズムです。データセンターが 5 ミリ秒未満のラウンドトリップ遅延と少なくとも 10 Gbps のネットワークスループットで接続されている場合(近接定義を満たす場合)、DR を必要とせずに単一のリソースプールとして運用できます。ただし、共有プールだけでは、データセンター全体の障害に対する回復性を提供するわけではありません。DR が必要かどうかは、プールのトポロジ、ストレージ構成、および回復目標によって異なります。
XenServer DR は、ビジネスに不可欠な VM および vApp を復旧するために必要なすべての情報をストレージリポジトリ (SR) に保存することで機能します。その後、SR はプライマリ (本番) 環境からバックアップ環境にレプリケートされます。プライマリサイトの保護されたプールがダウンした場合、セカンダリ (DR) サイトで再作成されたレプリケートされたストレージから、アプリケーションまたはユーザーのダウンタイムを最小限に抑えて、そのプール内の VM および vApp を復旧できます。
XenCenter® のディザスタリカバリ設定を使用して、障害発生時にストレージを照会し、選択した VM および vApp をリカバリプールにインポートできます。VM がリカバリプールで実行されている場合、リカバリプールのメタデータもレプリケートされます。プールのメタデータのレプリケーションにより、プライマリプールが復旧したときに、VM 設定の変更がプライマリプールに反映されます。場合によっては、同じ VM の情報が複数の場所にあることがあります。たとえば、プライマリサイトのストレージ、ディザスタリカバリサイトのストレージ、およびデータがインポートされるプールにも情報が存在する場合があります。XenCenter は、VM 情報が 2 つ以上の場所に存在することを発見した場合、常に最新の情報のみを使用するようにします。
ディザスタリカバリ機能は、XenCenter および xe CLI で使用できます。CLI コマンドについては、ディザスタリカバリコマンドを参照してください。
ヒント:
ディザスタリカバリ設定を使用して、ディザスタリカバリシステムの非破壊テストのためにテストフェイルオーバーを実行することもできます。テストフェイルオーバーでは、すべての手順はフェイルオーバーと同じです。ただし、VM および vApp は、ディザスタリカバリサイトに復旧された後も起動されません。テストが完了すると、DR サイトで再作成されたすべての VM、vApp、およびストレージを削除するためのクリーンアップが実行されます。
XenServer VM は、次の 2 つのコンポーネントで構成されています。
-
VM が使用している仮想ディスク。VM が配置されているプール内の構成済みストレージリポジトリ (SR) に保存されます。
-
VM 環境を記述するメタデータ。この情報は、元の VM が利用できないか破損している場合に VM を再作成するために必要です。ほとんどのメタデータ構成データは、VM の作成時に書き込まれ、VM 構成を変更した場合にのみ更新されます。プール内の VM の場合、このメタデータのコピーはプール内のすべてのホストに保存されます。
DR環境では、プール内のすべてのVMおよびvAppに関するプールメタデータと構成情報を使用して、セカンダリサイトでVMが再作成されます。各VMのメタデータには、その名前、説明、UUID (Universal Unique Identifier)、メモリ、仮想CPU、ネットワークおよびストレージ構成が含まれます。また、VMの起動オプション(起動順序、遅延間隔、高可用性、再起動優先度)も含まれます。VMの起動オプションは、高可用性またはDR環境でVMを再起動するときに使用されます。たとえば、ディザスターリカバリー中にVMを復旧する場合、vApp内のVMは、VMメタデータで指定された順序で、指定された遅延間隔を使用してDRプールで再起動されます。
DRインフラストラクチャの要件
XenServer DRを使用するには、プライマリサイトとセカンダリサイトの両方で適切なDRインフラストラクチャをセットアップします。
-
プールメタデータおよびVMが使用する仮想ディスクに使用されるストレージは、プライマリ(本番)環境からバックアップ環境にレプリケートする必要があります。ミラーリングなどのストレージレプリケーションは、デバイスによって異なります。したがって、ストレージレプリケーションの処理については、ストレージソリューションベンダーにご相談ください。
-
DRサイトのプールに復元したVMとvAppが稼働した後、DRプールメタデータと仮想ディスクを含むSRをレプリケートする必要があります。レプリケーションにより、プライマリサイトがオンラインに戻ったときに、復元されたVMとvAppをプライマリサイトに復元(フェイルバック)できます。
-
DRサイトのハードウェアインフラストラクチャは、プライマリサイトと一致している必要はありません。ただし、XenServer環境は同じリリースおよびパッチレベルである必要があります。
-
セカンダリサイトのホストとプールは、プライマリサイトのホストと同じライセンスエディションである必要があります。これらのXenServerライセンスは、プライマリサイトのホストに割り当てられているライセンスに追加されるものです。
-
フェイルオーバーされたすべてのVMを再作成して起動できるように、ターゲットプールには十分なリソースが構成されている必要があります。
警告:
ディザスターリカバリー設定は、ストレージアレイの機能を制御しません。
ディザスターリカバリー機能のユーザーは、メタデータストレージが何らかの方法で2つのサイト間でレプリケートされていることを確認する必要があります。一部のストレージアレイには、レプリケーションを自動的に実現するための「ミラーリング」機能が含まれています。これらの機能を使用する場合は、リカバリーサイトでVMを再起動する前に、ミラー機能(「ミラーが破損している」)を無効にする必要があります。
展開に関する考慮事項
ディザスターリカバリーを有効にする前に、以下の手順を確認してください。
災害発生前に実行する手順
以下のセクションでは、災害発生前に実行する手順について説明します。
-
VMとvAppを設定します。
-
VMとvAppがSRに、SRがLUNにどのようにマッピングされているかをメモします。
name_labelとname_descriptionパラメーターの命名には特に注意してください。SRの名前がVMとvAppがSRに、SRがLUNにどのようにマッピングされているかを捉えている場合、レプリケートされたストレージからVMとvAppを復元するのはより簡単です。 -
LUNのレプリケーションを準備します。
-
これらのLUN上の1つ以上のSRでプールメタデータのレプリケーションを有効にします。
-
プライマリプールメタデータをレプリケートするSRが、1つのプールにのみ接続されていることを確認してください。
災害発生後に取るべき手順
以下のセクションでは、災害発生後に取るべき手順について説明します。
-
既存のストレージミラーをすべて解除し、リカバリサイトが共有ストレージへの読み取り/書き込みアクセス権を持つようにします。
-
VMデータを復元したいLUNが他のどのプールにも接続されていないことを確認してください。接続されていると破損が発生する可能性があります。
-
リカバリサイトを災害から保護したい場合は、リカバリサイト上の1つ以上のSRでプールメタデータのレプリケーションを有効にする必要があります。
リカバリ後に取るべき手順
以下のセクションでは、データのリカバリが成功した後に取るべき手順について説明します。
-
ストレージミラーを再同期します。
-
リカバリサイトで、プライマリサイトに戻したいVMまたはvAppをクリーンにシャットダウンします。
-
プライマリサイトで、前のセクションのフェイルオーバーと同じ手順に従って、選択したVMまたはvAppをプライマリにフェイルバックします。
-
将来の災害からプライマリサイトを保護するには、レプリケートされたLUN上の1つ以上のSRに対してプールメタデータレプリケーションを再度有効にする必要があります。