第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:NoExecuteCopy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、taint をキー
collector、値node、および taint effectNoExecuteのあるnode1に配置します。NoExecutetaint 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 にスケジュールできます。