我对Linux下存储管理和监控工具的缺乏感到非常不满,虽然如此,我还是积极在寻找适合的工具,除了等待更好的工具出现(或自己开发一款)外,我们必须好好利用现有工具的功能。
sysstat监控工具家族中的一员
在以前的文章中,我曾经介绍过iostat,它是sysstat监控工具家族中的一员,允许你监控分区或设备的性能,甚至可以监控CPU使用情况,它可以测量下面的指标:
? %user:执行发生在用户层时的CPU利用率百分比(它是应用程序使用的)
? %nice:执行发生在用户层,优先级为“nice”的CPU利用率百分比。
? %system:执行发生在系统层(内核)时的CPU利用率百分比。
? %iowait:系统处理未决的磁盘I/O请求期间,CPU空闲时间的百分比。
? %steal:hypervisor 为其它虚拟处理器服务时,虚拟CPU或CPU非自愿等待所花时间的百分比。
? %idle:CPU空闲时间的百分比。
? rrqm/s:每秒进入设备队列的读取请求数量。
? wrqm/s:每秒进入设备队列的写入请求数量。
? r/s:每秒发向设备的读取请求数量。
? w/s:每秒发向设备的写入请求数量。
? rMB/s:每秒从设备读取的MB数量。
? wMB/s:每秒写入设备的MB数量。
? avgrq-sz:发向设备的请求的平均大小。
? avgqu-sz:发向设备的请求的平均队列长度。
? await:发向设备的I/O请求的平均时间(ms),包括请求在队列中花的时间和处理队列的时间。
? svctm:发向设备的I/O请求的平均服务时间(ms)。
? %util:I/O请求发向设备期间的CPU时间百分比(设备带宽利用率),这个值接近100%时,设备就处于饱和状态。
正如你所看到的,使用iostat可以监控大量的指标,加上它可以监控CPU使用情况,因此它已成为我工具箱中的一员。
如果你使用了NFS服务器,iostat允许你监控服务器上发生的许多事情,如负载情况,此外,我们还要监控NFS客户端,如客户端挂在NFS文件系统时发生的事情,幸运的是,sysstat家族有一个类似于iostat的工具可以做到这一点,它就是nfsiostat。