Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

24.2.3.2. 了解 Soft Eviction Thresholds

软驱除阈值将一个驱除阈值与所需的管理员指定宽限期相关联。在超过该宽限期前,该节点不会回收与驱除信号关联的资源。如果节点配置中没有提供宽限期,节点会在启动时出现错误。

另外,如果达到软驱除阈值,Operator 可以指定最高允许的 pod 终止宽限期,以便在从节点驱除 pod 时使用。如果指定了 eviction-max-pod-grace-period,则节点使用 pod.Spec.TerminationGracePeriodSeconds 和 maximum-allowed grace period 之间的 lesser 值。如果没有指定,节点将立即终止 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

这个示例是常规的指南,我们不推荐的设置。