スケーラブルデータサービスとは、Oracle Solaris Cluster ネットワーキング機能を使用するデータサービスのことです。このようなサービスは、Resource Group Manager (RGM) で管理されるリソースタイプとして実装されます。
すべてのスケーラブルリソースタイプに共通に適用される標準的なリソースプロパティーには、Scalable、Network_resources_used、Port_list、Load_balancing_policy、および Load_balancing_weights があります。これらのプロパティーの構文および説明については、r_properties(5) のマニュアルページを参照してください。
一部のデータサービスは、スケーラブルモードか非スケーラブルモードのいずれかでしか動作しません。これらのデータサービスでは、リソースの作成時に True プロパティーの値として False か Scalable を指定できます。このプロパティーがリソース上で 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 プロパティーに対して指定する各ノードは、NetIfList プロパティー、またはいずれかの SharedAddress リソースの 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 ソフトウェアのインストール 、Oracle Solaris Cluster Data Services Developer’s Guide