本站文章(技术文章和tank手记)均为社长矢量比特工作.实践.学习中的心得原创,请勿转载!

4核服务器cpu使用率10%负载飙到23.5故障排查

linux系统 矢量比特

4核服务器cpu利用率10%负载却飙到23.5故障排查,cpu使用率和cpu负载是两回事儿,cpu使用率反应的是当前cpu的使用情况,cpu负载反应的是cpu任务的队列情况。

  遇到一个故障,一台4核服务器cpu利用率是10%负载却飙到23,先看下问题现场,截图如下:

cpuload.png

        先简单说下cpu使用率和负载,cpu使用率和cpu负载是两回事儿,cpu使用率反应的是当前cpu的使用情况,cpu负载反应的是cpu任务的队列情况,通常服务器负载的正常范围在cpu核心数*0.7此台服务器计算后就是2.8,现在队列负载23.5远远超出此值。结合cpu的使用率只有10%看,当前跑的进程并不是cpu消耗型,很有可能是硬盘io、网络io、内存出现了瓶颈,导致任务执行不过来,cpu的任务队列堆积,排查后内存使用率和网络io都在正常范围,当查到硬盘io时数据如下:

io.png

      好了,到此问题基本定位,是因为sdb的io跑满,导致了任务队列堵塞。继而去查到造成io堵塞的进程,发现有很多以前业务的find操作,在第一张图上也可以看出,查询后是老的业务逻辑,将find进程kill掉后,然后找到了对应的计划任务,将其删掉,问题解决,负载恢复到正常值,截图如下:

0000411172536.png


运维网咖社”原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://www.net-add.com


©本站文章(技术文章和tank手记)均为社长"矢量比特"工作.实践.学习中的心得原创或手记,请勿转载!

喜欢 (19) or 分享 (0)
欢迎扫描关注微信公众号【运维网咖社
社长"矢量比特",曾就职中软、新浪,现任职小米,致力于DevOps运维体系的探索和运维技术的研究实践.