ノードがクラスタメンバーとして動作するためには、ノードに次のソフトウェアがインストールされていなければなりません。
Solaris ソフトウェア
Sun Cluster ソフトウェア
データサービスアプリケーション
ボリューム管理 (SolarisTM Volume Manager または VERITAS Volume Manager)
ただし、そのボックス自体のボリューム管理を使用する構成は例外です。 この構成では、ソフトウェアボリュームマネージャが必要ない場合があります。
図 3–2 は、Sun Cluster ソフトウェア環境を構成するソフトウェアコンポーネントの概要を示します。
データが破壊から保護されるように保証するには、すべてのノードが、クラスタメンバーシップに対して一定の同意に達していなければなりません。 必要であれば、CMM は、障害に応じてクラスタサービスのクラスタ再構成を調整します。
CMM は、クラスタのトランスポート層から、他のノードへの接続性に関する情報を受け取ります。 CMM は、クラスタインターコネクトを使用して、再構成中に状態情報を交換します。
CMM は、クラスタメンバーシップの変更を検出すると、それに合わせてクラスタを構成します。 この構成処理では、クラスタリソースが、クラスタの新しいメンバーシップに基づいて再配布されることがあります。
CMM は完全にカーネル内で動作します。
CCR は、CMM に依存して、定足数 (quorum) が確立された場合にのみクラスタが実行されるように保証します。 CCR は、クラスタ全体のデータの一貫性を確認し、必要に応じて復旧を実行して、データへの更新を容易にします。
クラスタファイルシステムは、次のコンポーネント間のプロクシです。
あるノード上のカーネルとそのノードが使用しているファイルシステム
そのディスク (1 つまたは複数) と物理的に接続されているノード上のボリュームマネージャ
クラスタファイルシステムでは、グローバルデバイス (ディスク、テープ、CD-ROM) が使用されます。 グローバルデバイスには、クラスタのどのノードからでも同じファイル名 (たとえば、/dev/global/) を使ってアクセスできます。 そのノードは、アクセスするストレージデバイスに物理的に接続されている必要はありません。 ユーザーは、グローバルデバイスを通常のデバイスと同じように使用できます。つまり、newfs や mkfs を使ってグローバルデバイスにファイルシステムを作成することができます。
クラスタファイルシステムには、次の機能があります。
ファイルのアクセス場所が透過的になります。 システムのどこにあるファイルでも、プロセスから開くことができます。 さらに、すべてのノードのプロセスから同じパス名を使ってファイルにアクセスできます。
クラスタファイルシステムは、ファイルを読み取る際に、ファイル上のアクセス時刻を更新しません。
一貫したプロトコルを使用して、ファイルが複数のノードから同時にアクセスされている場合でも、UNIX ファイルアクセス方式を維持します。
拡張キャッシュ機能とゼロコピーバルク入出力移動機能により、ファイルデータを効率的に移動することができます。
クラスタファイルシステムには、fcntl(2) インタフェースに基づく、高度な可用性を備えたアドバイザリファイルロッキング機能があります。 クラスタファイルシステムのファイルに対してアドバイザリファイルロッキング機能を使えば、複数のクラスタノードで動作するアプリケーションの間で、データのアクセスを同期化できます。 ファイルロックを所有するノードがクラスタから切り離されたり、ファイルロックを所有するアプリケーションに障害が発生すると、それらのロックはただちに解放されます。
障害が発生した場合でも、データへの連続したアクセスが可能です。 アプリケーションは、ディスクへのパスが有効であれば、障害による影響を受けません。 この保証は、raw ディスクアクセスとすべてのファイルシステム操作で維持されます。
クラスタファイルシステムは、使用しているボリューム管理ソフトウェアから独立しています。 クラスタファイルシステムでは、サポートされるすべてのオンディスクファイルシステムが広域になります。