This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.6.2. テイントおよび容認 (Toleration) の追加
容認を Pod に、テイントをノードに追加することで、ノードはノード上でスケジュールする必要のある (またはスケジュールすべきでない) Pod を制御できます。既存の Pod およびノードの場合、最初に容認を Pod に追加してからテイントをノードに追加して、容認を追加する前に Pod がノードから削除されないようにする必要があります。
手順
Pod仕様をtolerationsスタンザを含めるように編集して、容認を Pod に追加します。Equal 演算子を含む Pod 設定ファイルのサンプル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
Exists 演算子を含む Pod 設定ファイルのサンプル
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
ExistsOperator はvalueを取りません。
この例では、テイントを、キー
key1、値value1、およびテイント effectNoExecuteを持つnode1にテイントを配置します。テイントおよび容認コンポーネント の表で説明されているパラメーターと共に以下のコマンドを使用してテイントをノードに追加します。
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 key1=value1:NoExecute
$ oc adm taint nodes node1 key1=value1:NoExecuteCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、キー
key1、値value1、および effectNoExecuteを持つテイントをnode1に配置します。注記NoScheduleテイントをマスターノードに追加する場合、ノードには、デフォルトで追加されるnode-role.kubernetes.io/master=:NoScheduleテイントが必要です。以下は例になります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod の容認はノードのテイントに一致します。いずれかの容認のある Pod は
node1にスケジュールできます。
2.6.2.1. マシンセットを使用したテイントおよび容認の追加 リンクのコピーリンクがクリップボードにコピーされました!
マシンセットを使用してテイントをノードに追加できます。MachineSet オブジェクトに関連付けられるすべてのノードがテイントで更新されます。容認は、ノードに直接追加されたテイントと同様に、マシンセットによって追加されるテイントに応答します。
手順
Pod仕様をtolerationsスタンザを含めるように編集して、容認を Pod に追加します。Equal演算子を含む Pod 設定ファイルのサンプルCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に例を示します。
Exists演算子を含む Pod 設定ファイルのサンプルCopy to Clipboard Copied! Toggle word wrap Toggle overflow テイントを
MachineSetオブジェクトに追加します。テイントを付けるノードの
MachineSetYAML を編集するか、または新規MachineSetオブジェクトを作成できます。oc edit machineset <machineset>
$ oc edit machineset <machineset>Copy to Clipboard Copied! Toggle word wrap Toggle overflow テイントを
spec.template.specセクションに追加します。ノード仕様のテイントの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、キー
key1、値value1、およびテイント effectNoExecuteを持つテイントをノードに配置します。マシンセットを 0 にスケールダウンします。
oc scale --replicas=0 machineset <machineset> -n openshift-machine-api
$ oc scale --replicas=0 machineset <machineset> -n openshift-machine-apiCopy to Clipboard Copied! Toggle word wrap Toggle overflow マシンが削除されるまで待機します。
マシンセットを随時スケールアップします。
oc scale --replicas=2 machineset <machineset> -n openshift-machine-api
$ oc scale --replicas=2 machineset <machineset> -n openshift-machine-apiCopy to Clipboard Copied! Toggle word wrap Toggle overflow マシンが起動するまで待ちます。テイントは
MachineSetオブジェクトに関連付けられたノードに追加されます。