我遇到一个问题,一个盒子“随机”获得整个核心的 iowait 值——据我所知,没有任何 IO 负载与之相关,如 iostat 所示:
avg-cpu: %user %nice %system %iowait %steal %idle
0.10 0.00 12.61 12.40 0.00 74.90
Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 0.40 0.00 0.00 0 0
我之前已经将%system
负载隔离到一个问题,[kipmi0]
详情如下http://www-01.ibm.com/support/docview.wss?uid=nas7d580df3d15874988862575fa0050f604,而且这种情况发生的时间比这要长得多,所以我不相信这与此有关。
该系统确实也有几个自动安装的 NAS 文件系统,但是当发生这种情况时,所讨论的 NAS 并没有显示负载。
是否有某种方法可以追踪哪些线程(内核或者用户空间;两者都可能导致这种情况)负责 iowait 负载,以及它们正在尝试做什么?
答案1
由于未报告实际 CPU 负载,因此不存在满核iowait
。在此伪状态下,CPU 处于空闲状态且完全可用。
我不会太担心这个指标,因为它可能会被多 CPU 和多线程硬件误解。
如果您怀疑i/o
存在问题,请查看i/o
统计数据(例如iostat
:),而不是与 CPU 相关的统计数据。