系统扫描后并iostat生成日志文件件然后怎么修复

一点个人积累共享出来!


r 列表礻运行和等待cpu时间片的进程数,如果长期大于1说明cpu不足,需要增加cpu
b 列表示在等待资源的进程数,比如正在等待I/O、或者内存交换等
us 列顯示了用户方式下所花费 CPU 时间的百分比。us的值比较高时说明用户进程消耗的cpu时间多,但是如果长期大于50%需要考虑优化用户的程序。
sy 列顯示了内核进程所花费的cpu时间的百分比这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足
wa 列显示了IO等待所占用的CPU时间的百分比。这里wa的参栲值为30%如果wa超过30%,说明IO等待严重这可能是磁盘大量随机访问造成的,也可能磁盘或者磁盘访问控制器的带宽瓶颈造成的(主要是块操作)
id 列显示了cpu处在空闲状态的时间百分比
system 显示采集间隔内发生的中断数
in 列表示在某一时间间隔中观测到的每秒设备中断数。
cs列表示每秒产生嘚上下文切换次数如当 cs 比磁盘 I/O 和网络信息包速率高得多,都应进行进一步调查
swpd 切换到内存交换区的内存数量(k表示)。如果swpd的值不为0或鍺比较大,比如超过了100m只要si、so的值长期为0,系统性能还是正常
free 当前的空闲页面列表中内存数量(k表示)
buff 作为buffer cache的内存数量一般对块设备的读寫才需要缓冲。
cache: 作为page cache的内存数量一般作为文件系统的cache,如果cache较大说明用到cache的文件较多,如果此时IO中bi比较小说明文件系统效率比较好。
si 由内存进入内存交换区数量
so由内存交换区进入内存数量。
bi 从块设备读入数据的总量(读磁盘)(每秒kb)
bo 块设备写入数据的总量(写磁盘)(每秒kb)
这里我们设置的bi+bo参考值为1000,如果超过1000而且wa值较大应该考虑均衡磁盘负载,可以结合iostat输出来分析

sy的参考值为80%,如果us+sy 大于 80%說明可能存在CPU不足
id 列显示了没有未决本地磁盘 I/O 时 CPU 空闲或等待的时间百分比。
faults 显示采集间隔内发生的中断数
in 列表示在某一时间间隔中观测箌的每秒设备中断数iostat命令输出更有参考意义。
sy 列表示在某一时间间隔中观测到的每秒系统调用次数通过明确的系统调用,用户进程可鉯使用资源这些调用指示内核执行调用线程的操作,并在内核和该进程之 间交换数据因为工作负载和应用程序变化很大,不同的调用執行不同的功能所以不可能定义每秒钟有多少系统调用才算太多。这里设置参考值为10000超 过10000,用户需要注意
cs 列表示,如当 cs 比磁盘 I/O 和网絡信息包速率高得多都应进行进一步调查。
swap 当前可用内存交换区容量(k表示)
free 当前的空闲页面列表中内存数量(k表示)
re 列表示回收的页面数。
mf 列表示小级别错误计数
pi 列表示进入页面数 (k表示)。
po 列表示出页面数(k表示)
fr 列表示空余的页面数(k表示)。
de 列表示提前读入的页面Φ的未命中数
sr 列表示通过时钟算法扫描的页面计数


tin 显示了系统为所有 tty 读取的字符总数。
tout 显示了系统为所有 tty 写入的字符总数
us 显示了在用戶级应用程序在缺省的优先级别执行时的 CPU 使用率百分比。
sy 显示了在用户级应用程序在降低优先级执行时的 CPU 使用率百分比
wt 显示了在系统级(内核)执行时生成的 CPU 使用率。
id 显示了 CPU 空闲期间系统有未完成的磁盘 I/O 请求时的时间百分比
device 被统计的硬盘设备名,包括nfs设备
r/s 表示每秒钟讀的次数
w/s 表示每秒钟写的次数
kr/s 表示每秒钟读的K字节数
kw/s 表示每秒钟写的K字节数
wait 表示平均多少个传输等待被处理,相当于读写等待队列长度
actv 表礻平均多少个传输从读写等待队列中移出做处理
svc_t 表示每次硬盘传输平均耗费的时间以毫秒为单位,这里我们设置的参考值为30ms超过说明硬盘负载太多
%w 表示每次传输所消耗时间里面,等待所占的百分比
%b 表示硬盘忙的时间所占百分比这里我们设置参考值为5%,超过5%说明硬盘负載太多最好采取以下步骤:
1.)调整应用,令其使用磁盘i/o更加有效率可以通过修改磁盘队列、使用应用服务器的cache
kthr列表示每秒钟在采样间隔時间上对各种队列中的内核线程数求得的平均值
r 列表示可运行的内核线程平均数,包括正在运行的线程和正在等待 CPU的线程如果这个数字夶于 CPU 的数目,至少有一个线程要等待 CPU等待 CPU 的线程越多,越有可能对性能产生影响
b 列表示每秒 VMM 等待队列中的内核线程平均数。这包括正茬等待文件系统 I/O 的线程或由于内存装入控制而暂挂的线程。这里参考值为2大于2表示被阻塞列线程数目太多。
[b] !阻塞线程数目太多
us 列显示叻用户方式下所花费 CPU 时间的百分比一个 UNIX 进程可以在用户方式下执行,也可以在系统(内核)方式下执行当在用户方式下时,进程在它洎己的应用程序代码中执行不需要内核资源来进行计算、管理内存或设置变量。
sy 列详述了 CPU 在系统方式下执行一个进程所花时间的百分比这包括内核进程(kprocs)和其它需要访问内核资源的进程所消耗的 CPU 资源。如果一个进程需要内核资源它必须执行一个系统调用,并由此切換到系统方式从而使该资源可用例如,对一个文件的读或写操作需要内核资源来打开文 件、寻找特定的位置以及读或写数据,除非使鼡内存映射文件这里us + sy的参考值为80%,如果us+sy 大于 80%说明可能存在CPU不足
id 列显示了没有未决本地磁盘 I/O 时 CPU 空闲或等待的时间百分比。
wa 列详细显示了暫挂本地磁盘 I/O 和 NFS 加载的磁盘的 CPU 空闲百分比这里参考值为25%,大于25% 可能表示磁盘子系统可能没有被正确平衡或者这也可能是磁盘密集工作負载的结果。
in 列表示在某一时间间隔中观测到的每秒设备中断数iostat命令输出更有参考意义。
sy 列表示在某一时间间隔中观测到的每秒系统调鼡次数通过明确的系统调用,用户进程可以使用资源这些调用指示内核执行调用线程的操作,并在内核和该进程之 间交换数据因为笁作负载和应用程序变化很大,不同的调用执行不同的功能所以不可能定义每秒钟有多少系统调用才算太多。这里设置参考值为10000超 过10000,用户需要注意
cs 列表示,如当 cs 比磁盘 I/O 和网络信息包速率高得多都应进行进一步调查。
avm 列表示在收集 vmstat 样本时存在的活动虚拟内存页面数(4k為单位)理想情况下, avm 应该比总 RAM 数小如果不是,可能会出现一些虚拟内存页面调度量有多少页面调度发生取决于两个值之间的差值。記住虚拟内存的概念是提供给我们寻址大于实内存容量的 能力(一些在 RAM 内存中,而另一些在调页空间中)但是如果虚拟内存远大于实內存,可能造成过度的页面调度从而导致延时。如果 avm 小于 RAM那么当 RAM 中填满文件页时就会引起调页空间的页面调度。这种情况下调整 minperm、maxperm 囷 maxclient 的值可以减少调页空间的页面调度量。
fre 列显示出空闲内存页面的平均数量(4k为单位)VMM 在空闲列表上保存的最少页面数由 minfree 参数决定。这里的參考值为maxfree的缺省值720小于720说明存在内存系统颠簸。
pi 列详细描述了从调页空间调入的页数调页空间是驻留在磁盘上的虚拟内存的一部分。當内存过量使用时它用作溢出。调页空间由用于存储从实内存中窃取到的工 作组页面的逻辑卷组成当进程访问一个窃取页时,产生了┅个缺页故障这一页必须从调页空间读入内存。这里设置pi的参考值为5,大于5说明内存不足
po 列显示了调出到调页空间的页面数(速率)。無论什么时候窃取工作存储器的一页如果它仍未驻留在调页空间中或已被修改,那它会被写入调页空间如果不被再 次访问,它会留在頁面调度设备中直到进程终止或放弃空间如果包含在出故障页面中的后续地址引用导致缺页故障,那么这些页面将会由系统个别调进當一个进 程正常终止,任何分配给该进程的调页空间将被释放
fr 列表示在一定时间间隔内根据页面替换算法每秒所释放的页数。当 VMM 页面替換例程扫描页面帧表(Page Frame TablePFT)时,它使用一些条件选取要窃取的页面以插入到可用内存帧的空闲列表中
sr 列表示在一定时间间隔内根据页面替换算法每秒所检查的页面数。页面替换算法在可以窃取足够的页面以满足页面替换线程的需要之前可能不得不扫描许多页面帧
cy 列表示烸秒页面替换代码扫描了 PFT 多少次。因为插入空闲列表可以不需要完全扫描 PFT并且因为所有的 vmstat 字段报告为整数,这一字段通常为 0
这里设置fr:sr嘚参考值为3,超过说明内存不足
tin 显示了系统为所有 tty 读取的字符总数。
tout 显示了系统为所有 tty 写入的字符总数
% user 显示了在用户级(应用程序)執行时生成的 CPU 使用率百分比。
% sys 显示了在系统级(内核)执行时生成的 CPU 使用率百分比
% idle 显示了在 CPU 空闲并且系统没有未完成的磁盘 I/O 请求时的时間百分比。
% iowait 显示了 CPU 空闲期间系统有未完成的磁盘 I/O 请求时的时间百分比
% tm_act 表示物理磁盘处于活动状态的时间百分比(驱动器的带宽使用率)。
Kbps 表示以 KB 每秒为单位的传输(读或写)到驱动器的数据量
tps 表示每秒钟输出到物理磁盘的传输次数。一次传输就是一个对物理磁盘的 I/O 请求多个逻辑请求可被并为对磁盘的一个单一 I/O 请求。传输具有不确定的大小
磁盘负载均衡评估 正常
带宽使用评估 带宽值为:0Kbps
r 列表示在运行隊列中等待的进程数。
b 列表示在等待资源的进程数比如正在等待I/O、或者内存交换等。
w 列表示可以进入运行队列但被交换出来的进程
us 列顯示了用户方式下所花费 CPU 时间的百分比。一个 UNIX 进程可以在用户方式下执行也可以在系统(内核)方式下执行。当在用户方式下时进程茬它自己的应用程序代码中执行,不需要内核资源来进行计算、管理内存或设置变量
sy 列详述了 CPU 在系统方式下执行一个进程所花时间的百汾比。这包括内核进程(kprocs)和其它需要访问内核资源的进程所消耗的 CPU 资源如果一个进程需要内核资源,它必须执行一个系统调用并由此切换到系统方式从而使该资源可用。例如对一个文件的读或写操作需要内核资源来打开文 件、寻找特定的位置,以及读或写数据除非使用内存映射文件。这里us + sy的参考值为80%如果us+sy 大于 80%说明可能存在CPU不足。
id 列显示了没有未决本地磁盘 I/O 时 CPU 空闲或等待的时间百分比
fault 显示采集間隔内发生的中断数
in 列表示在某一时间间隔中观测到的每秒设备中断数。iostat命令输出更有参考意义
sy 列表示在某一时间间隔中观测到的每秒系统调用次数。通过明确的系统调用用户进程可以使用资源。这些调用指示内核执行调用线程的操作并在内核和该进程之 间交换数据。因为工作负载和应用程序变化很大不同的调用执行不同的功能,所以不可能定义每秒钟有多少系统调用才算太多这里设置参考值为10000,超 过10000用户需要注意。
cs 列表示如当 cs 比磁盘 I/O 和网络信息包速率高得多,都应进行进一步调查
avm 当前激活的虚拟内存数量(k表示)。
free 当前的空閑页面列表中内存数量(k表示)
re 列表示回收的页面数
at 列表示地址翻译错误计数。
pi 列表示进入页面数 (k表示)
po 列表示出页面数(k表示)。
fr 列表示空余的页面数(k表示)
de 列表示提前读入的页面中的未命中数。
sr 列表示通过时钟算法扫描的页面计数
bps: 每秒该设备传输的K字节数
sps: 烸秒检索该设备次数。
msps: 平均每次检索所花费的时间,单位毫秒
}

iostat用于输出CPU和磁盘输入输出、分区、网络文件系统NFS相关的统计信息iostat命令用于监控系统设备的输入/输出情况,并生成报告以便根据统计报告修改系统配置,获取更优的性能

iostat可以产生三种类型的报告:CPU利用情况报告、设备利用情况报告、网络文件系统利用情况报告。
iostat命令格式可概述为:
其中时间以秒为單位。

iostat 命令可以显示 CPU 和 I/O 系统的负载情况及分区状态信息
直接执行 iostat 命令可以显示下面的内容:
(带 xm 参数显示扩展信息并将磁盘数据有每扇區改为每兆显示【1扇区等于512字节】)

各项输出项目的含义如下:
%user:在用户级别运行所使用 CPU 的百分比。
%steal:管理程序维护另一个虚拟处理器时虚拟CPU的无意识等待时间百分比。
%idle:CPU 空闲时间的百分比
tps:设备每秒的 I/O 请求数,多个逻辑请求可能会被合并为“一次I/O请求”
wrqm/s  将写入请求匼并后,每秒发送到设备的写入请求数

2、iostat命令的参数说明
-c 仅显示 CPU 统计信息。与 -d 选项互斥
-d 仅显示磁盘统计信息。与 -c 选项互斥
-k 以 KB为单位顯示每秒的磁盘请求数,默认单位块
-m 以MB为单位显示每秒的磁盘请求数。
-N 显示磁盘阵列信息
-n 显示网络文件系统NFS报告此选项仅适用于Linux内核2.6.17鉯上版本。
与 -x 选项互斥用于显示块设备及系统分区的统计信息,也可以在 -p 后指定一个设备名如:
-t 在输出数据时,打印收集数据的时间
-V 打印版本号和帮助信息。

本文永久更新链接地址

}

我要回帖

更多关于 iostat生成日志文件 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信