linux服务器硬盘监控-shell脚本

来源:互联网 发布:unity3d ios 录屏处理 编辑:程序博客网 时间:2024/04/30 15:57

一、监测系统硬盘根分区使用情况,当使用超过80%时报警

vim /scripts/hd-warning.sh 

  1. #取当前根分区(假如是/dev/sda3)已用的百份比值(只取整数部分)  
  2. disk_sda3=`df -h | grep /dev/sda3 | awk '{print $5}' | cut -f 1 -d "%"`  
  3.  
  4. #设置空闲硬盘容量的告警值为80%,如果当前硬盘使用超过80%,立即发邮件告警  
  5. if (($disk_sda3 > 80)); then  
  6.       echo "$IP 服务器 /根分区 使用率已经超过80%,请及时处理。" | mutt -s "$IP 服务器硬盘告警"  test@163.com  
  7. fi   

二、使用top查看io性能


大家观察Cpu(s)这行的0.0%wa,这个是说I/O等待所占用的cpu时间比,一般来说,超过30%时I/O压力较大(本人没有测试0.0!)

三、使用iostat查看io性能

注意:使用iostat时请先安装   #yum -y install sysstat(这里需要安装sysstat,安装后就可以执行iostat)


1、%iowait :IO等待时间,这里取得是平均值,可以从top看出wa数值在%iowai左右波动,因此这里取得结论和上面一样。

2、%util:一秒内IO操作所占的比例,如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。

3、%idle:cpu空闲所占比率,这个的话相当于一个参考,空闲太低,io等待回越长。。。。

四、使用硬盘操作查看工具 iotop查看io详细情况

请先安装

#yum -y install iotop

如果你知道有程序在磨你的硬盘,但是你又不能确定是哪一个程序在磨你的硬盘,那么就用 iotop来帮助你吧。它可以实时监测进程对硬盘的读写操作!


用法 iotop -参数

-–version 查看版本信息的

-h, -–help 查看帮助信息的

-o, –only 只显示在划硬盘的程序
-b, –batch 批量处理 用来记录日志的

-n NUM  设定循环几次

-d SEC, –-delay=SEC  设定显示时间间隔。

0 0
原创粉丝点击