データセンターのアクティブ化調整モードについて

 

適用先: Exchange Server 2010 SP2, Exchange Server 2010 SP3

トピックの最終更新日: 2011-09-01

データセンターのアクティブ化調整 (DAC) モードは、データベース可用性グループ (DAG) のプロパティ設定です。DAC モードは既定で無効になっており、連続レプリケーションを使用する 2 つ以上のメンバーを含むすべての DAG で有効にする必要があります。サード パーティのレプリケーション モードにある DAG に対しては、サードパーティ ベンダーによって指定されない限り DAC モードを有効にしないでください。

DAG に影響を与える致命的な障害が発生した場合 (いずれかのデータセンターが完全に機能を停止した場合など) には、DAC モードを使用して DAG のスタートアップ データベース マウント動作を制御します。DAC モードを有効にしていないときに DAG 内の複数サーバーに影響を与える障害が発生した場合、障害発生後に DAG メンバーの過半数を復元する際 DAG は再開してデータベースのマウントを試みます。複数データセンター構成で、この動作はスプリット ブレイン現象を起こす可能性があります。これは、すべてのネットワークが失敗して DAG メンバーが相互にハートビート信号を受信できない状況です。スプリット ブレイン現象は、ネットワーク接続がデータセンター間で切断された場合にも発生します。スプリットブレイン現象は、DAG メンバー (および偶数のメンバーを持つ DAG の場合は、DAG ミラーリング監視サーバー) の過半数が常に使用可能であることを要求し、さらに DAG が運用可能な状態にするために通信を行うことで防止されます。メンバーの過半数が通信を行っている場合、その DAG はクォーラムを保持していると表現します。

たとえば、最初のデータセンターに 2 つの DAG と監視サーバーがあり、2 番目のデータセンターにその他の 2 つの DAG メンバーがあるというシナリオを考えます。最初のデータセンターで電源が失われ、2 番目のデータセンターの DAG をアクティブ化する場合 (例: 2 番目のデータセンターで代替ミラーリング監視サーバーをアクティブ化することによって) に、最初のデータセンターが 2 番目のデータセンターへのネットワーク接続なしで復元されると、DAG 内のアクティブなデータベースがスプリット ブレイン状態になる可能性があります。

DAC モードの機能

DAC モードは、データセンターのアクティブ化調整プロトコル (DACP) というプロトコルを使用することによってスプリット ブレインの発生を防ぐように設計されています。致命的な障害の後に DAG が回復するとき、DAG にクォーラムがある場合でもデータベースを自動的にマウントしません。代わりに DACP が使用され、DAG の現在の状態と、アクティブ マネージャーがデータベースのマウントを試みる必要があるかどうかが確認されます。

DAC モードは、データベースをマウントするクォーラムのアプリケーション レベルと考えられているかもしれません。DACP の目的と機能を理解するには、DACP による処理を想定している第一のシナリオを理解することが重要です。2 つのデータ センター シナリオについて考えます。プライマリ データセンターで全面的な電源障害があるとします。この出来事で、すべてのサーバーと WAN がダウンしたため、スタンバイ データセンターをアクティブ化する決定が組織によって行われます。そのような回復シナリオのほぼすべてで、電源がプライマリ データセンターに回復したときに、WAN 接続が通常はすぐには回復しません。つまり、プライマリ データセンター内の DAG メンバーは電源がオンになりますが、それらはアクティブ化されたスタンバイ データセンター内の DAG メンバーと通信することができません。プライマリ データセンターには常に DAG クォーラム投票者の多数が含まれる必要があります。 これは、電源が回復したときに、スタンバイ データセンター内の DAG メンバーへの WAN 接続がない場合でも、プライマリ データセンター内の DAG メンバーが多数を占めるため、クォーラムを保持します。これは、クォーラムが原因でこれらのサーバーがデータベースをマウントできる場合があり、その結果として、アクティブ化されたスタンバイ データセンターで現在マウントされている実際のアクティブ データベースと相違する可能性があるという問題です。

DACP は、この問題に対処するために作成されました。アクティブ マネージャーは、サーバー上でアクティブとして割り当てられたローカル データベースのマウントが許可されているかどうかを DAG に通知するメモリ内のビット (0 または 1) を保存します。DAG が DAC モードで実行している場合 (3 つ以上のメンバーの DAG )、アクティブ マネージャーの起動時に毎回ビットが 0 に設定されます。これは、データベースのマウントが許可されていないことを示します。DAC モードであるため、サーバーは認識している DAG のその他のメンバーすべてと通信を試みて、別の DAG メンバーを取得し、それにアクティブとして割り当てられているローカル データベースのマウント可否について答えを得る必要があります。答えは、DAG 内のその他のアクティブ マネージャーのビット設定形式でわかります。別のサーバーからそのビットの設定が 1 であると返答される場合、それはサーバーがデータベースのマウントを許可されており、起動中のサーバーがそのビットを 1 と設定してそのデータベースをマウントするという意味です。

ただし、プライマリ データセンターの電源障害から回復するときにサーバーが回復したが WAN 接続が回復していない場合、プライマリ データセンター内のすべての DAG メンバーに 0 の DACP ビット値が 0 になり、その結果、回復したプライマリ データセンター内でバックアップを開始しているサーバーのいずれもデータベースをマウントしません。理由は、それらのいずれも DACP ビット値が 1 の DAG メンバーと通信できないからです。

2 つのメンバーを持つ DAG 用の DAC モード

2 つのメンバーを持つ DAG には、アプリケーションレベルのスプリット ブレイン現象に対して DACP ビットのみを完全に保護することを妨げる固有の制限があります。メンバーが 2 つだけの DAG の場合、DAC モードでは、DAG の代替ミラーリング監視サーバーの起動時間を利用して、スタートアップ時にデータベースをマウントできるかどうかを判断します。代替ミラーリング監視サーバーの起動時間を、DACP ビットが 1 に設定されたときの時刻と比較します。

  • DACP ビットを設定した時刻が代替ミラーリング監視サーバーの起動時間より早い場合、システムは DAG メンバーとミラーリング監視サーバーが同時に再起動されたと見なし (おそらくプライマリ データセンターで停電が発生したため)、DAG メンバーはデータベースのマウントを許可されません。

  • DACP ビットを設定した時刻が代替ミラーリング監視サーバーの起動時間より後の場合、システムは、他の理由で (おそらくメンテナンスを実施するためにスケジュールされた停止や、DAG メンバーに対して分離されたシステム クラッシュや停電のため) DAG メンバーが再起動されたと見なし、DAG メンバーはデータベースのマウントを許可されます。

重要

代替ミラーリング監視サーバーの起動時間は、DAG メンバーがスタートアップ時にアクティブなデータベースをマウントできるかどうかを判断するために使用されるため、代替ミラーリング監視サーバーと単独の DAG メンバーを同時に再起動しないようにする必要があります。このようにすると、DAG メンバーはスタートアップ時にデータベースをマウントできない状態のままになる場合があります。このような状況が発生した場合、DAG に対して Restore-DatabaseAvailabilityGroup コマンドレットを実行する必要があります。このコマンドレットを実行すると、DACP ビットがリセットされ、DAG メンバーはデータベースのマウントが許可されます。

DAC モードのその他の利点

アプリケーション レベルでのスプリットブレイン現象を防止するばかりでなく、DAC モードではデータセンターの切り替えを実行するために使用する組み込みのサイト復元コマンドレットを使用することもできます。これらには次のコマンドレットがあります。

DAC モードでない DAG のデータセンターの切り替えを実行するには、Exchange ツールとクラスター管理ツールを組み合わせて使用する必要があります。

データセンターの切り替えの詳細については、「データセンターの切り替え」を参照してください。

DAC モードの有効化

DAC モードは、Exchange 管理シェルによってのみ有効化できます。具体的には、次の例に示すように、Set-DatabaseAvailabilityGroup コマンドレットを使用して DAC モードを有効または無効にできます。

Set-DatabaseAvailabilityGroup -Identity DAG2 -DatacenterActivationMode DagOnly

前述の例では、DAC モードに対して "DAG2" という名前の DAG が有効になっています。

DAC モードの有効化については、「データベース可用性グループのプロパティの構成」と「Set-DatabaseAvailabilityGroup」を参照してください。

 © 2010 Microsoft Corporation.All rights reserved.