linux命令之vmstat

来源:互联网 发布:靠谱的备案域名网 编辑:程序博客网 时间:2024/05/12 20:47

vmstat

vmstat 命令报告关于内核线 程、虚拟内存、磁盘、陷阱和 CPU 活动的统计信息。由 vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和

常用vmstat T C,其中T为时间间隔,C为采集次数。

[root@USC_28_18 src]# vmstat 5 5

  procs                     memory      swap          io    system      cpu

 r b  w   swpd  free   buff  cache  si   so    bi   bo   in    cs us sy id

 0 0  0   1732 21552 126084 690300    0    0    0     0    3    0  0  0  0

 0 0  0   1732 21552 126084 690304    0    0    0    19 1009   197 0  0 100

 0 0  0   1732 21548 126084 690304    0    0    0    18 1009   159 0  0 100

 0 0  0   1732 21540 126084 690316    0    0    0    72 1018   224 0  0 100

 0 0  0   1732 21536 126084 690316    0    0    0    30 1013   162 0  0 100

每5s采集一次,一次显示5次。

注:在取样模式中需要考虑在数据收集中可能出现的误差,将取样频率设为比较低的值可以尽可能 的减小误差的影响。
·process(procs)
r:等待运行时间的进程数量
b:处在不可中断睡眠状态的进程
w:被交换出去但是仍然可以运行的进程,这个值是计算出来的
·memoryswpd:虚拟内存的数量
free:空闲内存的数量
buff:用做缓冲区的内存数量
·swap
si:从硬盘交换来的数量
so:交换到硬盘去的数量
.io
bi:向一个块设备输出的块数量
bo:从一个块设备接受的块数量
·system
in:每秒发生的中断数量, 包括时钟
cs:每秒发生的contextswitches的数量
·cpu(整个cpu运行时间的百分比)
us:非内核代码运行的时间(用户时间,包括nice时间)
sy:内核代码运行的时间(系统时间)
id:空闲时间,在Linux2.5.41之前的内核版本中,这个值包括I/O等待时间;

其中:

r经常大于 3-4 ,且id经常少于50,表cpu的负荷很重。
pi,po 长期不等于0,表示内存不足。
disk 经常不等于0, 且在 b中的队列大于2-3, 表示 io性能不好。
Procs r: 运行的进程比较多,系统很繁忙
Io bo: 磁盘写的数据量稍大
Cpu us: 持续大于50-60,服务高峰期可以接受
Cpu wa: 稍微有些高
Cpu id:持续小于50,服务高峰期可以接受

Vmstat命令提供了大量的附加参数,下面列举几个十分有用的参数:

引用
·m:显示内核的内存利用率
·a:显示内存页面信息,包括活跃和不活跃的内存页面
·n:显示报头行,这个参数在使用取样模式并将命令结果输出到一个文件时非常有用。

例如vmstat –n 2 10以2秒的频率显示10输出结果
·当使用-p {分区}时,vmstat提供对I/O结果的统计

1、要显示引导后的统计信息摘要,请输入:

vmstat

1        要显示 2 秒时间间隔的 5 个摘要,请输入:

vmstat2 5

第一次摘要包含引导后的时间统计信息。

2        要显示引导后包括逻辑磁盘 scdisk13 和 scdisk14 的统计信息摘要,请输入:

vmstatscdisk13 scdisk14

3        要显示派生统计信息,请输入:

vmstat  -f

4        要显示各事件的计数,请输入:

vmstat-s

5        要显示 vmstat的每一输出栏旁边的时间戳记,请输入:

vmstat-t

6        要以另一套输出栏显示新的 I/O 定向视图,请输入:

vmstat-I

7        要显示所有可用的 VMM 统计信息,请输入:

vmstat-vs

 

原创粉丝点击