スケーラブルデータサービスとは、Oracle Solaris Cluster ネットワーキング機能を使用するデータサービスのことです。このようなサービスは、Resource Group Manager (RGM) で管理されるリソースタイプとして実装されます。
すべてのスケーラブルリソースタイプに共通に適用される標準的なリソースプロパティーには、Scalable、Network_resources_used、Port_list、Load_balancing_policy、および Load_balancing_weights があります。これらのプロパティーの構文および説明については、r_properties(5) のマニュアルページを参照してください。
一部のデータサービスは、スケーラブルモードか非スケーラブルモードのいずれかでしか動作しません。これらのサービスでは、リソースの作成時に Scalable プロパティーとして True または False の値を指定できます。このプロパティーがリソース上で True に設定されている場合、そのリソースは「スケーラブルモード」になっているとみなされます。次に、そのリソースをスケーラブルモードのリソースグループ (つまり、Maximum_primaries プロパティーを 1 よりも大きい値に設定できるグループ) に含める必要があります。
スケーラブルモードでのみ動作できるデータサービスの場合、Scalable プロパティーはこのタイプのリソースに対して暗黙に True であり、管理者が変更することはできません。
Load_balancing_weights および Port_list プロパティーは、リソースがオンラインである場合を含め、いつでも変更できます。Network_resources_used および Load_balancing_policy はリソースの作成時に設定され、このあとにこれらのプロパティーを編集できません。そのリソースタイプがどのように実装されているかによって、これらのプロパティーにデフォルト値が設定されている場合もあれば、リソースの作成時に値を指定する必要がある場合もあります。
特定のノードで動作するスケーラブルサービスインスタンスは、パブリックネットワークを介してクライアントに応答できる必要があります。RGM は、スケーラブルサービスが動作するノードでのパブリックネットワークの状態を自動的にモニターし、特定のノードでパブリックネットワークがアクセス不能になると、そのノードで動作するスケーラブルサービスインスタンスを停止します。clresource unmonitor コマンドを使用してスケーラブルリソースのモニタリングを無効にすると、これらのネットワークチェックは無効になります。
Scalable に設定された True リソースプロパティーが作成または更新されると、RGM はさまざまなプロパティーを検証し、これらのプロパティーの構成が正しくなければ更新を実行しません。この検査の一部には次のようなものがあります。
Network_resources_used プロパティーは未設定のままにしないでください。このプロパティーには、既存の SharedAddress リソースの名前を含める必要があります。スケーラブルリソースを含むリソースグループの Nodelist プロパティーに指定するノードはすべて、いずれかの SharedAddress リソースの NetIfList プロパティーまたは AuxNodeList プロパティーのどちらかに含まれている必要があります。
スケーラブルリソースを含むリソースグループの RG_dependencies プロパティーは、そのスケーラブルリソースの Network_resources_used プロパティーにリストされているすべての SharedAddress リソースのリソースグループを含むように設定されている必要があります。
Port_list プロパティーは未設定のままにしないでください。このプロパティーには、ポートとプロトコルの組み合わせが列挙されている必要があります。その場合、プロトコルは、tcp、tcp6、udp、または udp6 のいずれかになります。指定可能なプロトコルには、TCP IPv4 のみの場合は tcp、TCP IPv4 と TCP IPv6 の両方の場合は tcp6、UDP IPv4 のみの場合は udp、UDP IPv4 と UDP IPv6 の両方の場合は udp6 が含まれます。
たとえば、Port_list=80/tcp,40/udp を指定できます。
IP アフィニティーにより、特定のクライアント IP アドレスからの接続はすべて同じクラスタノードに転送されるようになります。Affinity_timeout、UDP_affinity、および Weak_affinity は、Load_balancing_policy が Lb_sticky または Lb_sticky_wild のどちらかに設定されている場合にのみ有効です。詳細は、r_properties(5) を参照してください。
clresource(1CL)、clresourcegroup(1CL)、clresourcetype(1CL)、rt_callbacks(1HA)、rt_reg(4)、r_properties(5)
Oracle Solaris Cluster 4.3 ソフトウェアのインストール , Oracle Solaris Cluster Data Services Developer’s Guide