Menu Close

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 宽限期中使用 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 下向 节点配置文件 添加驱除阈值,如 使用 Node Configuration 创建策略 所示。

使用 Soft Eviction Thresholds 的节点配置文件示例

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

这个示例是一个常规准则,不推荐设置。