4.3.2. ノードアフィニティーの required (必須) ルールの設定


必須 ルールを使用すると、Pod をノードにスケジュールする前に、特定のルールを満たす 必要がある ことをスケジューラーに指示できます。

以下の手順は、ノードとスケジューラーがノードに配置する必要のある Pod を作成する単純な設定を示しています。

手順

  1. Pod 仕様の特定のラベルの付いた Pod を作成します。

    1. 以下の内容を含む YAML ファイルを作成します。

      注記

      アフィニティーをスケジュールされた Pod に直接追加することはできません。

      出力例

      apiVersion: v1
      kind: Pod
      metadata:
        name: s1
      spec:
        affinity:
          nodeAffinity:
            requiredDuringSchedulingIgnoredDuringExecution:
              nodeSelectorTerms:
              - matchExpressions:
                - key: e2e-az-name
                  values:
                  - e2e-az1
                  - e2e-az2
                  operator: In
      #...

      ここでは、以下のようになります。

      spec.affinity.nodeAffinity
      ノードアフィニティーを設定するスタンザを指定します。
      spec.affinity.nodeAffinity.requiredDuringScheduledIgnoredDuringExecution

      必須 ルールを指定します。nodeSelectorTerms.matchExpressions の 以下のパラメーターを設定してください。

      key
      ルールを適用するために一致させる必要があるキー/値ペア (ラベル) のキーを指定します。
      operator
      ノード上のラベルと、Pod 仕様の matchExpression パラメーター内の値のセットとの間の関係を指定します。この値は、InNotInExists、または DoesNotExistLt、または Gt にすることができます。ノードのアンチアフィニティー に関する明示的な概念はありませんが、NotIn または DoesNotExist 演算子を使用すると、動作が複製されます。
      values
      ルールを適用するために一致させる必要があるキー/値ペア (ラベル) の値を指定します。
    2. Pod を作成します。

      $ oc create -f <file-name>.yaml
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る