24.2.3.2. ソフトエビクションのしきい値について
ソフトエビクションのしきい値は、エビクションしきい値と管理者が指定する必要な猶予期間のペアを設定します。ノードは、猶予期間が経過するまではエビクションシグナルに関連付けられたリソースを回収しません。ノード設定で猶予期間が指定されていない場合、ノードは起動時にエラーを生成します。
さらに、ソフトエビクションのしきい値に達する場合、Operator は Pod をノードからエビクトする際に使用する Pod 終了の猶予期間として許可される最長期間を指定できます。eviction-max-pod-grace-period
が指定されると、ノードは pod.Spec.TerminationGracePeriodSeconds
と maximum-allowed-grace-period の値の小さい方を使用します。これが指定されていない場合は、ノードは正常な停止なしに、Pod を即時に強制終了します。
ソフトエビクションのしきい値については、以下のフラグがサポートされています。
-
eviction-soft
:memory.available<1.5Gi
などのエビクションしきい値のセット。しきい値が対応する猶予期間で満たされる場合、しきい値は Pod のエビクションをトリガーします。 -
eviction-soft-grace-period
:memory.available=1m30s
などのエビクションの猶予期間のセット。猶予期間は、Pod のエビクションをトリガーするまでソフトエビクションのしきい値が保持される期間に対応します。 -
eviction-max-pod-grace-period
: ソフトエビクションのしきい値に達する際の Pod の終了時に使用される最長で許可される猶予期間 (秒単位) です。
ソフトエビクションのしきい値を設定するには、ポリシー作成のためのノード設定の使用 に示されるように、エビクションのしきい値を eviction-soft
の下にある ノード設定ファイル に追加します。
ソフトエビクションのしきい値が設定されたノード設定ファイルのサンプル
kubeletArguments: eviction-soft: - memory.available<500Mi - nodefs.available<500Mi - nodefs.inodesFree<5% - imagefs.available<100Mi - imagefs.inodesFree<10% eviction-soft-grace-period: - memory.available=1m30s - nodefs.available=1m30s - nodefs.inodesFree=1m30s - imagefs.available=1m30s - imagefs.inodesFree=1m30s
この例は一般的なガイドラインを示すためのもので、推奨される設定ではありません。