CPU 负载平均值+何时设置阈值

CPU 负载平均值+何时设置阈值

我们有一个包含物理机器 HW 的集群

每台机器有 32 个 CPU

# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                32
On-line CPU(s) list:   0-31
Thread(s) per core:    2
Core(s) per socket:    8

现在我们希望每次从正常运行时间到正常运行时间 5 分钟的平均负载达到阈值时发送警报

据我了解,当平均负载(正常运行 5 分钟后)值超过 32(CPU 数量)时,我们就需要担心了。

我对么 ?

答案1

平均负载主要不是显示 CPU 负载,而是工作项队列长度的近似值。在现实生活中,这通常更多地受到 I/O 等待中浪费的 CPU 周期的影响,而不是实际使用的 CPU 周期(当然这取决于工作负载)。

查看该top工具以确定 CPU 如何使用它们的时间。根据经验法则(和仅有的因此)考虑

  • User百分比是健康的 - 您的机器使用良好
  • Sys百分比可能表明应用程序效率不高(或 VM 客户机运行未优化的操作系统/驱动程序组合)
  • 时间过长Wait意味着您的 I/O(最有可能是存储)无法跟上。这可能再次表明您的应用程序内部需要优化,或者只是对存储硬件的要求过高(最值得关注的地方:旋转磁盘是否用于延迟敏感的工作负载?您是否使用 RAID5 进行小规模写入?)

相关内容