ページの先頭行へ戻る
PRIMECLUSTER  RMS 導入運用手引書 4.7

1.2.1 ユーザ業務、資源、オブジェクト

RMSは、実際のクラスタ構成を仮想化し、RMS構成で表現します。RMS構成では、各マシン、アプリケーション、システム資源がオブジェクトとして表され、オブジェクトおよびオブジェクトの集合はそれぞれの依存関係に従ってツリー構造で表示されます。たとえば、ユーザアプリケーションが、ネットワークインタフェースとファイルシステムに依存して動作している場合を考えてみます。ツリー構造では、対応するアプリケーションオブジェクトが親として表現され、ネットワークオブジェクトおよびファイルシステムオブジェクトが子として表現されます。ツリー構造は通常、「RMSグラフ」と呼ばれます。

RMSグラフの各オブジェクトは、必須パラメタとともにそのオブジェクトの状態情報も持っています。オブジェクトの状態は主に Online (有効、使用可能) かOffline (無効、使用不可) です。RMSが提供する状態の一覧は、"付録B 状態"を参照してください。

運用中、構成はRMSベースモニタによって管理されます。RMSベースモニタは、オブジェクトの状態に変化があった場合やタイムアウト、(指定された一定時間オブジェクトの状態に変化がなかった場合)に対応する処理を開始します。

ノードとハートビート

クラスタを構成するマシンは、ノードと呼ばれます。RMSがノードの状態を監視する際に最も優先して検出するのは、ノードもしくはRMSベースモニタが障害によって完全に停止しているかどうかです。応答速度の低下は、システムの過負荷によって生じている可能性がありますが、最優先の検出項目ではありません。RMSは障害の検出にハートビートとELMの2種類の方法を採用しています。

詳細は"2.2 RMSハートビート"を参照してください。

ディテクタ

ディテクタは、RMS構成に定義された個々の物理的資源と論理的資源の状態を監視し、RMSベースモニタプロセスに通知するプロセスです。RMSは状態の通知を解釈して該当する仮想オブジェクトの状態を判断します。オブジェクトの状態に変化が生じた場合、RMSはそのオブジェクトに指定されたパラメタに対応した処理を実行します。オブジェクトごとに個別のディテクタを対応づけることができます。

RMSがクラスタノード上で起動されると、RMS構成に定義されたディテクタを起動します。ディテクタは通常、RMSが停止されるまで動作を継続します。RMSはシステムの異常が発生した場合にディテクタの再起動を行います。

ディテクタがベースモニタに通知する状態およびユーザインタフェースに表示される状態については、この章で後ほどまとめて説明します。

スクリプト

各オブジェクトには複数のスクリプトが関連付けられています。これらのスクリプトはシェルスクリプトです。それぞれのスクリプトは通常、ユーザアプリケーションや物理資源などに対して相互に作用するよう記載されます。

スクリプトにはリアクティブ型とプロアクティブ型があります。リアクティブ型のスクリプトは、発生した状態遷移に対応してRMSがどのような処理を行うかを定義しています。一方、プロアクティブ型のスクリプトは、RMSが各オブジェクトを制御するために行うべき処理を定義しています。たとえば、RMSは、OnlineからOfflineへ資源が状態遷移したことを通知されると、それに反応して、あるスクリプトを実行しますが、RMS側からまずスクリプトを実行することによって、資源の状態を強制的にOfflineにすることもあります。

スクリプトは、指定された処理が完了すると動作を停止し、RMSベースモニタに終了コードを返します。

RMSオブジェクトに指定できるスクリプトについては、この章で後ほどまとめて説明します。

オブジェクトタイプ

RMS高可用性アプリケーションのほとんどは、ネットワークインタフェース、ファイルシステム、仮想ディスクなどの物理資源をgResourceオブジェクトとして表します。gResourceオブジェクトのほとんどは、自らのOnline化、Offline化を制御するスクリプトを保持しています。

オペレーティングシステム環境で実行される実際のアプリケーションは、RMS内部では、userApplicationオブジェクトとして扱われます。実際のアプリケーションが使用している一連のgResourceオブジェクトは、依存オブジェクトと呼ばれます。userApplicationとそのすべての依存オブジェクトをOnlineにすることを、オンライン処理といいます。userApplicationとそのすべての依存オブジェクトをOfflineにすることを、オフライン処理といいます。

高可用性構成で、ユーザ業務を実行するノードは、 SysNodeオブジェクトとして表現されます。gResourceオブジェクトおよびuserApplicationオブジェクト同様、SysNodeオブジェクトもOnline化とOffline化が可能でディテクタとスクリプトを保持しています。しかし、対応する実際のノードの起動と停止は、スクリプト処理だけでは実行できません。

RMS Wizard ToolsがサポートするRMSオブジェクトタイプの一覧は"付録C オブジェクトタイプ" を参照してください。

シャットダウン機構 (SF)

シャットダウン機構は、クラスタ内の各ノードに対して強制停止指示を発します。SysNodeオブジェクトをOfflineにする必要が生じた場合、RMSはSFを使用して対応するノードの強制停止を指示します。RMSはノードの停止処理が完了するのを待ってから、userApplicationを別のSysNodeに切替えます。これにより、ユーザ業務が2つのノードで同時に実行されることを防止し、データの整合性を保証します。

シャットダウン機構の詳細については、ご使用のオペレーティングシステムの“PRIMECLUSTER Cluster Foundation導入運用手引書”を参照してください。