linux 带宽 监控 磁盘_linux性能监控:CPU监控命令之vmstat命令

d8d0442af8ba9c354aef8ba927602dd3.gif

d353715eec2848349b64eb45ebd660ab.png

CPU监控命令之vmstat命令 1 概述: 489df9929f8c6226532f0c64d6051c85.png

vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。它是对系统的整体情况进行统计,不足之处是无法对某个进程进行深入分析。vmstat工具提供了一种低开销的系统性能观察方式。因为vmstat本身就是低开销工具,在非常高负荷的服务器上,你需要查看并监控系统的健康情况,在控制窗口还是能够使用vmstat输出结果。

e43d1dcaa10b272195a176960db5399a.png 2 常用命令格式: 489df9929f8c6226532f0c64d6051c85.png

vmstat [-a] [-n] [-S unit] [delay [ count]] 

vmstat [-s] [-n] [-S unit] 

vmstat [-m] [-n] [delay [ count]] 

vmstat [-d] [-n] [delay [ count]] 

vmstat [-p disk partition] [-n] [delay [ count]] 

vmstat [-f] 

vmstat [-V]

e43d1dcaa10b272195a176960db5399a.png 3 命令参数: 489df9929f8c6226532f0c64d6051c85.png

-a:显示活跃和非活跃内存 

-f:显示从系统启动至今的fork数量 。 

-m:显示slabinfo

-n:只在开始时显示一次各字段名称。 

-s:显示内存相关统计信息及多种系统活动数量。 

delay:刷新时间间隔。如果不指定,只显示一条结果。 

count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。 

-d:显示磁盘相关统计信息。 

-p:显示指定磁盘分区统计信息 

-S:使用指定单位显示。参数有 k 、K 、m 、M,分别代表1000、1024、1000000、1048576字节(byte)。默认单位为K(1024 bytes) 

-V:显示vmstat版本信息。

4 使用实例:

01

实例1:显示进程信息:

命令:

vmstat

输出:

df03270189c6526096cf546810e229d8.png

说明:

procs:

r 列表示运行和等待cpu时间片的进程数,如果长期大于1,说明cpu不足,需要增加cpu。

b 列表示在等待资源的进程数,比如正在等待I/O、或者内存交换等。memory:

swpd 切换到内存交换区的内存数量(k表示)。如果swpd的值不为0,或者比较大,比如超过了100m,只要si、so的值长期为0,系统性能还是正常 

free 当前的空闲页面列表中内存数量(k表示) 

buff 作为buffer cache的内存数量,一般对块设备的读写才需要缓冲。 

cache: 作为page cache的内存数量,一般作为文件系统的cache,如果cache较大,说明用到cache的文件较多,如果此时IO中bi比较小,说明文件系统效率比较好。 

swap:

si 由内存进入内存交换区数量

so由内存交换区进入内存数量。 

IO:

bi 从块设备读入数据的总量(读磁盘)(每秒kb) bo 块设备写入数据的总量(写磁盘)(每秒kb) 这里我们设置的bi+bo参考值为1000,如果超过1000,而且wa值较大应该考虑均衡磁盘负载,可以结合iostat输出来分析。

system 显示采集间隔内发生的中断数:

in 列表示在某一时间间隔中观测到的每秒设备中断数。

cs列表示每秒产生的上下文切换次数,如当 cs 比磁盘 I/O 和网络信息包速率高得多,都应进行进一步调查。

cpu 表示cpu的使用状态:

us 列显示了用户方式下所花费 CPU 时间的百分比。us的值比较高时,说明用户进程消耗的cpu时间多,但是如果长期大于50%,需要考虑优化用户的程序。

sy 列显示了内核进程所花费的cpu时间的百分比。这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足。

id 列显示了cpu处在空闲状态的时间百分比 

wa 列显示了IO等待所占用的CPU时间的百分比。这里wa的参考值为30%,如果wa超过30%,说明IO等待严重,这可能是磁盘大量随机访问造成的,也可能磁盘或者磁盘访问控制器的带宽瓶颈造成的(主要是块操作)。 

02

实例2:每2秒采集一次

命令:

vmstat 2

输出:

38b9024c3f67d79c8d1b3c22ea0dfe64.png

这表示vmstat每2秒采集数据,一直采集,直到我结束程序,这里采集了4次数据我就结束了程序。

03

实例3:显示时间戳

命令:

vmstat -t 

输出:

fceed34f63cd02186d653891dfd07773.png

使用-t参数可以在输出信息的每一行显示一个时间戳。某些版本可能不支持该参数。

猜您喜欢往期精选▼

常见的linux命令

linux性能监控:CPU监控命令之top命令

致Linux运维:当你的服务器被黑了,一定要看看是不是犯了这5点错

Linux vi/vim操作入门到精通(图文版)

网络分析shell脚本(实时流量+连接统计)

CentOS yum 源的配置与使用

Linux一键配置工具ezhttp介绍

Centos系统安全配置

系统加固之Linux安全加固

END

024af6266c1ff33ccb2a68de6d6c701a.png

▼更多精彩推荐,请关注我们▼

891d53107cae8e003ea49dec9e6b42ae.gif

生活不止眼前的苟且,

还有课本里的诗和到不了的远方

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值