16.3.3.2. ノードの低使用率ポリシー (Low Node Utilization Policy) の作成
LowNodeUtilization
ストラテジーは、使用率の低いノードを検出し、他のノードから Pod をエビクトして、エビクトされた Pod がそれらの使用率の低いノードにスケジュールされるようにします。
ノードの使用率は、CPU、メモリーまたは Pod 数の設定可能なしきい値 thresholds
(パーセンテージベース) で決定されます。ノードの使用率がこれらのしきい値のすべてを下回る場合、ノードの使用率は低いとみなされ、Descheduler は Pod を他のノードからエビクトする可能性があります。Pod の要求リソース要件は、ノードのリソース使用率を計算する際に考慮されます。
高いしきい値の targetThresholds
は、使用率が適性なノードを判別するために使用されます。thresholds と targetThresholds 間にあるノードの使用率は適性であるとみなされ、エビクションの対象にはなりません。しきい値 targetThresholds
は、CPU、メモリーおよび Pod 数について設定できます (パーセンテージベース)。
これらのしきい値はクラスター要件に合わせて調整できます。
numberOfNodes
パラメーターは、使用率の低いノードの数が設定された値を上回る場合にのみストラテジーをアクティブにするために設定できます。いくつかのノードの使用率が低くなることが許容される場合にこのパラメーターを設定します。デフォルトで、numberOfNodes
はゼロに設定されます。
apiVersion: "descheduler/v1alpha1" kind: "DeschedulerPolicy" strategies: "LowNodeUtilization": enabled: true params: nodeResourceUtilizationThresholds: thresholds: 1 "cpu" : 20 "memory": 20 "pods": 20 targetThresholds: 2 "cpu" : 50 "memory": 50 "pods": 50 numberOfNodes: 3 3