google Firefox linux命令 开源 Python nginx mysql shell php Ubuntu apache Android Windows linux 程序员 wordpress HTML5 java centos 微软

Linux vmstat命令监控系统状态

vmstat是一个查看虚拟内存(Virtual Memory)使用状况的工具,使用vmstat命令可以得到关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息。

一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是获取的时间间隔数,单位是秒,第二个参数是获取的次数,如:

[root@chenyi-1 sbin]# vmstat 3 3  #表示每三秒获取一次,获取3次
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 621388  44608 300172    0    0     2     8   23   15  1  1 98  0  0   
 0  0      0 621380  44608 300196    0    0     0     0    6    9  0  0 100  0  0   
 0  0      0 621380  44616 300192    0    0     0     4    7   13  0  0 100  0  0

实际在生产环境中,我们会在一个时间段里一直监控,直到我们发出CTRL+C 后结束(下为每1秒获取一次,一直获取):

[root@chenyi-1 sbin]# vmstat 1
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 621388  44648 300196    0    0     2     7   23   15  1  1 98  0  0   
 0  0      0 621380  44648 300196    0    0     0     0    9   12  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0    7   10  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0   10   16  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0   10   14  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0   11   14  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0    7   11  0  0 100  0  0   
 0  0      0 621380  44648 300196    0    0     0     0    9   15  0  0 100  0  0

下面为各参数的含义:

Procs(进程):

  • r: 运行队列中进程数量
  • b: 等待IO的进程数量

Memory(内存):

  • swpd: 使用虚拟内存大小
  • free: 可用内存大小
  • buff: 用作缓冲的内存大小
  • cache: 用作缓存的内存大小

Swap:

  • si: 每秒从交换区写到内存的大小
  • so: 每秒写入交换区的内存大小
  • IO:(现在的Linux版本块的大小为1024bytes)
  • bi: 每秒读取的块数
  • bo: 每秒写入的块数

系统:

  • in: 每秒中断数,包括时钟中断。
  • cs: 每秒上下文切换数。

CPU(以百分比表示):

  • us: 用户进程执行时间(user time)
  • sy: 系统进程执行时间(system time)
  • id: 空闲时间(包括IO等待时间)
  • wa: 等待IO时间

延伸阅读

评论