Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

24.2.2. 了解驱除信号

您可以在下表中描述的任何信号上配置节点来触发驱除决策。您可以为驱除阈值添加 驱除 信号,以及一个阈值。

查看信号:

curl <certificate details> \
  https://<master>/api/v1/nodes/<node>/proxy/stats/summary

表 24.1. 支持的 Eviction Signals

节点条件驱除信号描述

MemoryPressure

memory.available

memory.available = node.status.capacity[memory] - node.stats.memory.workingSet

节点上的可用内存已超过驱除阈值。

DiskPressure

nodefs.available

nodefs.available = node.stats.fs.available

节点根文件系统或镜像文件系统上的可用磁盘空间已超过驱除阈值。

nodefs.inodesFree

nodefs.inodesFree = node.stats.fs.inodesFree

imagefs.available

imagefs.available = node.stats.runtime.imagefs.available

imagefs.inodesFree

imagefs.inodesFree = node.stats.runtime.imagefs.inodesFree

上表中的每个信号都支持字面或百分比的值,但 内节点FreeinodesFree 信号需要以百分比的形式指定。基于百分比的值相对于与每个信号关联的总容量计算。

脚本使用 kubelet 执行的相同步骤集从 cgroup 驱动程序中获取 内存 的值。该脚本从其计算中排除不活动文件内存(即非活动 LRU 列表中的字节数),因为它假定不活动文件内存在压力下被回收。

注意

不要使用 free -m 等工具,因为 free -m 无法在容器中工作。

OpenShift Container Platform 每 10 秒监控这些文件系统。

如果您将卷和日志存储在专用文件系统中,则该节点不会监控该文件系统。

注意

节点支持根据磁盘压力触发驱除决策。由于磁盘压力导致 pod 驱除前,节点还会执行容器和镜像垃圾回收