Menu Close

3.7.2.3. ノードセレクターおよび容認を使用したプロジェクトの作成

ノードセレクターおよび容認 (アノテーションとして設定されたもの) を使用するプロジェクトを作成して、Pod の特定のノードへの配置を制御できます。プロジェクトで作成された後続のリソースは、容認に一致するテイントを持つノードでスケジュールされます。

前提条件

  • マシンセットを使用するか、またはノードを直接編集して、ノード選択のラベルが 1 つ以上のノードに追加されている。
  • マシンセットを使用するか、またはノードを直接編集して、テイントが 1 つ以上のノードに追加されている。

手順

  1. metadata.annotations セクションにノードセレクターおよび容認を指定して、Project リソース定義を作成します。

    project.yaml ファイルの例

    kind: Project
    apiVersion: project.openshift.io/v1
    metadata:
      name: <project_name> 1
      annotations:
        openshift.io/node-selector: '<label>' 2
        scheduler.alpha.kubernetes.io/defaultTolerations: >-
          [{"operator": "Exists", "effect": "NoSchedule", "key":
          "<key_name>"} 3
          ]

    1
    プロジェクト名。
    2
    デフォルトのノードセレクターラベル。
    3
    テイントおよび容認コンポーネント の表で説明されている toleration パラメーターです。この例では、NoSchedule の effect を使用します。これにより、ノード上の既存の Pod はそのまま残り、Exists Operator は値を取得しません。
  2. oc apply コマンドを使用してプロジェクトを作成します。

    $ oc apply -f project.yaml

<project_name> namespace で作成された後続のリソースは指定されたノードにスケジュールされます。