IPアドレスを引き継ぐ
単に、2台のサーバに同じIPアドレスを与えて、
別の機器からpingをかけて、LANケーブルを交互に抜き差ししても、
どちらか片方のサーバにしかpingは通りません。
LAN(Ethenet)では、IPアドレスではなく、
NIC(Network Interface Card)に割り当てられている
MAC(Media Access Control Address)を取得して通信しています。
MACアドレスはARP(Address Resolution Protocol)を使い取得されます
ARPはIPアドレスを指定してMACアドレスを問い合わせる仕組みのことで、
一度取得したMACアドレスをARPテーブルに一定時間キャッシュします。
一定時間MACアドレスをキャッシュすることによって、
別のサーバに同じIPアドレスが割り当てられても
、ARPのテーブルが更新されるまで
予備サーバと通信することはできない仕組みになっています。
普通は”IPアドレスに対応するMACアドレスをリクエストする”
のがARPリクエストですが、
gratuitous ARPを使うことで自分のIPアドレスと対応するMACアドレスを
他のサーバに通知することができます。
スクリプトに入れるコードの例
send_arp $VIP $MAC 255.255.255.255 ffffffffffff
255〜の部分に自分のIPアドレス、ffff〜の部分にMACアドレスを指定してください。
サーバの有効活用
現状使用しているWebサーバが稼動している間、
ホットスタンバイしている予備サーバも接続され、動いてはいるが、
Webサービスに対しての処理・稼動をしていないのでは、
もったいない感じがします。
そこで、Webサービス全体の処理性能・スピードなどを上げるためにも、
負荷分散(Load Balance)をさせることをお勧めします。
Webサーバを負荷分散構成にすると、
クライアントからのリクエストが増加しても、
サーバを増設することで対応が可能になります。
巨大な容量のサーバを一台で使うこともなく、
使わなくなった家庭用のパソコンをサーバシステムの
サブ的につかうこともできます。
Active/Backupの構成でフェイルオーバさせてみる
|
【用語解説】
冗長化
システムに障害が発生しても
予備の機材でシステムの機能を
継続できるようにすること。
フェイルオーバ
冗長化されたシステム上で
activeなノード(サーバ、ネット機器)が
停止した際に自動的に
バックアップすること
一般的に手動で切り替えることは
スイッチングオーバという
ヘルスチェック
監視対象の機器が正常に
稼動しているかを
チェックすること
Webサーバに対し、Pingが通るか
TCPの80番ポートに接続可能か
httpの応答はあるかなどを確認すること
多くの場合、
ヘルスチェックに失敗すると
管理者に監視失敗の警告が
届くように設定されている
死活監視とも言われる
|