クラスタには,すべてのクラスタ・メンバを接続するための専用クラスタ・インターコネクトが必要です。このインターコネクトは,クラスタ・メンバ間の専用通信チャネルとして使用されます。クラスタ・インターコネクトのハードウェアには Memory Channel または専用の LAN を使用できますが,同時にはいずれか一方しか使えません。
この章では,クラスタ・インターコネクトの目的,その使用,そのトラフィック制御メソッド,および使用するインターコネクトの種類を決める方法について説明します。具体的には,次の事項について説明します。
クラスタ・インターコネクトを経由するストレージ・トラフィックの制御 (7.1 節)
クラスタ・インターコネクトを経由するアプリケーション・トラフィックの制御 (7.2 節)
クラスタ・インターコネクトを経由するクラスタ別名トラフィックの制御 (7.3 節)
クラスタ・サイズとクラスタ・インターコネクト・トラフィックの影響の理解 (7.4 節)
クラスタ・インターコネクトの選択 (7.5 節)
Memory Channel インターコネクトの理解 (7.6 節)
LAN インターコネクトの理解 (7.7 節)
一般に,クラスタ・インターコネクトは次のような高レベルの機能に対して使用します。
ヘルス・メッセージ,ステータス・メッセージ,および同期メッセージ
接続マネージャはこれらのメッセージを使用して,クラスタとそのメンバの状態を監視するとともに,クラスタ内でメンバ数とアプリケーションの配置を調整します。このタイプのメッセージ・トラフィックはメンバ数が変化するとき (たとえば,メンバがクラスタに追加されたり,削除されたりするとき) に増加しますが,クラスタが安定状態にあるときはほとんど発生しません (詳細は,7.4 節を参照)。
分散ロック・マネージャ (DLM) のメッセージ
TruCluster Server は DLM を使用して共用リソースのアクセスを調整します。ユーザ・アプリケーションも,DLM API (アプリケーション・プログラミング・インタフェース) ライブラリを介して,この調整機能を利用することができます。このようなロック機能の調整に必要なメッセージは,クラスタ・インターコネクトを使って送信されます。アプリケーションがこの機能を頻繁に使用しても,クラスタ・ソフトウェア自身が生成する DLM トラフィックはわずかです。
リモート・ファイル・システムへのアクセス
TruCluster Server ソフトウェアでは,すべてのクラスタ・メンバがストレージ・デバイスを等しく利用できるようになっています。つまり,あるメンバの専用ストレージ・バスに存在するストレージでも,すべてのクラスタ・メンバからアクセスすることができます。他のクラスタ・メンバが行うこのストレージのファイル・システムに対する読み書きは,クラスタ・インターコネクトを経由して送信されます。共用ストレージにあるファイルへの入出力要求 (特に読み取り) は,可能であれば,クラスタ・インターコネクトを迂回してストレージに直接送られます。クラスタにファイル・システムとストレージをどのように構成するかで,クラスタ・インターコネクトのスループットが大きく異なってきます (詳細は,7.1 節を参照)。
アプリケーション固有のトラフィック
クラスタ・インターコネクトには,各メンバの仮想ネットワーク・インタフェース (ics0
) に対応した TCP/IP アドレスがあります。ユーザ・アプリケーションは,このアドレスを使用してインターコネクト上の通信を行います。このトラフィックがインターコネクトに与える負荷は,アプリケーションの組み合わせによって異なります (詳細は,7.2 節を参照)。
クラスタ別名ルーティング
クラスタ別名には 1 つの TCP/IP アドレスが割り当てられます。クライアントは,このアドレスを使うことにより,クラスタ・メンバ全体またはそのサブセットを指定することができます。ただし,別名サブシステムでは,各 TCP/IP 接続は,ある特定のクラスタ・メンバで動作している 1 つのプロセスに対して行われます。たとえば,あるクラスタ別名に対して複数のネットワーク・ファイル・システム (NFS) 操作を同時に行うと,その処理はクラスタ・メンバ間で分散されますが,クラスタ別名に対する個々の NFS 操作は,ある 1 つのメンバにある NFS デーモンがサービスします。クラスタ・インターコネクトは,クラスタ別名宛の TCP/IP パケットをその接続をサービスしている特定メンバへ送る場合に使われます。クラスタ別名に必要なインターコネクトの帯域幅は,その別名がどの程度使われるかに依存します (詳細は,7.3 節を参照)。
このような高レベルでの使われ方を見れば,クラスタ・インターコネクトの通信負荷がクラスタのストレージ構成とクラスタで実行するアプリケーションの組み合わせによって大きく影響されることがわかります。
表 7-1
に,LAN インターコネクトと Memory Channel インターコネクトを対象にした,コスト,性能,規模,メンバ間の距離,Memory Channel アプリケーション・プログラミング・インタフェース (API) ライブラリのサポート,および冗長性の比較を示します。以降の各節では,クラスタ・インターコネクトの帯域幅を管理する方法と,いくつかの要因に基づいて適切なインターコネクトを選択する方法を説明します。
表 7-1: Memory Channel インターコネクトと LAN インターコネクトの特性比較
Memory Channel | LAN |
コスト高。 | 一般的に低コスト。 |
高帯域幅,低遅延。 | 100 Mb/秒の場合:帯域幅は中で,遅延は中〜高。1000 Mb/秒の場合:高帯域幅で,遅延は中〜高。 |
最高 8 メンバで,Memory Channel ハブの容量により制約される。 | 現在は最高 8 メンバ。将来,拡張予定。 |
メンバ間の距離は,銅線の場合,最長 20 m (65.6 フィート)。仮想ハブ・モードの光ファイバ・ケーブルの場合,最長 2000 m (1.2 マイル)。物理ハブを使った光ファイバ・ケーブルの場合,最長 6000 m (3.7 マイル)。 |
ネットワーク・セグメントの距離は,使用するイーサネット・ハードウェアの機能とそのオプションによって決まる。『クラスタ・ハードウェア構成ガイド』 で説明されている LAN インターコネクト・ハードウェアの要件と構成の指針を使用する場合は,http://www.compaq.com/quickspecs にある個別のネットワーク・アダプタの『QuickSpec』を参照。 |
Memory Channel API (アプリケーション・プログラミング・インタフェース) ライブラリを使用可能。 | Memory Channel API ライブラリは使用不可。アプリケーションによっては,TruCluster Server バージョン 5.1B から新しく使えるようになったメンバ間の汎用シグナル送信機能 (クラスタ単位の
kill ) を使うだけで,メンバ間の通信を十分に行える。 |
マルチレール (フェイルオーバ・ペア) 冗長 Memory Channel 構成。 | 各メンバ上で複数のネットワーク・アダプタを NetRAIN (redundant array of independent network adapters) の仮想インタフェースとして構成するとともにその接続を複数のスイッチに分散することで,冗長性を実現する。 |
7.1 クラスタ・インターコネクトを経由するストレージ・トラフィックの制御
クラスタ・ファイル・システム (CFS) では,ファイル・システムのアクセスをクラスタ全体にわたって調整します。この調整機能は,ファイル・システムごとに CFS サーバの役割を 1 つのクラスタ・メンバに担当させることで実現します。CFS サーバは,他のクラスタ・メンバに代わって,そのファイル・システムに対するすべてのアクセス,つまり読み取りと書き込みを行います。
TruCluster Server バージョン 5.1A から,ファイル・システムの読み取りアクセスが,CFS サーバを迂回してディスクに対して直接行えるようになりました。この機能を利用すると,クラスタ・インターコネクトを経由しません。クラスタにあるすべてのディスクがどのクラスタ・メンバからでも同じようにアクセスできれば,この機能を使うことにより,読み取り操作に必要なクラスタ・インターコネクトの帯域幅を大幅に減らすことができます。ただし,読み取りアクセスがインターコネクトを迂回できても,他のメンバの提供するファイル・システムへ書き込む際は (この場合は,間接入出力アクセスになる),すべてインターコネクトを通ります。ファイル・システムに大量のデータを書き込むアプリケーションがあれば,できる限りそのアプリケーションをそのファイル・システムの CFS サーバと同じメンバに配置して,このトラフィックを減らすことをお勧めします。そうすれば,インターコネクトを経由するファイル・システムの入出力は,リモートに対する書き込みだけになります。アプリケーションの組み合わせ,CFS サーバの配置,およびリモートに対する書き込みのデータ量を分析すれば,そのクラスタに最適なインターコネクトを決定できます。
Oracle Parallel Server (OPS) のようなアプリケーションでは,ディスクの書き込み要求をその対象ディスクへ直接送ることで,CFS サーバに至るクラスタ・インターコネクトの利用を省くことができます。この直接入出力は,ファイルをオープンするときにアプリケーションで
O_DIRECTIO
フラグを指定することによって有効にされます。直接入出力が有効にされると,アプリケーションがクラスタ全体にわたってそのファイルに対する自身の書き込みを調整することが,CFS に対して宣言されます。この機能を使うアプリケーションが増えれば,指定されたファイルに対するクラスタ全体の書き込みスループットが増大するだけでなく,クラスタ・インターコネクトを経由するリモート書き込みのトラフィックも減少します。
この方法は,OPS のように他の方法ではデータ・キャッシュ,事前読み取り,および非同期書き込みによる性能改善効果を期待できないアプリケーションに対してだけ有効です。アプリケーションの開発者はこのフラグの利用を慎重に行ってください。アプリケーションがこのフラグを設定してファイルをオープンすると,オペレーティング・システムは,そのファイルがクローズされるまで,通常の書き込み同期機能をそのファイルに対して適用しなくなります。この場合,アプリケーションで独自のキャッシュ管理,ロック管理,および非同期入出力管理などを行わなければ,重大な性能低下やデータ破壊が発生します。
CFS およびデバイス要求ディスパッチャによるクラスタ・インターコネクトの使用と,直接入出力による最適化についての詳細は,『クラスタ管理ガイド』 を参照してください。
7.2 クラスタ・インターコネクトを経由するアプリケーション・トラフィックの制御
クラスタにあるコンピュータ資源の利用方法はアプリケーションごとに異なります。あるクラスタでは,各メンバが同じストレージおよび管理環境を共用して,それぞれが独立したコンピューティング・サービスを提供します (たとえば,ユーザが自分のプログラムをある 1 つのシステムで実行するタイムシェアリング中心のクラスタ)。一方,OPS のような他のアプリケーションでは,分散処理を使って,クラスタ・メンバのすべてのコンピュータ資源をクラスタ単位の単一アプリケーションに集中させます。この場合は,以下に示すように分散型アプリケーションの構成要素どうしがどのように通信するかを理解しておく必要があります。
共用ディスク・ファイルを使って情報を交換するかどうか。
インターコネクトを経由したプロセス間の直接通信で通信するかどうか。
単位時間あたりの通信の頻度とデータ量はどのくらいか。
伝送遅延から見て,アプリケーションには何が必要か。
これらの質問に答えることができれば,アプリケーションに必要な条件をインターコネクト・オプションの特性として表すことができます。たとえば,調整メッセージのやりとりに 1 秒あたり 10,000 バイトしか必要としないアプリケーションでは,クラスタの規模が大きくなっても,LAN インターコネクトに余分な負荷をかけることなく,そのコンピュータ資源を利用することができます。一方,OPSのように高いデータ転送速度と低い伝送遅延を必要とする分散型アプリケーションでは,クラスタの規模が小さくても,インターコネクトとして Memory Channel を使うことにメリットがあります。
7.3 クラスタ・インターコネクトを経由するクラスタ別名トラフィックの制御
インターコネクトの種類を決定するときには,クラスタ別名を使うアプリケーションの組み合わせ,クラスタ別名を使ってクラスタへ送信されるデータ量,およびクラスタのネットワーク・トポロジ (たとえば,メンバが外部ネットワークに対称に接続されているか非対称に接続されているか) が重要な検討項目となります。
クラスタ別名の通常の利用方法 (たとえば,telnet
,ftp
,Web ホスティング) では,インターコネクトの通信要求はわずかです。これらのアプリケーションでは,一般に,クラスタ別名に宛てて送信されるデータ量より,クラスタからクライアントに返されるデータ量の方が大きく上回ります。サーバ・プロセスに宛てて送られてくるデータ・パケットだけが,インターコネクトを経由する必要があります。すべてのメンバが外部に接続されていれば,クラスタから出ていくパケットは,すべて外部ネットワークに直接送信され,インターコネクトを経由する必要がありません。したがって,このようなアプリケーションに必要なインターコネクトの帯域幅は,一般的に狭くてすみます。
一方,よく使われるネットワーク・ファイル・システム (NFS) では,クラスタ・インターコネクトに多くの帯域幅を必要とします。サービスを行っているディスクからデータを読み取る場合は,読み取り要求だけがインターコネクトを経由するので,インターコネクトのトラフィック量はそれほど増えません。しかし,NFS を使ってディスクにデータを書き込む場合は,インターコネクトのトラフィック量がかなり増えます。この場合,インターコネクトを経由しなくてはならない入力データはディスク・ブロックから構成されています。NFS サービスを提供するクラスタでは,さまざまなインターコネクト構成案を検討して,ディスクの書き込みが発生しそうな単位時間あたりの平均データ量とそのインターコネクト構成で提供される帯域幅とを比較する必要があります。
TruCluster Server バージョン 5.1B で,NFS の書き込みによる影響を緩和する機能が導入されました。つまり,一部のクラスタ・メンバに別のクラスタ別名を割り当てて NFS のサービスを提供させることができるようになりました。この機能を使用すれば,一部の特定クラスタ・メンバだけを NFS サーバとして認識させることができるので,対応するサーバ・プロセスにインターコネクトを経由して送信しなければならない入方向の平均パケット数が減ります。4 メンバ・クラスタで負荷をランダムに分散すると,平均してディスク書き込みの 75% がインターコネクトを経由します。しかし,このうちの 2 つのメンバに別のクラスタ別名を割り当て,NFS のサービスを提供させると,インターコネクトを経由するディスク書き込みの平均的な数の割合が 50% に低下します。
クラスタ別名の使用方法と調整方法については,『クラスタ管理ガイド』 を参照してください。
7.4 クラスタ・インターコネクトのトラフィックに与えるクラスタ規模の影響
最適なインターコネクトを決定するときは,クラスタ・メンバの数,つまり規模を考慮するだけでは不十分です。クラスタにおける利用方法がインターコネクトにどのような負荷をかけるかも考える必要があります。規模の大きいクラスタでは,特定のアプリケーションの組み合わせに対して高いデータ転送容量を用意する傾向がありますが,クラスタのストレージ構成方法やアプリケーションの特性をよく検討して,適切なインターコネクトを決定した方が賢明です。しかし,クラスタの規模も,ある意味ではインターコネクトの帯域幅要件に影響を与えます。アプリケーションの処理がクラスタ全体にわたってランダムに (しかも管理されずに) 分散されており,CFS サーバも均等に分散されていると仮定すると,クラスタ・インターコネクトを経由するディスク書き込みの割合は,クラスタの規模が大きくなるにつれて増えていきます。たとえば,2 メンバのクラスタでは,平均して 50% の書き込みがインターコネクトを経由しますが,4 メンバのクラスタでは,これが 75% に増加します。7.1 節では,ファイル・システムに対する書き込みの大部分をそのファイル・システムを管理している CFS サーバが行うようなシステムを推奨しています。この推奨構成は,インターコネクトを経由する書き込み回数を最小限に抑えることができるので,使用するインターコネクトの種類に関係なく有効です。この推奨事項を満足する度合が高いほど,ディスク書き込みに必要なインターコネクトの帯域幅は少なくなります。
ただし,クラスタの規模 (メンバ数と使用するディスク数の両方) がインターコネクトのトラフィックに直接影響する場合もあります。それは,クラスタ・メンバ数の変化です。特にメンバがクラスタから外れる場合が問題で,残るメンバは他のクラスタ・メンバに調整メッセージを渡さなければなりません。Memory Channel インターコネクトは遅延が少ないので,Memory Channel を使用するクラスタではこの変化が迅速に通知されます。どちらのインターコネクトを使用するか判断するときは,メンバ数の変化がどの程度の頻度で発生するか (たとえば,クラスタ・メンバが定期的にリブートされるか) も判断基準に入れてください。
7.5 クラスタ・インターコネクトの選択
前の節で紹介した推奨事項の他に,次に述べる規則と制約事項もクラスタ・インターコネクトの選択に関係があります。
すべてのクラスタ・メンバを,LAN インターコネクトまたは Memory Channel インターコネクトのいずれかを使うように構成する必要があります。クラスタ内で種類の異なるインターコネクトを混在させることはできません。
Memory Channel API ライブラリを使うアプリケーションには Memory Channel が必要です。LAN インターコネクトを使うクラスタに Memory Channel API のアプリケーションだけが使う Memory Channel を構成することもできます。Memory Channel API を使うと,クラスタ・インターコネクトに TCP/IP トラフィックが少しだけ余分に発生します。
クラスタ内に 1 台でも AlphaServer DS10L システムを構成する場合は,ファースト・イーサネット (100Base-T) LAN インターコネクトが必要です。AlphaServer DS10L システムは,10/100 Mb/秒のイーサネット・ポート × 2,64 ビット PCI (Peripheral Component Interconnect) 拡張スロット × 1,内部固定 IDE (Integrated Device Electronic) ディスク × 1 の構成で出荷されます。AlphaServer DS10L をクラスタに構成するときは,(クラスタ・ルート,メンバ・ブート・ディスク,およびオプションのクォーラム・ディスクが存在する) 共用ストレージに PCI 拡張スロットを,また外部ネットワークにイーサネット・ポートをそれぞれ使い,残りの 10/100 Mb/秒 イーサネット・ポートを LAN インターコネクトで使うことをお勧めします。
Memory Channel インターコネクトを LAN インターコネクトに置き換える場合 (およびその逆の場合) は,クラスタをしばらくダウンさせる必要があります。同様に,ファースト・イーサネット LAN インターコネクトをギガビット・イーサネット LAN インターコネクトに置き換える場合 (およびその逆の場合) は,クラスタをダウンさせる必要があります。
LSM (Logical Storage Manager) を使えば,ストレージの透過的なミラーリングと高可用性アクセスを実現できます。しかし,地理的に分散したクラスタでは,LSM はデータ複製技術として適切ではありません。耐災害性システムでは,LAN または Memory Channel ベースのインターコネクトと LSM を使った構成はサポートされていません。代わりに,StorageWorks Data Replication Manager (DRM) ソリューションを使った構成がサポートされています。
Memory Channel インターコネクトは,クラスタのニーズに合わせて特別に設計されています。Memory Channel インターコネクトでは,ブロードキャストとクラスタ・メンバ間のポイント・ツー・ポイント接続の両方が可能です。
Memory Channel インターコネクトには,次のような機能があります。
クラスタ・メンバは,他のクラスタ・メンバとの間で高性能のメモリ・マップ接続を設定できます。その後,他のクラスタ・メンバは,Memory Channel インターコネクトからの転送を直接メモリにマッピングできます。このため,クラスタ・メンバは書き込み専用のウィンドウを,他のクラスタ・システムのメモリ内に確保できます。この接続による通常のメモリ転送は,非常に短い待ち時間 (3 〜 5 マイクロ秒) で完了します。
エラー・チェックが組み込まれていて,実質的に検出されないエラーが無いため,ソフトウェアのエラー検出メカニズム (チェックサムなど) を省略できます。エラーが検出される頻度は非常に低く,接続 1 つに対して,1 年に 1 エラー程度です。
高性能の相互に排他的なロック (スピンロックを使用) により,連携動作するアプリケーション間でのリソースの同期を制御します。
図 7-1
は,Memory Channel 転送の概略フローを示しています。
図 7-1: Memory Channel の論理図
各メンバ・システムの PCI スロットには,Memory Channel アダプタを取り付ける必要があります。これらのアダプタは,リンク・ケーブルで接続します。クラスタ内に 3 つ以上のメンバがある場合は,Memory Channel ハブも必要です。
Memory Channel の構成を冗長性のあるマルチレールにすると,信頼性と可用性がさらに高くなります。マルチレールにするには,各クラスタ・メンバに 2 つ目の Memory Channel アダプタと,そのアダプタを接続するためのリンク・ケーブルが必要です。クラスタ内に 3 つ以上のメンバがある場合は,2 つ目の Memory Channel ハブも必要です。
Memory Channel のマルチレール・モデルは,物理レールと論理レールという概念で動作します。物理レールは,ケーブルと Memory Channel アダプタが接続された Memory Channel ハブと,各ノードのアダプタ用の Memory Channel ドライバとして定義されます。論理レールは,1 つまたは 2 つの物理レールからなります。
1 つのクラスタでは,1 つ以上 (最大 4 つ) の論理レールを使用できます。論理レールは,次のようなスタイルで構成されます。
クラスタがシングルレールのスタイルで構成されている場合,物理レールと論理レールの間には 1 対 1 の関係があります。この構成には,フェイルオーバ機能がありません。物理レールに障害が発生すると,論理レールにも障害が発生します。この構成は,高可用性アプリケーションではなく,Memory Channel アプリケーション・プログラミング・インタフェース (API) ライブラリを使用する高性能のコンピューティング・アプリケーションで主に使用されます。
クラスタがフェイルオーバ・ペアのスタイルで構成されている場合,論理レールは,1 つがアクティブでもう 1 つが非アクティブの,2 つの物理レールからなります。アクティブな物理レールに障害が発生すると,フェイルオーバが発生して,非アクティブの物理レールが使用され,論理レールはフェイルオーバの後もアクティブなままです。このフェイルオーバは,ユーザには見えません。フェイルオーバ・ペアのスタイルは,マルチレール構成での省略時の設定です。
構成済みで利用可能な二次 Memory Channel インターコネクトがすべてのメンバ・システム上にあり,一次インターコネクトで次のいずれかの状態が発生すると,クラスタは 1 つの Memory Channel インターコネクトから別のインターコネクトへフェイルオーバします。
1 分間に 10 個を超えるエラーが記録された場合。
リンク・ケーブルが切断された場合。
ハブがオフになった場合。
フェイルオーバが完了すると,二次 Memory Channel インターコネクトが一次インターコネクトになります。当初一次であったインターコネクトの問題を修正するまでは,新たなインターコネクト・フェイルオーバは発生しません。
1 分間に発生した Memory Channel エラーが 10 個を超えるメンバ・システムがある場合,Memory Channel のエラー回復処理では,二次 Memory Channel インターコネクトがメンバ上に構成されているかどうかを次のように調べます。
二次 Memory Channel インターコネクトがすべてのメンバ・システム上にある場合,エラーを検出したメンバ・システムは一次 Memory Channel インターコネクトを不良とマークし,二次 Memory Channel インターコネクトにフェイルオーバするように,すべてのメンバ・システム (自分自身を含む) に指示します。
構成済みで利用可能な二次 Memory Channel インターコネクトがないメンバ・システムがある場合,エラーを検出したメンバ・システムは,Memory Channel のハードウェア・エラー限界値を超えたことを示すメッセージを表示して,パニック状態になります。
クラスタ内に Memory Channel インターコネクトを構成する方法についての詳細は,『クラスタ・ハードウェア構成ガイド』 を参照してください。
Memory Channel の API ライブラリは,Memory Channel API クラスタ・メンバ間の効率的なメモリ共用を実現します。このメモリ共用には,自動エラー処理,ロック処理,UNIX スタイルの保護機能が備わっています。Memory Channel API ライブラリについての詳細は,『クラスタ高可用性アプリケーション・ガイド』 を参照してください。
7.7 LAN インターコネクト
標準的な 100 Mb/秒 や 1000 Mb/秒の LAN で動作するイーサネット・アダプタ,スイッチ,またはハブであれば,LAN インターコネクトでもまず問題なく動作します。
注意
FDDI (Fiber Distributed Data Interface),LANE (ATM LAN Emulation),10 Mb/秒のイーサネットは,LAN インターコネクトではサポートされていません。
クラスタ LAN インターコネクトのイーサネット・ハードウェアには,次の条件が必要です。
LAN インターコネクトは,クラスタ・メンバ専用でなければなりません。 あるクラスタ・メンバの LAN インターコネクト・アダプタで送信されたパケットは,別のメンバの LAN インターコネクト・アダプタでのみ受信できます。
LAN インターコネクトは,2 つのクラスタ・メンバ間を全二重で直接接続するか,またはスイッチやハブ (どちらか一方のみ) を使って接続します。3 つ以上のメンバで構成されるクラスタ,およびメンバがクラスタ・インターコネクト・デバイスとして NetRAIN (redundant array of independent network adapters) の仮想インタフェースを使うクラスタでは,スイッチが 1 つ以上必要です。
注意
LAN インターコネクトのほとんどの構成ではハブとスイッチは置き換え可能ですが,性能とスケーラビリティの点でスイッチの使用をお勧めします。ハブは半二重モードで動作するため,LAN インターコネクトでハブを使用するとクラスタの性能が制限される可能性があります。さらに,ハブには LAN インターコネクトの二重化冗長構成に必要な機能がありません。そのため,3 つ以上のメンバで構成されるクラスタに対しては,LAN インターコネクトにハブではなくスイッチを使用した方が,スケーラビリティははるかに向上します。
100 Mb/秒または 1000 Mb/秒の全二重動作に対しては,アダプタ・ポートとスイッチ・ポートの互換性があるように構成する必要があります。
DE60x
ファミリのアダプタ (コンソール名の形式が
ei
x0
) または DEGPA-xx
アダプタと一緒にスイッチを使用する場合は,自動折衝をサポートするスイッチを使用してください。自動折衝が適切に行われない DE50x
ファミリのネットワーク・アダプタ (コンソール名の形式が
ew
x0
) と一緒にスイッチを使用する場合は,自動折衝の機能を無効にできるものを使用する必要があります。
完全に冗長性のある LAN インターコネクトで 2 つのスイッチを 2 本のクロス・ケーブルを使って接続すると,2 つ目のリンクによってルーティング・ループが形成されます。そのため,このループが原因で発生するパケット転送の問題を回避できるようにスイッチを構成する必要があります。以下に示すように,スイッチ間の並列リンクをサポートする方法は 3 つありますが,一般的なスイッチであれば,少なくともその 1 つを備えています。それらを有効な順に説明すると,以下のとおりです。
2 つのスイッチ間における複数の物理リンクを単一のリンクとして扱い,パケットのトラフィックを複数の物理リンク間で分散する。
2 つのスイッチ間における複数の物理リンクのうち,1 つのリンクをアクティブ・リンクとし,残りのリンクをスタンバイ・リンクにして,それらの間でフェイルオーバを行う。
スイッチ間に並列リンクがある場合は,そこに使われているスイッチ・ポートを通してルーティング・ループが形成されます。スパニング・ツリー・プロトコル (STP) は,こうしたループを避けるために有効です。しかし,メンバが単一のアダプタを使うか NetRAIN デバイスに含まれている複数のアダプタを使うかに関係なく,クラスタ・メンバに接続されているすべてのイーサネット・スイッチ・ポートで STP を無効にしておく必要があります。そうしなければ,クラスタ・メンバへブロードキャスト・メッセージが大量に送りつけられます。 その結果,クラスタはサービスを提供できなくなります。
どのクラスタ・メンバも,他のすべてのメンバとポイント・ツー・ポイントで接続している必要があります。あるメンバで LAN インターコネクトに使われているイーサネット・アダプタに障害が起こると,そのメンバは他のどのメンバとも通信できなくなります。あるメンバから来るインターコネクト・トラフィックを別のサブネットに転送するようにクラスタ・インターコネクトを構成することはできません。つまり,スイッチの機能をメンバ・システムに行わせることはできません。
2 つのクラスタ・メンバ間で使用できるスイッチは最大で 2 つです。 たとえば,通信衛星のアップリンクやワイド・エリア・ネットワーク (WAN) を LAN インターコネクト の 2 つの構成要素間のパスとして使うと,許容できないほど大きな遅延が発生するので,そのような接続は絶対に行わないでください。
LAN インターコネクトでは,Tru64 UNIX の機能 (lagconfig
コマンドを含む) を使ったイーサネット・アダプタのリンク集約を行えません。
管理を単純にするために,すべてのクラスタ・メンバで LAN インターコネクトのネットワーク・アダプタを対称に構成してください。他のネットワーク・アダプタについても,すべてのメンバで同じタイプのアダプタを同じ相対位置にインストールすれば,どのクラスタ・メンバでもアダプタの名前が同じようになります。相互接続した 2 つ以上のスイッチと NetRAIN 仮想インタフェースとをメンバの相互接続デバイスとして使った,完全に冗長性のある LAN インターコネクト構成では,すべてのメンバで,それぞれの NetRAIN にリストされている先頭のネットワーク・アダプタを最初のスイッチに,2 番目のネットワーク・アダプタを 2 番目のスイッチに,という具合に,同じ順序で接続してください。こうすることで,監視や保守を行う際にアダプタを簡単に識別することができます。また,クラスタが最初にブートする時,どのメンバのアクティブ・アダプタも同じスイッチに接続されます。LAN インターコネクトのすべてのアクティブ・アダプタが同じスイッチに接続するようにしておけば,障害が発生しても,クラスタのネットワークが分断がされないように保護することができます。詳細は,『クラスタ・ハードウェア構成ガイド』 を参照してください。