2.9.4. Descheduler ストラテジーの設定
Descheduler が Pod のエビクトに使用するストラテジーを設定できます。
前提条件
- クラスター管理者の権限。
手順
KubeDescheduler
オブジェクトを編集します。$ oc edit kubedeschedulers.operator.openshift.io cluster -n openshift-kube-descheduler-operator
spec.strategies
セクションで 1 つ以上のストラテジーを指定します。apiVersion: operator.openshift.io/v1beta1 kind: KubeDescheduler metadata: name: cluster namespace: openshift-kube-descheduler-operator spec: deschedulingIntervalSeconds: 3600 strategies: - name: "LowNodeUtilization" 1 params: - name: "CPUThreshold" value: "10" - name: "MemoryThreshold" value: "20" - name: "PodsThreshold" value: "30" - name: "MemoryTargetThreshold" value: "40" - name: "CPUTargetThreshold" value: "50" - name: "PodsTargetThreshold" value: "60" - name: "NumberOfNodes" value: "3" - name: "RemoveDuplicates" 2 - name: "RemovePodsHavingTooManyRestarts" 3 params: - name: "PodRestartThreshold" value: "10" - name: "IncludingInitContainers" value: "false"
- 1
LowNodeUtilization
ストラテジーは、オプションで設定可能なCPUThreshold
およびMemoryThreshold
などの追加のパラメーターを提供します。- 2
RemoveDuplicates
、RemovePodsViolatingInterPodAntiAffinity
、RemovePodsViolatingNodeAffinity
、およびRemovePodsViolatingNodeTaints
ストラテジーには、設定する追加のパラメーターがありません。- 3
RemovePodsHavingTooManyRestarts
ストラテジーでは、PodRestartThreshold
パラメーターを設定する必要があります。また、オプションのIncludingInitContainers
パラメーターを指定します。
複数のストラテジーを有効にすることができ、ストラテジーを指定する順番は重要ではありません。
- 変更を適用するためにファイルを保存します。