スケーラブルコントローラでは、複数のアプリケーションを集中的に管理、制御し、情報の表示ができます。スケーラブルコントローラで「制御されるアプリケーション」は、スケーラブルアプリケーションと呼ばれます。
たとえば、スケーラブルコントローラを含む「制御するアプリケーション」をOnlineに切替えると、スケーラブルアプリケーションはコントローラのApplicationSequence属性に定義された順序でOnlineに切り替わります。制御するアプリケーションをOfflineに切替えると、スケーラブルアプリケーションは逆の順序でOfflineに切り替わります。同時に、スケーラブルコントローラの状態はスケーラブルアプリケーションの組み合わされた状態を反映し、この状態はGUIまたはhvdispコマンドによって表示することができます。
スケーラブルコントローラとスケーラブルアプリケーションは、複数の構成リソースを複合的に制御および管理する必要のある場合に便利です。このような構成はこれまで、複数のフォロータイプのコントローラを使って実装されてきました。しかし、スケーラブルコントローラを使用すると、非常に複雑で可用性の高い構成を構築し、1つの固まりとして扱うことが可能です。
スケーラブルアプリケーションとは、スケーラブルコントローラで制御される任意のアプリケーションを意味します。さまざまなスケーラブルアプリケーションが、同一ノードまたは異なるノード上で同時にOnlineの状態になる可能性があります。たとえば、Oracle RAC、Fujitsu Symfoware(Native) およびIBM DB2 PE (Parallel Edition) などの並列データベースはすべて、個別のインスタンスをクラスタ内の異なるノードで同時に実行する可能性のあるデータベースサーバです。データベースインスタンスのそれぞれに個別のアプリケーションが構成されます。最上位のアプリケーションが、すべてのアプリケーション (またはデータベースインスタンス) の監視および制御を行います。最上位のアプリケーションは「制御するアプリケーション」と呼ばれます。「データベースインスタンス」のアプリケーションは、「制御されるアプリケーション」と呼ばれます。このようなコンポーネントを、スケーラブルコントローラで「制御されるスケーラブルアプリケーション」として構成することにより、このコントローラからクラスタ内のサーバ全体にアクセスすることが可能になります。たしかにこれは商用データ処理では最もよく目にするスケーラブルアプリケーションです。ただし、同様の要件を持ついかなるアプリケーションでも同じように構成できます。
スケーラブルコントローラの主な利点は、親アプリケーションが動作するノードとは別のノードで子アプリケーションを実行できる (または実行しなければならない) 構成が可能な点です。さらに、並列データベースの場合など、アプリケーションが複数存在する場合の管理が簡単になります。
たとえば、Oracle RACを構成する場合には、各ノードにそれぞれ別のユーザアプリケーションを使用させる方法があります。各ユーザアプリケーションはノードごとに独立して管理されます。Oracle RACは共用アクセスデータベースであるため、クラスタ内で一部のインスタンスが動作していれば、データベース全体にアクセスできます。このためこの構成はOracle RACでは問題なく動作します。
しかし、IBM DB2 PEなどの非共用データベースでは、データベース全体のアクセスを可能にするにはデータベースのすべてのインスタンスをOnlineにする必要があります。従来のフォローコントローラを使用した場合、DB2 PEをサポートする構成は、複数のアプリケーションと依存関係が必要となります。スケーラブルコントローラを使用すれば、このような構成の構築はもっと単純になります。
複数のノードに跨る複数のアプリケーションや、アプリケーション間の依存関係をサポートするため、さまざまな構成オプションが用意されています。以下のセクションでは、スケーラブルコントローラについてより詳しく説明します。
Scalableというコントローラの属性は、スケーラブルな子アプリケーションを制御します。コントローラのScalable属性が1に設定された場合、Resource属性で指定されたすべてのアプリケーションは、スケーラブルアプリケーションと見なされます。
ある子アプリケーションを制御できるのは、1つのスケーラブルコントローラのみです。子アプリケーションが複数の親コントローラに関連付けられることはできません。あるアプリケーションが複数のスケーラブルコントローラを含む場合があります。アプリケーションがスケーラブルコントローラを複数もつことに制限はありません。ただし、使用するアプリケーションウィザードによっては、RMS Wizard Toolsでの構成時の選択肢が制約される場合があります。
次の図は、一般的なスケーラブルコントローラの属性を示すCluster Admin Viewです。
図2.5 スケーラブルコントローラの属性
上の図に示すスケーラブルコントローラの属性の一部は、RMS Wizard Toolsインタフェースで設定できます。これらの属性は、本例では次のように設定されています (図中の上から下)。
MonitorOnly=0
Resource=<アプリケーションのリスト>
ApplicationSequence=<Resource属性に定義されたアプリケーションの起動順番>
ScriptTimeout=180
FaultScript=<スクリプト定義>
StateChangeScript=<スクリプト定義>
スケーラブル運用に影響する他の属性は、スケーラブルコントローラの構成時にRMS Wizard Toolsによって自動設定されます。
切替え処理および状態遷移における一部の属性の影響については、以下のセクションで説明します。