13.3. リソースセットへの順序の設定
一般的に、管理者は、複数のリソースの連鎖を作成する場合に順序を設定します (例: リソース A が開始してからリソース B を開始し、その後にリソース C を開始)。複数のリソースを作成して同じ場所に配置し (コロケーションを指定)、起動の順序を設定する必要がある場合は、このようなリソースが含まれるリソースグループを設定できます。
ただし、特定の順序で起動する必要があるリソースをリソースグループとして設定することが適切ではない場合があります。
- リソースを順番に起動するように設定する必要があるものの、リソースは必ずしも同じ場所に配置しない場合
- リソース C の前にリソース A または B のいずれかが起動する必要があるものの、A と B の間には関係が設定されていない場合
- リソース C およびリソース D の前にリソース A およびリソース B の両方が起動している必要があるものの、A と B、または C と D の間には関係が設定されていない場合
このような状況では、pcs constraint order set コマンドを使用して、1 つまたは複数のリソースセットに対して順序の制約を作成できます。
pcs constraint order set コマンドを使用して、リソースセットに以下のオプションを設定できます。
sequential- リソースセットに順序を付ける必要があるかどうかを指定します。trueまたはfalseに設定できます。デフォルト値はtrueです。sequentialをfalseに設定すると、セットのメンバーに順序を設定せず、順序の制約にあるセット間で順序付けできます。そのため、このオプションは、制約に複数のセットが登録されている場合に限り有効です。それ以外の場合は、制約を設定しても効果がありません。-
require-all- 続行する前にセットの全リソースがアクティブである必要があるかどうかを指定します。trueまたはfalseに設定できます。require-allをfalseに設定すると、次のセットに進む前に、セットの 1 つのリソースのみを開始する必要があります。require-allをfalseに設定しても、sequentialがfalseに設定されている順序なしセットと併用しない限り、効果はありません。デフォルト値はtrueです。 -
action- クラスターリソースの実行順序の決定 の表順序の制約のプロパティーで説明されているように、start、promote、demote、またはstopに設定できます。 -
role-Stopped、Started、Master、またはSlaveに設定できます。RHEL 8.5 以降では、pcsコマンドラインインターフェイスは、roleの値としてPromotedとUnpromoted を受け入れます。PromotedおよびUnpromotedロールは、MasterおよびSlaveロールと機能的に等価です。
pcs constraint order set コマンドの setoptions パラメーターに続いて、リソースのセットに対する以下の制約オプションを設定できます。
-
id- 定義する制約の名前を指定します。 -
kind-クラスターリソースの実行順序の決定 の表順序の制約のプロパティーで説明されているように、制約を有効にする方法を指定します。 -
symmetrical-クラスターリソースの実行順序の決定 の表順序の制約のプロパティーで説明しているように、逆の作用に逆の制約を適用するかどうかを設定します。
pcs constraint order set resource1 resource2 [resourceN]... [options] [set resourceX resourceY ... [options]] [setoptions [constraint_options]]
D1、D2、D3 という 3 つのリソースがある場合は、次のコマンドを実行すると、この 3 つのリソースを、順序を指定したリソースセットとして設定します。
# pcs constraint order set D1 D2 D3
この例では、A、B、C、D、E、および F という名前の 6 つのリソースがある場合に、以下のように、起動するリソースセットに順序制約を設定します。
-
AとBは、互いに独立して起動します。 -
AまたはBのいずれかが開始すると、Cが開始します。 -
Cが開始すると、Dが開始します。 -
Dが開始したら、EとFが互いに独立して起動します。
symmetrical=false が設定されているため、リソースの停止は、この制約の影響を受けません。
# pcs constraint order set A B sequential=false require-all=false set C D set E F sequential=false setoptions symmetrical=false