您的位置:首页 > 运维架构

系统监控命令

2013-09-04 00:40 218 查看
iostat

我们从iostat命令本身说起



首先在这个状态下所有的数据都是基于服务器开启到目前时间点的统计和来计算的

ave-cpu的值代表的是所有cpu使用率的平均值

Device下显示的是该台服务器所挂载的硬盘的io情况的统计

1、tps代表每秒进程发起的io请求数量

2、Blk_read/s代表平均每秒读取扇区的数目(一个扇区512Byte,如果你看的不习惯可以用-k这个参数让它显示的单位变成kB_read/s)

3、Blk_wrtn/s代表平均每秒写的扇区的数目

4、Blk_read统计时间内总共读取的扇区数

5、Blk_wrtn统计时间内总共写的扇区数

当然此时的统计时间是指开机到目前时间点,如何设定统计时间间隔呢?不妨尝试下iostat -d  [ 统计时间间隔 ]   [统计次数]

如下图所示则代表以10秒的统计时间间隔统计5次



当然,第一个瞬间刷出来的结果会和只打iostat一样。个人觉得是因为在执行命令的瞬间不能统计当前时间减去统计时间间隔的数据。所以我们可以在第二个周期获得你想要的数据。

当你觉得上述性能不足以让你了解服务器目前io的情况的话,你可以尝试使用扩展的iostat,即iostat  -x



下面让我们来解释下这些参数的意义

rrqm/s  每秒文件系统对同一个块的读合并的次数

wrqm/s 每秒文件系统对同一个块的写合并的次数

r/s 每秒钟完成的读的次数

w/s 每秒钟完成的写的次数

rsec/s  每秒钟读的扇区数(可以用-k显示kB数)

wsec/s  每秒钟写的扇区数

avgrq-sz 每次io请求的平均扇区数

avgqu-sz 请求队列中的任务长度

await 平均每次io请求需要的时间(包括等待和处理的时间,单位为毫秒)

svctm  平均每次io请求需要的处理时间(单位为毫秒)

%util 采用周期内用于IO操作的时间比率,即IO队列非空的时间比率(util = (r/s+w/s) * (svctm/1000))

free 



首先单纯使用free的时候显示的单位都是KB

Mem那一行代表的是操作系同级别的内存使用情况,其中buffers和cached分别代表写和读的缓存

A buffer is something that has yet to be "written" to disk. 

A cache is something that has been "read" from the disk and stored for later use.
buffers和cached作为系统的缓存空间是可以回收的。
下一行则是从应用程序角度来查看内存的使用情况情况。总的使用情况是要减去buffers和cached的和
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息