shell脚本学习-性能分析-vmstat

下图可以看到 vmstat可以得到系统内存,交换分区,cpumio,系统进程等监控信息

shell脚本学习-性能分析-vmstat

 

参数:

vmstat n 【代表n秒刷新一次】

vmstat n  nn【代表n秒刷新一次,刷新nn次就不刷新了】

vmstat -a 显示活跃和非活跃内存,所显示的内容除增加inact和active

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

shell脚本学习-性能分析-vmstat

vmstat -s 查看内存使用的详细信息,显示内存相关统计信息及多种系统活动数量(信息主要来自/proc/meminfo,/proc/stat和/proc/vmstat)

shell脚本学习-性能分析-vmstat

vmstat -d 查看磁盘读写情况(信息主要来自/proc/diskstats.)

shell脚本学习-性能分析-vmstat

vmstat -p /dev/sda1:查看某个磁盘的读写
shell脚本学习-性能分析-vmstat

reads:来自于这个分区的读的次数。

read sectors:来自于这个分区的读扇区的次数。

writes:来自于这个分区的写的次数。

requested writes:来自于这个分区的写请求次数。

内容介绍

shell脚本学习-性能分析-vmstat

procs:

r:在跑(running)进程数量

b:处于中断状态(block)的进程数量

memory:

swpd:占用虚拟内存大小

free:空闲内存大小

buff:用做buffer的内存大小

cache:用作缓存的内存大小

swap:

si:每秒从交换区写到内存的大小

so:每秒写入交换区的内存大小

io:

bi:每秒读取的块数

bo:每秒写入的块数

system:

in:interrupt,每秒中断数

cs:count/second,每秒上下文切换数

cpu:

us:执行用户进程占用cpu

sy:执行内核进程占用cpu

id:空闲cpu

wa:用于等待IO完成的CPU百分比

st:虚拟机占用CPU百分比

 

使用案例

得到多次获取性能监控结果的平均值,例如下方是取的空闲cpu

vmstat 1 5 |sed -n '3,$p' |awk '{x = x + $15} END {print x/5}' |awk -F. '{print $1}'

shell脚本学习-性能分析-vmstat