付録C HA リソースの動作

本付録は HA リソースの一般的な動作を説明しています。ここでは、HA サービスの設定に役立つ補足的な情報を提供することが目的です。パラメーターを設定するには、luci を使用するか、/etc/cluster/cluster.conf を編集します。HA リソースパラメーターの詳細については、付録B HA リソースパラメーター を参照してください。リソースエージェントをさらに詳しく理解するには、任意のクラスターノードの /usr/share/cluster にあるリソースエージェントを参照してください。

注記

本付録内の情報を完全に把握するには、リソースエージェントとクラスター設定ファイル、/etc/cluster/cluster.conf を詳しく理解していただく必要が場合があります。
HA サービスは一貫したエンティティに設定されているクラスターリソースのグループであり、クライアントに特殊化したサービスを提供します。HA サービスは、(各クラスターノード内の) /etc/cluster/cluster.conf クラスター設定ファイルでリソースツリーとして表示されます。クラスター設定ファイルでは、各リソースツリーは各リソース、その属性、及びリソースツリー内の他のリソースとの関係 (親、子、兄弟の関係) を指定する XML 表現です。

注記

HA サービスは階層ツリー型に編成されているリソースで構成されるため、サービスは リソースツリー 又は リソースグループ と呼ばれることがあります。この両方の呼称とも HA サービス と同義語です。
各リソースツリーの根元には、リソースの特殊タイプ — サービスリソース があります。残りのサービスは、他のタイプのリソースにより構成され、その特性を決定します。HA サービスの設定は、サービスリソースの作成、従属クラスターリソースの作成、及びサービスの階層的制約に従う一貫したエンティティへそれらを組織することによって行われます。
本付録は以下のセクションで構成されます:

注記

クラスター設定ファイル、/etc/cluster/cluster.conf の例の後に表示されているセクションは解説のみを目的として使用されています。

C.1. リソース間の親、子、兄弟の関係

クラスターサービスとは rgmanager の制御下で実行する統合されたエンティティです。サービス内の全てのリソースは同じノード上で稼働します。rgmanager の視点からは、クラスターサービスは開始、停止、又は再配置できるエンティティです。ただし、クラスターサービス内では、リソースの階層により各リソースが開始、停止する順番が決定されます。この階層レベルは親、子、兄弟で構成されています。
例C.1「foo サービスのリソース階層」 では、foo サービスのリソースツリーのサンプルを示しています。この例では、リソース間の関係は以下のようになります:
  • fs:myfs (<fs name="myfs" ...>) と ip:10.1.1.2 (<ip address="10.1.1.2 .../>) は兄弟です。
  • fs:myfs (<fs name="myfs" ...>) は script:script_child (<script name="script_child"/>) の親です。
  • script:script_child (<script name="script_child"/>) は fs:myfs (<fs name="myfs" ...>) の子です。

例C.1 foo サービスのリソース階層

<service name="foo" ...>
    <fs name="myfs" ...>
        <script name="script_child"/>
    </fs>
    <ip address="10.1.1.2" .../>
</service>
リソースツリーでは以下のルールが、親/子 の関係に適用されます:
  • 親は子の前に開始される。
  • 親が停止する前に、全ての子がクリーンに停止しなければならない。
  • リソースが健全な状態にあると見なされるには、全ての子が健全である必要がある。

注記

フローティング IP アドレスリソースを含むクラスターサービスの依存関係ツリー設定時には、IP リソースを別のリソースの子としてではなく、最初のエントリーとして設定する必要があります。