Linux 系统中 CPU 利用率超过 100%

Linux 系统中 CPU 利用率超过 100%

在我们的一台生产 Linux 服务器中,CPU 利用率100 %有时会超过250%

我如何才能找到哪个进程使用了​​更多的 CPU 利用率,以及在哪里可以找到 CPU 利用率日志?

操作系统:RHEL 5.5

答案1

CPU 利用率是相对于单个 CPU 来衡量的。每个 CPU 的最大利用率为 100%,因此四 CPU 系统的最大 CPU 利用率为 400%。

答案2

尝试使用top命令

man top了解更多信息

答案3

sar如果您的系统已开启,该实用程序会收集一些有关您的系统的统计信息。访问这些统计信息的最简单方法是sar在命令行中键入。

一个更好的选择是安装一个监控系统,比如 Cacti、Munin 或 Zabbix。(尽管 Nagios 可以进行绘图,但这不是它的强项。)ServerFault 上已经有很多关于哪个监控系统最好的问题。一旦你安装了其中一个,你就很难记得没有它你是怎么生活的。

通常,这些不会告诉您哪个进程在任何给定时间使用了所有 CPU。为此,tophtop当时是您最好的选择。请记住,使用 10% CPU 的 25 个 Apache 进程与top使用 250% CPU 的单个 MySQL 进程显示不同。

另一个需要关注的关键指标是“平均负载”。它表示当前有多少进程正在等待处理器。它能够很好地指示您的系统使用起来有多慢。

关于 CPU 利用率的另一点说明是,虚拟机可以根据 VM 的需求动态改变 CPU 容量。我曾在 VM 中看到过一个进程占用了 9999% 的 CPU。VMWare 对此给出的建议是“不要相信从 VM 内部测量的指标”。

答案4

没有进程利用率的日志记录,您可能需要安装类似的东西atop。以前也有一个 GNU“系统会计”包,但我记得它不太合适。

相关内容