Linux下性能监控的三把军刀

时间:2022-04-23 09:13:59

Linux主机怎么管,十八般兵器件件都可以算得上是瑞士军刀,称手的兵器一两件即可,最常用的,莫过于stat家族三兄弟吧。

计算机主要资源是什么?CPU、内存和磁盘?尽管现在云计算技术有多普及,查看一个系统是否健康运行还是需要从这3方面来着手开始调查的,调查出了原因,能改程序就改程序,改不了程序就花钱升级硬件,不行就只能忍着了。

  1. 老大mpstat,主要用来查看CPU报告,包括user/system、iowait和中断等。
  2. 老二vmstat,这里的m不是虚拟机的m,而是虚拟内存的m,当然主要看内存(包括cache和buffer等)了。
  3. 老三iostat,名字有点唬人,除了生成磁盘使用信息的报告,还包括CPU的使用情况。

这里我们主要看看vmstat,它的输出内容大概如下(原谅我,虽然没到极限,但是我已经稍微尽力让这段shell输出变得好看,然而失败):

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 96572 160052 119776 0 0 11 15 0 1 0 0 100 0 0

上面的输出的第一行为大分类名,主要是处理器、内存、交换区、io、系统和CPU使用情况。这也是vmstat命令能看到的数据内容,第二行是各项目名,比如io中的bi和bo分别表示每秒的block in和block out,也就是从块设备读取和向块设备写入的量。每一项的具体内容可以参考man手册,这里不说了,知道的人自然之道,看了也不去查的人,自然也不需要之道。

下面根据网上的一些资料,总结了一下简单的几个调查系统性能瓶颈的“套路”。当然,要想读懂下面的“套路”,你还得理解其中的“黑话”,也就是vmstat命令输出的各项目名所代表的含义。

Linux下性能监控的三把军刀
Linux下性能监控的三把军刀
Linux下性能监控的三把军刀

本文转载地址:https://www.linuxprobe.com/linux-three-saber.html