SGLXの共有ストレージ接続構成とストレージパスのフェイルオーバー
SGLXの共有ストレージ接続構成とストレージパスのフェイルオーバー
SGLXの共有ストレージは、ホストバスアダプタ/スイッチ/ストレージコントローラ/ストレージパスのすべてを冗長構成にしています。
クラスタノードのPCIスロットにホストバスアダプタを2枚接続し、各ホストバスアダプタはそれぞれ冗長構成されたFibre Channelスイッチに接続します。スイッチと共有ストレージ間も冗長されたパスを持っており、Fibre Channelスイッチの1つに障害が発生しても共有ストレージへのパスは確保されます。
さらに共有ストレージに搭載されたコントローラも冗長構成になっており、コントローラに障害が発生した場合でも共有ストレージへのパスを確保するようになっています。
以上のことから、ホストバスアダプタ/スイッチ/共有ストレージコントローラの冗長構成によってノードとストレージ間における単一障害点を排除して います。SGLXでは、冗長構成されたホストバスアダプタのドライバに、OSに添付されている標準のドライバではなくHP製のQlogic failoverドライバを使用します。
SGLXで推奨されるネットワーク構成とNICのフェイルオーバー
クラスタノードはお互いのノードの生死監視専用のハートビートLANとネットワークサービスが利用するLAN(一般にはサービスLANやユーザLAN、データLANと呼びます)を構成します。
SGLXにおけるサービスLAN用のNICには、bonding構成を強く推奨します。サービスLANをbonding構成にしないクラスタは可用 性が低下するためです。さらにSGLXではハートビートLANの冗長構成として、サービスLANとハートビートLANを兼用しハートビートパケットはハー トビート専用LANとサービスLANの2つに流れます。
ハートビートLANとサービスLANは別セグメントに構築することが推奨されており、別セグメントのLAN上にハートビートパケットを流すことによって、ハートビートLAN自体の冗長構成を実現します。
これにより、ハートビートLANの1つに障害が発生したとしてもクラスタノード間のハートビートは保たれ、クラスタノードの生死監視は継続します。 SGLXではハートビート専用LANに障害が発生しても別セグメントでハートビートLANが生きている限りクラスタは稼動し続けます。ハートビートのパ ケットをどのNICで送受信するかは、クラスタ構成ファイルと呼ばれるテキストファイルに記述します。
SGLXにおけるNICの通信に関するフェイルオーバー機能はbondingドライバが担当します。最近のエンタープライズ用途のLinuxディス トリビューションの多くは標準でbondingドライバを持っています。bondingドライバを持たない比較的古いディストリビューションではHP製の bondingドライバをインストールすることも可能ですが、現在はOSが標準で持つbondingドライバを利用してSGLXの冗長LAN構成を組むこ とが可能です。
SGLXにおける仮想IPアドレス
SGLXで構成されたHAクラスタシステムは、複数のクラスタノードから構成されているため、ノードごとにそれぞれ固有のIPアドレスを持っています。これをステーショナリIPアドレスと呼びます。
クラスタサービスが起動しているいないにかかわらず、メンテナンスなどの理由により、クラスタノードに直接ログインしなければならない場合は、ステーショナリIPアドレスを使ってアクセスします。
またSGLXには仮想IPアドレスと呼ばれる機能があります。仮想IPアドレスにより、クライアント側からみるとクラスタシステムがあたかも単一サーバからサービスが提供されているかのように見えます。
仮想IPアドレスは、ホストに対して割り当てられるのではなくSGLXが提供するサービスに対して割り当てられます。SGLXでは複数の異なるサー ビスを同時にクライアントに提供することができますので、仮想IPアドレスもそのサービスの数だけ複数持つことが可能です。
サービスを提供していたクラスタノードに障害が発生しても、他のノードがそのサービスに関連づけられた仮想IPアドレスを引き継ぎ、クライアントは障害前と同じIPアドレスでサービスを受けることが可能となります。
この仮想IPアドレスの機能によって、クライアントがクラスタのどのノードでサービスが稼動しているかを意識することなくサービスが稼動しているクラスタノードへアクセスすることができます。
SGLXにおいて仮想IPを実現するには、パッケージ制御スクリプトと呼ばれるファイルに仮想IPアドレスを記述します。仮想IPアドレスはステーショナリIPアドレスと同様に、/etc/hostsファイルやDNSサーバに登録することができます。


