第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
設定があります。
前提条件
-
Red Hat OpenShift Logging Operator および OpenShift CLI (
oc
) がインストールされている。
手順
次のコマンドを実行して、ロギングコレクター Pod をスケジュールするノードに taint を追加します。
oc adm taint nodes <node_name> <key>=<value>:<effect>
$ oc adm taint nodes <node_name> <key>=<value>:<effect>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドの例
oc adm taint nodes node1 collector=node:NoExecute
$ oc adm taint nodes node1 collector=node:NoExecute
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、taint をキー
collector
、値node
、および taint effectNoExecute
のあるnode1
に配置します。NoExecute
taint effect を使用する必要があります。NoExecute
は、taint に一致する Pod のみをスケジュールし、一致しない既存の Pod を削除します。ClusterLogging
カスタムリソース (CR) のcollection
スタンザを編集して、ロギングコレクター Pod の toleration を設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
こ toleration は、oc adm taint
コマンドで作成された taint と一致します。この toleration のある Pod は node1
にスケジュールできます。