第1章 ロギングリソースのスケジューリング


ノードセレクター、taint と toleration、アフィニティーとアンチアフィニティーの設定を定義することで、ロギングリソースをスケジュールできます。

Node selector
ノードセレクターは、ノードのカスタムラベルと Pod で指定されるセレクターを使用して定義されるキーと値のペアのマップを指定します。Pod がノードで実行する要件を満たすには、Pod にはノードのラベルと同じキーと値のペアがなければなりません。
taint および toleration
taint と toleration は、どの Pod をノード上でスケジュールするか、またはスケジュールしないかを制御します。
アフィニティーおよびアンチアフィニティー
Pod のアフィニティーと Pod のアンチアフィニティーによって、他の Pod のキーと値ラベルに基づいて、Pod をスケジュールすることに適したノードを制限することができます。
重要

nodeSelector フィールドと `nodeAffinity` フィールドの両方を設定する場合、Pod を候補ノードにスケジュールするには、両方のフィールドの条件を満たす必要があります。

1.1. toleration を使用したログコレクター Pod 配置の制御

デフォルトで、ログコレクター Pod には以下の tolerations 設定があります。

apiVersion: v1
kind: Pod
metadata:
  name: collector-example
  namespace: openshift-logging
spec:
# ...
  collection:
    type: vector
    tolerations:
    - effect: NoSchedule
      key: node-role.kubernetes.io/master
      operator: Exists
    - effect: NoSchedule
      key: node.kubernetes.io/disk-pressure
      operator: Exists
    - effect: NoExecute
      key: node.kubernetes.io/not-ready
      operator: Exists
    - effect: NoExecute
      key: node.kubernetes.io/unreachable
      operator: Exists
    - effect: NoSchedule
      key: node.kubernetes.io/memory-pressure
      operator: Exists
    - effect: NoSchedule
      key: node.kubernetes.io/pid-pressure
      operator: Exists
    - effect: NoSchedule
      key: node.kubernetes.io/unschedulable
      operator: Exists
# ...
Copy to Clipboard Toggle word wrap

前提条件

  • Red Hat OpenShift Logging Operator および OpenShift CLI (oc) がインストールされている。

手順

  1. 次のコマンドを実行して、ロギングコレクター Pod をスケジュールするノードに taint を追加します。

    $ oc adm taint nodes <node_name> <key>=<value>:<effect>
    Copy to Clipboard Toggle word wrap

    コマンドの例

    $ oc adm taint nodes node1 collector=node:NoExecute
    Copy to Clipboard Toggle word wrap

    この例では、taint をキー collector、値 node、および taint effect NoExecute のある node1 に配置します。NoExecute taint effect を使用する必要があります。NoExecute は、taint に一致する Pod のみをスケジュールし、一致しない既存の Pod を削除します。

  2. ClusterLogging カスタムリソース (CR) の collection スタンザを編集して、ロギングコレクター Pod の toleration を設定します。

    apiVersion: logging.openshift.io/v1
    kind: ClusterLogging
    metadata:
    # ...
    spec:
    # ...
      collection:
        type: vector
        tolerations:
        - key: collector 
    1
    
          operator: Exists 
    2
    
          effect: NoExecute 
    3
    
          tolerationSeconds: 6000 
    4
    
        resources:
          limits:
            memory: 2Gi
          requests:
            cpu: 100m
            memory: 1Gi
    # ...
    Copy to Clipboard Toggle word wrap
    1
    ノードに追加したキーを指定します。
    2
    Exists Operator を指定して、key/value/effect パラメーターが一致するようにします。
    3
    NoExecute effect を指定します。
    4
    オプションで、tolerationSeconds パラメーターを指定して、エビクトされる前に Pod がノードにバインドされる期間を設定します。

こ toleration は、oc adm taint コマンドで作成された taint と一致します。この toleration のある Pod は node1 にスケジュールできます。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat