前述したように、高可用性クラスターが構成されると、2つ以上のノードが同時に動作し、ユーザーは「アクティブ」ノードに接続します。アクティブノードで問題が発生すると、「フェイルオーバー」状態が発生し、「スタンバイ」ノードが新しい「アクティブ」ノードになります。フェイルオーバーが発生した場合、クライアントがフェイルオーバー状態を検出して再接続できるようにするメカニズム、またはユーザーのアクティブなクライアントセッションをアクティブノードにシームレスに転送する仕組みが必要です。
仮想IPアドレス
通常、「仮想」IPアドレスは、クラスターが構成され、クライアントが仮想IPアドレスを使用してアクティブノードと通信するときに作成されます。フェイルオーバーが発生すると、仮想IPアドレスは新しいアクティブノードに再割り当てされ、クライアントは同じ仮想IPアドレスに再接続します。
例として、IPアドレスが 10.20.1.10と10.20.2.10の2つのノードAとBがあると仮定します。この例では、現在アクティブなノードに割り当てられていると考えられる10.20.0.10の仮想IPアドレスを定義します。
これは、1つのノードの1つのネットワークインターフェースカードに2番目のIPアドレスを割り当てるのと同じです。コマンドip aをアクティブノードで実行すると、両方のIPアドレスが表示されます(以下のLinuxの例の10行目と12行目)。
ARPプロトコル
クライアントがIPアドレスを使用してサーバーを見つけようとする時、クライアントは通常、ARP(アドレス解決プロトコル)を使用してターゲットマシンのMAC(メディアアクセス制御)アドレスを探します。
クライアントがターゲットIPアドレスを見つけるためにメッセージをブロードキャストすると、アクティブノードはそのMACアドレスで応答し、クライアントは要求を解決してそれに接続します。
クラウド環境におけるARPの代替手段
しかし、クラウド環境では、仮想環境で多くのレイヤーが抽象化されているため、ARPを使用してアクティブノードを特定することはできません。特定のクラウド環境で使用されているネットワークインフラに基づいた代替方法が必要になる場合があります。通常、以下のオプションのいずれかを選択します。
このトピックへフィードバック