常用监控名利-iostat

iostat :iostat可以给我们提供丰富的IO状态数据,从而确定IO性能是否存在瓶颈。   iostat -c :查看CPU的信息 常用监控名利-iostat   常用监控名利-iostatiostat -d:显示设备(磁盘)使用状态 常用监控名利-iostat   常用监控名利-iostat tps:该设备每秒的传输次数。“一次传输”意思是“一次I/O请求”。 kB_read/s:每秒从设备(drive expressed)读取的数据量; kB_wrtn/s:每秒向设备(drive expressed)写入的数据量; kB_read:读取的总数据量; kB_wrtn:写入的总数量数据量;这些单位都为Kilobytes。   iostat -x :输出更多的信息 常用监控名利-iostat   常用监控名利-iostat rrqm/s:每秒这个设备相关的读取请求有多少被合并了; wrqm/s:每秒这个设备相关的写入请求有多少被Merge了。 r/s: 每秒完成的读 I/O 设备次数。即 rio/s w/s: 每秒完成的写 I/O 设备次数。即 wio/s rsec/s:每秒读取的扇区数; wsec/:每秒写入的扇区数。 avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。 avgqu-sz: 平均I/O队列长度。 await:每一个IO请求的处理的平均时间(单位是毫秒)。这里可以理解为IO的响应时间,一般地系统IO响应时间应该低于5ms,如果大于10ms就比较大了。 svctm: 平均每次设备I/O操作的服务时间 (毫秒)。 %util:在统计时间内所有处理IO时间,除以总共统计时间。例如,如果统计间隔1秒,该设备有0.8秒在处理IO, 而0.2秒闲置,那么该设备的%util = 0.8/1 = 80%,所以该参数暗示了设备的繁忙程度。一般地,如果该参数是100%表示设备已经接近满负荷运行了(当然如果是多磁盘,即使%util是100%, 因为磁盘的并发能力,所以磁盘使用未必就到了瓶颈)。 如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明I/O 队列太长,io响应太慢,则需要进行必要优化。如果avgqu-sz比较大,也表示有当量io在等待。 另外 await 的参数也要多和 svctm 来参考。差的过高就一定有 IO 的问题。   svctm 一般要小于 await ,svctm 的大小一般和磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致 svctm 的增加。await 的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出模式。 如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明 I/O 队列太长,应用得到的响应时间变慢,如果响应时间超过了用户可以容许的范围,这时可以考虑更换更快的磁盘, 调整内核 elevator 算法,优化应用,或者升级 CPU。   iostat -d -k 1 10 #查看TPS和吞吐量信息 iostat -d -x -k 1 10 #查看设备使用率(%util)、响应时间(await) iostat -c 1 10 #查看cpu状态  

上一篇:Linux之8-----性能调优之iostat命令详解


下一篇:Linux iostat 命令用法