2.3.7 系の二重リセットの防止

系の二重リセットとは,ある系に対して,2度以上系のリセットをすることです。ここでは,系の二重リセットを防止する方法について説明します。

<この項の構成>
(1) 系の二重リセットが起こるおそれがある構成
(2) リセット発行系の決定方法
(3) 系障害時のリセット発行系の動作

(1) 系の二重リセットが起こるおそれがある構成

系の二重リセットが起こるおそれがある構成を,次の図に示します。

図2-28 系の二重リセットが起こるおそれがある構成

[図データ]

上記の図で示すような構成では,実行系の系障害時に複数の待機系がそれぞれリセット要求を発行し,実行系の回復を遅らせる場合があります。

系の二重リセットを防ぐためには,実行系をリセットする待機系を,事前に一つに決めておく必要があります。この待機系を,リセット発行系といいます。リセット発行系は,サーバの起動時に自動的に決定されます。

(2) リセット発行系の決定方法

実行系で実行サーバを,待機系で実行サーバに対応する待機サーバを起動し,最初に実行系と待機系の関係(ペア)が成り立つと,その待機系は実行系に対するリセット発行系になります。実行系で系障害が発生すると,リセット発行系が実行系をリセットします。そのあとにほかの系との間でペアが成り立っても,実行系をリセットするのは最初にペアになったリセット発行系だけです。

サーバが停止して,実行系と,最初にリセット発行系になった待機系とのペアが成り立たなくなった場合,リセット発行系はあとからペアになった待機系に変更されます。あとからペアになった待機系が複数ある場合は,その中でホストアドレスの最も小さい待機系が,以降のリセット発行系になります。

リセット発行系の決定方法を,次の図に示します。

図2-29 リセット発行系の決定方法

[図データ]

この図では,実行サーバ1が停止して実行系と待機系1とのペアが成り立たなくなったため,リセット発行系は,あとからペアになった待機系2または待機系3に変更されます。待機系2と待機系3とでは,待機系2のホストアドレスが小さいので,待機系2がリセット発行系になります。

(3) 系障害時のリセット発行系の動作

リセット発行系は,実行系をリセットすると,ほかの待機系に対してリセットの完了を連絡します。リセット発行系でない待機系は,リセット完了連絡を受けると,リセットされた実行系の実行サーバを,自系にある待機サーバに切り替えます。

リセット発行系でない待機系が実行系の系障害を検出した場合は,リセット発行系のリセット完了連絡があるまで,何もしないで待ちます。監視専用LANの障害などで,20秒待ってもリセット完了連絡がない場合は,リセット発行系からのリセットが失敗したとみなし,実行系の系障害を検出した待機系が実行系をリセットします。

系障害時のリセット発行系の動作を,次の図に示します。

図2-30 系障害時のリセット発行系の動作

[図データ]

次に,系障害時のリセット発行系の動作の詳細を説明します。番号は,上記の図と対応しています。

  1. リセット指示
    待機系(リセット発行系)は,実行系の系障害を検出すると,実行系をリセットします。
  2. リセット完了連絡
    リセット完了後,ほかの待機系にリセット完了を連絡します。
  3. 系切り替え
    リセット完了の連絡を受け取ると,実行系の実行サーバをそれぞれの待機サーバに系切り替えします。

リセット発行系でない待機系が実行系の系障害を検出した場合の動作を,次の図に示します。

図2-31 リセット発行系でない待機系が実行系の系障害を検出した場合の動作

[図データ]

次に,リセット発行系でない待機系が実行系の系障害を検出した場合の動作の詳細を説明します。番号は,上記の図と対応しています。

  1. 20秒間リセット完了連絡未受信
    リセット発行系以外の系が実行系の系障害を検出した場合は,リセット発行系のリセット完了の連絡を待ちます。
  2. リセット指示
    監視専用LANの障害などで20秒待ってもリセット完了の連絡がない場合,障害を検出した系が実行系をリセットします。