Sun Cluster データサービスの計画と管理 (Solaris OS 版)

リソースのプロパティ

この節では、Sun Cluster で定義されているリソースプロパティについて説明します。プロパティ値は、次のように分類されます (「カテゴリ」の後)。

調整は、次のように、リソースプロパティを更新できるかどうか、および、いつ更新できるかを示します。

NONE または FALSE

Never 

TRUE または ANYTIME

任意の時点 (Anytime) 

AT_CREATION

リソースをクラスタに追加するとき 

WHEN_DISABLED

リソースが無効なとき 

最初にプロパティ名が表示され、次に説明が表示されます。

Affinity_timeout (integer )

リソース内のサービスのクライアント IP アドレスからの接続は、この時間 (秒数) 内に同じサーバーノードに送信されます。

このプロパティは、Load_balancing_policyLb_sticky または Lb_sticky_wild の場合にかぎり有効です。さらに、Weak_affinityFALSE (デフォルト値) に設定されている必要があります。

このプロパティは、スケーラブルサービス専用です。

カテゴリ:

オプション

初期値:

デフォルトなし

調整:

ANYTIME

Cheap_probe_interval (integer )

リソースの即時障害検証の呼び出しの間隔 (秒数)。このプロパティは RGM によって作成されます。RTR ファイルに宣言されている場合にかぎり、管理者は使用を許可されます。

RTR ファイル内でデフォルト値が指定されている場合、このプロパティは任意です。Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は WHEN_DISABLED になります。

RTR ファイル内で宣言され、Default 属性が指定されていない場合、このプロパティは必須になります。

カテゴリ:

条件付き

初期値:

デフォルトなし

調整:

WHEN_DISABLED

拡張プロパティ

そのリソースのタイプの RTR ファイルで宣言される拡張プロパティ。リソースタイプの実装によって、これらのプロパティを定義します。拡張プロパティに設定可能な各属性については、「リソースプロパティの属性」を参照してください。

カテゴリ:

条件付き

初期値:

デフォルトなし

調整:

特定のプロパティに依存

Failover_mode (enum)

開始メソッド (Prenet_start または Start) が失敗した場合、NONESOFT、および HARD はフェイルオーバーの動作だけに影響します。しかし、リソースが正常に起動した場合、 NONESOFT 、および HARD は、これ以降にリソースモニターが scha_control(1HA) または scha_control(3HA) で発行したリソースの再起動またはギブオーバーの動作には影響しません。NONE (デフォルト) は、メソッドが失敗した場合に、RGM がリソースの状態を設定し、ユーザーが介入するまで待機することを示します。SOFT は、Start メソッドが失敗した場合に、RGM がリソースグループを異なるノードに移動することを示します。Stop メソッドまたは Monitor_stop メソッドが失敗した場合、RGM はリソースをStop_failed 状態に設定して、リソースグループを Error_stop_failed 状態に設定します。その後、RGM はユーザーが介入するまで待機します。Stop メソッドまたは Monitor_stop メソッドが失敗した場合、NONESOFT は同じです。HARD は、Start メソッドが失敗した場合に、RGM がグループを移動することを示します。Stop メソッドまたは Monitor_stop メソッドが失敗した場合、RGM はクラスタノードを中断して、リソースを停止します。Start メソッドまたは Prenet_start メソッドが失敗した場合、HARDNONE、および SOFT はフェイルオーバーの動作に影響します。

NONESOFT、および HARD とは異なり、RESTART_ONLY および LOG_ONLY はすべてのフェイルオーバーの動作に影響します (モニターが scha_control で発行したリソースとリソースグループの再起動、および、リソースモニターが scha_control で起動したギブオーバーを含む)。RESTART_ONLY は、モニターが scha_control でリソースを再起動できることを示します。しかし、これ以降に scha_control で発行したリソースグループの再起動またはギブオーバーは失敗します。このとき、RGM は Retry_interval 内に Retry_count 回の再起動を許可します。Retry_count を超えた場合、リソースの再起動は許可されません。Failover_modeLOG_ONLY に設定されている場合、リソースの再起動またはギブオーバーは許可されません。 Failover_modeLOG_ONLY に設定することは、 Failover_modeRESTART_ONLY に設定し、 Retry_count をゼロに設定することと同じです。開始メソッドが失敗した場合、RESTART_ONLY および LOG_ONLYNONE と同じです。つまり、フェイルオーバーは発生せず、リソースは Start_failed 状態になります。

カテゴリ:

オプション

初期値:

デフォルトなし

調整:

ANYTIME

Load_balancing_policy (string )

使用する負荷均衡ポリシーを定義する文字列。このプロパティは、スケーラブルサービス専用です。RTR ファイルに Scalable プロパティが宣言されている場合、RGM は自動的にこのプロパティを作成します。Load_balancing_policy には次の値を設定できます。

Lb_weighted (デフォルト)。Load_balancing_weights プロパティで設定されているウエイトに従って、さまざまなノードに負荷が分散されます。

Lb_sticky。スケーラブルサービスの指定のクライアント (クライアントの IP アドレスで識別される) は、常に同じクラスタノードに送信されます。

Lb_sticky_wild。指定のクライアントの IP アドレスは、ワイルドカードスティッキーサービスの IP アドレスに接続され、IP アドレスが着信したポート番号とは無関係に、常に同じクラスタノードに送信されます。

カテゴリ:

条件付き/任意

初期値:

Lb_weighted

調整:

AT_CREATION

Load_balancing_weights (string_array )

このプロパティは、スケーラブルサービス専用です。RTR ファイルに Scalable プロパティが宣言されている場合、RGM は自動的にこのプロパティを作成します。形式は、「weight@node,weight@node」になります。ここで、weight は、指定したノード (node) に対する負荷分散の相対的な割り当てを示す整数になります。ノードに分散される負荷の割合は、すべてのウエイトの合計でこのノードのウエイトを割った値になります。たとえば、1@1,3@2 は、ノード 1 が負荷の 1/4 を受け取り、ノード 2 が 3/4 を受け取ることを指定します。空の文字列 (“”) は、負荷を均一に分散することを意味します (デフォルト)。明示的にウエイトを割り当てられていないノードのウエイトは、デフォルトで 1 になります。

Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は ANYTIME (任意の時点) になります。このプロパティを変更すると、新しい接続時にのみ分散が変更されます。

カテゴリ:

条件付き/任意

初期値:

空の文字列 (“”)

調整:

ANYTIME

各コールバックメソッドの method_timeout (integer)

RGM がメソッドの呼び出しに失敗したと判断するまでの時間 (秒)。

カテゴリ:

条件付き/任意

初期値:

RTR ファイルにメソッド自体が宣言されている場合は 3,600 (1 時間)

調整:

ANYTIME

Monitored_switch (enum)

クラスタ管理者が管理ユーティリィティを使用してモニターを有効または無効にすると、RGM によって Enabled または Disabled に設定されます。Disabled に設定されると、再び有効に設定されるまで、モニターは Start メソッドを呼び出しません。リソースが、モニターのコールバックメソッドを持っていない場合は、このプロパティは存在しません。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

Never

Network_resources_used (string_array )

リソースが使用する論理ホスト名または共有アドレスネットワークリソースのリスト。スケーラブルサービスの場合、このプロパティは別のリソースグループに存在する共有アドレスリソースを参照する必要があります。フェイルオーバーサービスの場合、このプロパティは同じリソースグループに存在する論理ホスト名または共有アドレスを参照します。RTR ファイルに Scalable プロパティが宣言されている場合、RGM は自動的にこのプロパティを作成します。Scalable が RTR ファイルで宣言されていない場合、Network_resources_used は RTR ファイルで明示的に宣言されていない限り使用できません。

Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は AT_CREATION になります。


注 –

このプロパティを CRNP 向けに設定する方法については、SUNW.Event(5) のマニュアルページを参照してください。


カテゴリ:

条件付き/必須

初期値:

デフォルトなし

調整:

AT_CREATION

各クラスタノード上の Num_resource_restarts (整数)

このプロパティは、RGM によって、このノード上のこのリソースに対して過去 n 秒以内に行われた scha_control Resource_restart、または Resource_is_restarted の呼び出し回数に設定されるため、直接は設定できません。ここで、n はリソースの Retry_interval プロパティの値です。このリソースが scha_control ギブオーバーを実行した場合、ギブオーバーが成功または失敗したかに関わらず、リソースの再起動カウンタは RGM によってゼロにリセットされます。

リソース型が Retry_interval プロパティを宣言していない場合、この型のリソースに Num_resource_restarts プロパティを使用できません。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

いいえ

各クラスタノード上の Num_rg_restarts (integer)

このプロパティは、RGM によって、このノード上のこのリソースに対して過去 n 秒以内に行われた scha_control Restart の呼び出し回数に設定されるため、直接は設定できません。ここで、n はリソースの Retry_interval プロパティの値です。リソース型が Retry_interval プロパティを宣言していない場合、この型のリソースに Num_resource_restarts プロパティを使用できません。

カテゴリ:

説明を参照

初期値:

デフォルトなし

調整:

いいえ

On_off_switch (enum)

クラスタ管理者が管理ユーティリィティを使用してリソースを有効または無効にすると、RGM によって Enabled または Disabled に設定されます。無効にした場合、リソースはオフラインになり、もう一度有効にするまで、コールバックは呼び出されません。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

Never

Port_list (string_array)

サーバーが待機するポートの番号リストです。各ポート番号の後ろには、スラッシュ (/) とそのポートが使用しているプロトコルが続きます (たとえば、Port_list=80/tcp または Port_list=80/tcp6,40/udp6)。指定できるプロトコル値は次のとおりです。

  • tcp (TCP IPv4 の場合)

  • tcp6 (TCP IPv6 の場合)

  • udp (UDP IPv4 の場合)

  • udp6 (UDP IPv6 の場合)

Scalable プロパティが RTR ファイルで宣言されている場合、RGM は自動的に Port_list を作成します。それ以外の場合、このプロパティは RTR ファイルで明示的に宣言されていないかぎり使用できません。

このプロパティを Apache 用に設定する方法については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』を参照してください。

カテゴリ:

条件付き/必須

初期値:

デフォルトなし

調整:

AT_CREATION

R_description (string)

リソースの簡単な説明。

カテゴリ:

オプション

初期値:

空の文字列

調整:

ANYTIME

Resource_dependencies (string_array )

このリソースが強い依存関係を持っている同じまたは異なるグループ内のリソースのリスト。このリスト内の任意のリソースがオンラインでない場合、このリソースは起動できません。このリソースとリスト内のリソースの 1 つが同時に起動する場合、RGM は、リスト内のリソースが起動するまで待機してから、このリソースを起動します。このリソースの Resource_dependencies リスト内のリソースが起動しない場合、このリソースもオフラインのままになります。リスト内のリソースのリソースグループがオフラインのままであるか、リスト内のリソースが Start_failed 状態である場合、このリソースのリスト内のリソースは起動しない可能性があります。強い依存関係を持っている異なるリソースグループ内のリソースが起動に失敗したために、このリソースがオフラインのままである場合、このリソースのリソースグループは Pending_online_blocked 状態に入ります。

このリソースとリスト内の複数のリソースが同時にオフラインになる場合、このリソースはリスト内のリソースより前に停止します。しかし、このリソースがオンラインのままであったり、停止に失敗した場合でも、リスト内の異なるリソースグループのリソースは停止できます。このリソースが先に無効にならなければ、リスト内のリソースは無効にできません。

デフォルトでは、リソースグループ内では、アプリケーションのリソースはネットワークアドレスリソースに対して、暗黙的に強いリソースの依存関係を持っています。詳細については、「リソースグループのプロパティ」Implicit_network_dependencies を参照してください。

リソースグループ内では、Prenet_start メソッドは Start メソッドより前に、依存関係順に実行されます。Postnet_stop メソッドは Stop メソッドより後に、依存関係順に実行されます。異なるリソースグループでは、依存しているリソースは、依存されているリソースが Prenet_start および Start を実行するまで待機してから、Prenet_start を実行します。依存されているリソースは、依存しているリソースが Stop および Postnet_stop を終了するまで待機してから、Stop を実行します。

カテゴリ:

オプション

初期値:

空のリスト

調整:

ANYTIME

Resource_dependencies_restart ( string_array)

このリソースが再起動の依存関係を持っている同じまたは異なるグループ内のリソースのリスト。

このプロパティの動作は Resource_dependencies と似ていますが、再起動の依存関係リスト内にある任意のリソースが再起動した場合、このリソースは再起動されます。リスト内のリソースがオンラインに戻った後、このリソースは再起動されます。

カテゴリ:

オプション

初期値:

空のリスト

調整:

ANYTIME

Resource_dependencies_weak ( string_array)

このリソースが弱い依存関係を持っている同じまたは異なるグループ内のリソースのリスト。弱い依存関係は、メソッドが呼び出される順序を決定します。RGM は、このリスト内のリソースの Start メソッドを呼び出してから、このリソースの Start メソッドを呼び出します。そして、RGM は、このリソースの Stop メソッドを呼び出してから、このリスト内のリソースの Stop メソッドを呼び出します。リスト内のリソースが起動に失敗した場合でも、このリソースは起動できます。

このリソースとその Resource_dependencies_weak リスト内のリソースが同時に起動する場合、RGM は、リスト内のリソースが起動するまで待機してから、このリソースを起動します。リスト内のリソースが起動しない場合 (たとえば、リスト内のリソースのリソースグループがオフラインのままであったり、リスト内のリソースが Start_failed 状態である場合)、このリソースは起動します。このリソースの Resource_dependencies_weak リスト内のリソースが起動すると、このリソースのリソースグループは一時的に Pending_online_blocked 状態に入ることがあります。リスト内のすべてのリソースが起動したとき、あるいは、起動に失敗したとき、このリソースとそのリソースグループは再び Pending_online 状態に入ります。

このリソースとリスト内の複数のリソースが同時にオフラインになる場合、このリソースはリスト内のリソースより前に停止します。このリソースがオンラインのままであったり、停止に失敗した場合でも、リスト内のリソースは停止できます。このリソースを無効にするまで、リスト内のリソースは無効にできません。

リソースグループ内では、Prenet_start メソッドは Start メソッドより前に、依存関係順に実行されます。Postnet_stop メソッドは Stop メソッドより後に、依存関係順に実行されます。異なるリソースグループでは、依存しているリソースは、依存されているリソースが Prenet_start および Start を実行するまで待機してから、Prenet_start を実行します。依存されているリソースは、依存しているリソースが Stop および Postnet_stop を終了するまで待機してから、Stop を実行します。

カテゴリ:

オプション

初期値:

空のリスト

調整:

ANYTIME

Resource_name (string)

リソースインスタンスの名前です。この名前はクラスタ構成内で一意にする必要があります。リソースが作成されたあとで変更はできません。

カテゴリ:

必須

初期値:

デフォルトなし

調整:

Never

Resource_project_name (string )

リソースに関連付けられた Solaris プロジェクト名。このプロパティは、CPU の共有、クラスタデータサービスのリソースプールといった Solaris のリソース管理機能に適用できます。RGM は、リソースをオンラインにすると、このプロジェクト名を持つ関連プロセスを起動します。このプロパティが指定されていない場合、プロジェクト名は、リソースが属しているリソースグループの RG_project_name プロパティから取得されます。rg_properties(5) を参照してください。どちらのプロパティも指定されなかった場合、RGM は事前定義済みのプロジェクト名 default を使用します。プロジェクトデータベース内に存在するプロジェクト名を指定する必要があります。また、root ユーザーは、このプロジェクトのメンバーとして構成されている必要があります。このプロパティは、Solaris 9 以降のバージョンでのみサポートされます。


注 –

このプロパティの変更は、このリソースが次回起動されるときに有効になります。


カテゴリ:

オプション

初期値:

Null

調整:

ANYTIME

各クラスタノードの Resource_state (enum)

RGM が判断した各クラスタノード上のリソースの状態。使用可能な状態は、OnlineOfflineStart_failedStop_failedMonitor_failedOnline_not_monitoredStarting、および Stopping です。

ユーザーはこのプロパティを構成できません。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

Never

Retry_count (integer)

起動に失敗したリソースをモニターが再起動する回数です。このプロパティは RGM によって作成されます。RTR ファイルに宣言されている場合にかぎり、管理者は使用を許可されます。デフォルト値が RTR ファイルに指定されている場合、Retry_count は任意です。

Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は WHEN_DISABLED になります。

RTR ファイル内で宣言され、Default 属性が指定されていない場合、このプロパティは必須になります。

カテゴリ:

条件付き

初期値:

デフォルトなし

調整:

WHEN_DISABLED

Retry_interval (integer)

失敗したリソースを再起動するまでの秒数。リソースモニターは、このプロパティと Retry_count を組み合わせて使用します。このプロパティは RGM によって作成されます。RTR ファイルに宣言されている場合にかぎり、管理者は使用を許可されます。デフォルト値が RTR ファイルに指定されている場合、Retry_interval は任意です。

Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は WHEN_DISABLED になります。

RTR ファイル内で宣言され、Default 属性が指定されていない場合、このプロパティは必須になります。

カテゴリ:

条件付き

初期値:

デフォルトなし

調整:

WHEN_DISABLED

Scalable (boolean)

リソースがスケーラブルであるかどうか、つまり、リソースが Sun Cluster のネットワーキング負荷分散機能を使用するかどうかを表します。

このプロパティが RTR ファイルで宣言されている場合は、そのタイプのリソースに対して、RGM は、次のスケーラブルサービスプロパティを自動的に作成します。つまり、 Affinity_timeoutLoad_balancing_policyLoad_balancing_weightsNetwork_resources_usedPort_listUDP_affinity、および Weak_affinity です。これらのプロパティは、RTR ファイル内で明示的に宣言されない限り、デフォルト値を持ちます。RTR ファイルに Scalable が宣言されている場合、このプロパティのデフォルトは TRUE です。

RTR ファイルにこのプロパティが宣言されている場合、AT_CREATION 以外の Tunable 属性の割り当ては許可されません。

RTR ファイルにこのプロパティが宣言されていない場合、このリソースはスケーラブルではないため、このプロパティを調整することはできません。RGM は、スケーラビブルサービスプロパティをいっさい設定しません。ただし、Network_resources_used および Port_list プロパティは、スケーラブルサービスでも非スケーラブルサービスでも有用であるため、RTR ファイルに明示的に宣言できます。

このリソースプロパティと Failover リソースタイププロパティの組み合わせと、その説明は次のとおりです。

このリソースプロパティを Failover リソースタイププロパティと組み合わせて使用する方法の詳細については、r_properties(5) を参照してください。

カテゴリ:

オプション

初期値:

デフォルトなし

調整:

AT_CREATION

各クラスタノードの Status ( enum)

リソースモニターが scha_resource_setstatus(1HA) または scha_resource_setstatus(3HA) で設定します。指定可能な値は、 OKdegradedfaultedunknown、および offline です。リソースがオンラインまたはオフラインになったとき、RGM は自動的に Status 値を設定します (Status 値をリソースのモニターまたはメソッドが設定していない場合)。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

Never

各クラスタノードの Status_msg ( string)

リソースモニターによって、Status プロパティと同時に設定されます。リソースがオンラインまたはオフラインになったとき、RGM は自動的にこのプロパティを空の文字列にリセットします (このプロパティをリソースのメソッドが設定していない場合)。

カテゴリ:

照会のみ

初期値:

デフォルトなし

調整:

Never

Thorough_probe_interval ( integer)

高オーバーヘッドのリソース障害検証の呼び出し間隔 (秒)。このプロパティは RGM によって作成されます。RTR ファイルに宣言されている場合にかぎり、管理者は使用を許可されます。デフォルト値が RTR ファイルに指定されている場合、Thorough_probe_interval は任意です。

Tunable 属性がリソースタイプファイルに指定されていない場合は、プロパティの Tunable 値は WHEN_DISABLED になります。

RTR ファイルのプロパティ宣言内に Default 属性が指定されていない場合、このプロパティは必須です。

カテゴリ:

条件付き

初期値:

デフォルトなし

調整:

WHEN_DISABLED

Type (string)

このリソースがインスタントであるリソースタイプ。

カテゴリ:

必須

初期値:

デフォルトなし

調整:

Never

Type_version (string)

現在このリソースに関連付けられているリソース型のバージョンを指定します。このプロパティは RTR ファイル内に宣言できません。したがって、RGM によって自動的に作成されます。このプロパティの値は、リソースタイプの RT_version プロパティと等しくなります。リソースの作成時、Type_version プロパティはリソースタイプ名の接尾辞として表示されるだけで、明示的には指定されません。リソースを編集すると、Type_version の値が変更されます。

このプロパティの調整は次のソースから継承されます。

  • 現在のリソースタイプのバージョン

  • RTR ファイル内の #$upgrade_from ディレクティブ

カテゴリ:

説明を参照

初期値:

デフォルトなし

調整:

説明を参照

UDP_affinity (boolean)

true の場合、指定のクライアントからの UDP トラフィックはすべて現在クライアントの TCP トラフィックを処理しているサーバーノードに送信されます。

このプロパティは、Load_balancing_policyLb_sticky または Lb_sticky_wild の場合にかぎり有効です。さらに、Weak_affinityFALSE (デフォルト値) に設定されている必要があります。

このプロパティは、スケーラブルサービス専用です。

カテゴリ:

オプション

初期値:

デフォルトなし

調整:

WHEN_DISABLED

Weak_affinity (boolean)

true の場合、弱い形式のクライアントアフィニティが有効になります。弱い形式のクライアントアフィニティは、1 つのクライアントから複数の接続を同じサーバーノードに送信することを許可します。ただし、次の状態の場合を除きます。

  • サーバーのリスナーが起動するのは、たとえば、障害モニターが再起動したとき、リソースがフェイルオーバーまたはスイッチオーバーしたとき、あるいは、ノードが障害の後にクラスタに参加し直したときです。

  • 管理アクションによるスケーラブルリソースの Load_balancing_weights の変更時

弱いアフィニティはメモリーの消費とプロセッササイクルの点で、デフォルトの形式よりもオーバーヘッドを低く抑えられます。

このプロパティは、Load_balancing_policyLb_sticky または Lb_sticky_wild の場合にかぎり有効です。

このプロパティは、スケーラブルサービス専用です。

カテゴリ:

オプション

初期値:

デフォルトなし

調整:

WHEN_DISABLED