Windows2003 でサーバの冗長化 ( HA 構成 ) - NLB






これは NLB という機能によって実現可能。

例えば 2 台の Web サーバで NLB を使ってクラスタを構成すれば、
NLB の vip ( virtual ip ) を Web サーバの IP アドレスとして外部へ公開しておいて、
1 台のサーバがダウンしても残りの 1 台が vip に対する通信を処理することで、
vip すなわち Web サーバはダウンせずにサービスを提供できるということが可能です。


設定方法は次の通り。

○構成
  Web サーバ A : 1.1.1.1
  Web サーバ B : 1.1.1.2

○目的
  Web サーバ A, Web サーバ B で クラスタ を構成して 1.1.1.3 を vip として公開する。

○Web サーバ A での設定
1. hosts ファイルで IP アドレスに対する名前を定義する

    C:\WINDOWS\system32\drivers\etc\hosts

    1.1.1.1 serverA
    1.1.1.2 serverB
    1.1.1.3 serverV

2. リンクをアップさせておく

NLB を構成するインターフェースをアップさせて、
Web サーバ A とWeb サーバ B が通信できるようにしておきます。

3. ネットワーク負荷分散マネージャによる設定

[スタート] --> [管理ツール] --> [ネットワーク負荷分散マネージャ]

[クラスタ] --> [新規]
クラスタパラメータ
  クラスタIP構成
    IPアドレス:1.1.1.3
    サブネットマスク:VIPのマスク
    フルインターネット名:任意
  クラスタ操作モード
    マルチキャスト:チェック
    IGMPマルチキャスト:チェックしない
    リモート制御を許可する:チェックしない

追加のクラスタIPアドレスは設定不要

定義されたポートの規則
  考え方:NLBで冗長化したくないポートに関して使用不可を定義する。
             使用不可を定義してないポートに関してはすべて冗長化の対象となる。
  フィルタモード:対象ポートは「単一ホスト」
                      対象外ポートは「このポートの範囲を使用不可にする」

接続
  自ホストのIPアドレスを入力
  [接続] をクリック


残りのホストをクラスタに追加する場合(以下のいずれか)
  ・各ホストにて上記作業を実施する
  ・設定済みのホストから追加する
      追加したいクラスタを右クリック
      [ホストをクラスタに追加] を選択
      追加したいホストのIPアドレスを入力
      [接続] をクリック
      選択しておいて [次へ] をクリック
      優先順位を確認
      [完了]
      ※エラーが発生することが多いが、一旦切断して接続し直すと問題無し。


単一ホストで複数クラスタを定義することは可能。
その場合クラスタ単位で冗長化が可能になる。
ただし、いずれかのクラスタの内一つでインターフェースがダウンした場合、
マネージャではそのインターフェースを持つホスト自体がNLBから外れたように認識される。
しかし、その際もダウンしてないクラスタの方は問題無くNLB構成での通信が可能。