第13章 クラスターリソースの実行順序の決定

リソースが実行する順序を指定する、順序の制約を設定できます。

次は、順序の制約を設定するコマンドの形式です。

pcs constraint order [action] resource_id then [action] resource_id [options]

以下の表では、順序の制約を設定する場合のプロパティーとオプションをまとめています。

表13.1 順序の制約のプロパティー

フィールド説明

resource_id

動作を行うリソースの名前。

action

リソースに対して指示されるアクション。action プロパティーでは、以下の値が使用できます。

* start - リソースの開始アクションを指示します。

* stop - リソースの停止アクションを指示します。

* promote - アンプロモートリソースから、プロモートしたリソースにリソースを昇格します。

* demote - プロモートリソースから、アンプロモートリソースまで、リソースを降格します。

動作を指定しない場合のデフォルトの動作は start です。

kind オプション

制約の実施方法。kind オプションでは、以下の値が使用できます。

* Optional - 両方のリソースが指定の動作を実行する場合のみ適用されます。オプションの順序の詳細は 勧告的な順序付けの設定 を参照してください。

* Mandatory - 常に制約を有効にします (デフォルト値)。1 番目に指定したリソースが停止している場合や起動できない場合は、2 番目に指定したリソースが停止します。この強制的な順序付けの詳細は 強制的な順序付けの設定 を参照してください。

* Serialize - 指定するリソースに対して、複数の停止または起動のアクションが同時に発生しないようにします。指定した 1 番目および 2 番目のリソースは、いずれの順序でも起動できますが、片方が完了しないともう片方が開始しません。典型的なユースケースは、リソースの起動によりホストの負荷が高くなる場合です。

symmetrical オプション

true の場合、逆の制約は逆のアクションに適用されます (たとえば、A の開始後に B が開始する場合は、B が A が停止前に停止する場合など) 。kindSerialize の順序制約を対称にすることはできません。デフォルト値は、Mandatory および Optional の場合は true で、Serialize の場合は false です。

次のコマンドを使用すると、すべての順序の制約からリソースが削除されます。

pcs constraint order remove resource1 [resourceN]...

13.1. 強制的な順序付けの設定

必須順序制約は、最初のリソースに対する最初のアクションが正常に完了しない限り、2 番目のリソースの 2 番目のアクションが開始しないことを示しています。命令できるアクションが stop または start で、昇格可能なクローンが demote および promote とします。たとえば、A then B(start A then start B と同等) は、A が適切に開始しない限り、B が開始しないことを示しています。順序の制約は、この制約の kind オプションが Mandatory に設定されているか、デフォルトのままに設定されている場合は必須になります。

symmetrical オプションが true に設定されているか、デフォルトのままにすると、逆のアクションの命令は逆順になります。startstop のアクションは対称になり、demotepromote は対称になります。たとえば、対称的に、promote A then start B 順序は stop B then demote A(B が正常に停止するまで A が降格しない) ことを示しています。対称順序は、A の状態を変更すると、B に予定されているアクションが発生すること示しています。たとえば、A then B と設定した場合は、失敗により A が再起動すると、B が最初に停止してから、A が停止し、それにより A が開始し、それにより B が開始することを示します。

クラスターは、それぞれの状態変化に対応することに注意してください。2 番目のリソースで停止操作を開始する前に 1 番目のリソースが再起動し、起動状態にあると、2 番目のリソースを再起動する必要がありません。