検索

第59章 ルールによるリソースの場所の決定

download PDF

さらに複雑な場所の制約には、Pacemaker のルールを使用してリソースの場所を決定できます。

59.1. Pacemaker ルール

Pacemaker ルールを使用すると、設定をより動的に作成できます。ルールには、(ノード属性を使用して) 時間ベースで異なる処理グループにマシンを割り当て、場所の制約の作成時にその属性を使用する方法があります。

各ルールには、日付などの様々な式だけでなく、その他のルールも含めることができます。ルールの boolean-op フィールドに応じて各種の式の結果が組み合わされ、最終的にそのルールが true または false のどちらに評価されるかどうかが決まります。次の動作は、ルールが使用される状況に応じて異なります。

表59.1 ルールのプロパティー
フィールド説明

role

リソースが指定のロールにある場合にのみ適用するルールを制限します。使用できる値は以下のようになります。StartedSlaveMaster備考:role="Master" が指定されたルールは、クローンインスタンスの最初の場所を判断できません。どのアクティブインスタンスが昇格されるかにのみ影響します。

score

ルールが true に評価される場合に適用されるスコア。場所の制約として、ルールでの使用に制限されます。

score-attribute

ルールが true に評価されると検索し、スコアとして使用するノード属性。場所の制約として、ルールでの使用に制限されます。

boolean-op

複数の式オブジェクトからの結果を組み合わせる方法。使用できる値は and および or です。デフォルト値は and です。

59.1.1. ノード属性の式

ノードで定義される属性に応じてリソースを制御する場合に使用されるノード属性の式です。

表59.2 式のプロパティー
フィールド説明

attribute

テストするノード属性。

type

値をテストする方法を指定します。使用できる値は、stringintegernumber (RHEL 8.4 以降)、version です。デフォルト値は string です。

operation

実行する比較動作。設定できる値は以下のとおりです。

* lt - ノード属性の値が value 未満の場合は True

* gt - ノード属性の値が value を超える場合は True

* lte - ノード属性の値が value 未満または同等になる場合は True

* gte - ノード属性の値が value を超えるか、同等になる場合は True

* eq - ノード属性の値が value と同等になる場合に True

* ne - ノード属性の値が value と同等にならない場合は True

* defined - ノードに指定属性がある場合は True

* not_defined - ノードに指定属性がない場合は True

value

比較のためにユーザーが提供した値 (operationdefined または not_defined に設定されていない場合に限り必要)

管理者が追加する属性のほかに、以下の表で説明されているように、クラスターは、使用可能な各ノードに特殊な組み込みノード属性を定義します。

表59.3 組み込みノード属性
名前説明

#uname

ノード名

#id

ノード ID

#kind

ノードタイプ。使用できる値は、clusterremote、および container です。kind の値は、ocf:pacemaker:remote リソースで作成された Pacemaker リモートノードの remote、および Pacemaker リモートゲストノードおよびバンドルノードの container です。

#is_dc

このノードが指定コントローラー (DC) の場合は true、それ以外の場合は false

#cluster_name

cluster-name クラスタープロパティーの値 (設定されている場合)。

#site_name

site-name ノード属性の値 (設定されている場合)。それ以外は #cluster-name と同じ。

#role

関連する昇格可能なクローンがこのノードで果たすロール。昇格可能なクローンに対する場所の制約のルール内でのみ有効です。

59.1.2. 時刻と日付ベースの式

日付の式は、現在の日付と時刻に応じてリソースまたはクラスターオプションを制御する場合に使用します。オプションで日付の詳細を含めることができます。

表59.4 日付の式のプロパティー
フィールド説明

start

ISO 8601 仕様に準じた日付と時刻。

end

ISO 8601 仕様に準じた日付と時刻。

operation

状況に応じて、現在の日付と時刻を start と end のいずれかの日付、または両方の日付と比較します。設定できる値は以下のとおりです。

* gt - 現在の日付と時刻が start 以降の場合は True

* lt - 現在の日付と時刻が end 以前の場合は True

* in_range - 現在の日付と時刻が start 以降、かつ end 以前の場合は True

* date-spec - 現在の日付/時刻に対して cron のような比較を実行します。

59.1.3. 日付の詳細

日付の詳細は、時間に関係する cron のような式を作成するのに使用されます。各フィールドには 1 つの数字または範囲が含まれます。指定のないフィールドは、デフォルトを 0 に設定するのではなく、無視されます。

たとえば、monthdays="1" は各月の最初の日と一致し、hours="09-17" は午前 9 時から午後 5 時まで (両時間を含む) の時間と一致します。ただし、weekdays="1,2" または weekdays="1-2,5-6" には複数の範囲が含まれるため、指定することはできません。

表59.5 日付詳細のプロパティー
フィールド説明

id

日付の一意の名前

hours

設定できる値は、0-23

monthdays

設定できる値は、0-31 (月および年により異なる)

weekdays

設定できる値は、1-7 (1=月曜、7=日曜)

yeardays

設定できる値は、1-366 (年により異なる)

months

設定できる値は、1-12

weeks

設定できる値は、1-53 (weekyear により異なる)

years

グレゴリオ暦 (新暦) に準じる年

weekyears

グレゴリオ暦の年とは異なる場合がある (例: 2005-001 Ordinal2005-01-01 Gregorian であり 2004-W53-6 Weekly でもある)

moon

設定できる値は、0-7 (0 は新月。4 満月)

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.