最近在工作中,遇到了IO使用率过高告警。但是移动的系统又很严格,不能随便安装监控开源软件。这里我只能通过向方法使用脚本去完成监控。
监控方法如下:
1、安装iotop软件(centos7默认是有这个包):
2、使用iotop -obt >> testfile.txt 重定向到testfile文件(意思是将实时在使用磁盘的程序显示):
3、自己写个脚本查看监控情况,写好脚本。我这里抓取的信息是时间,磁盘读写转数、使用率、进程名。然后写到计划任务里面去就可以去做日志提取了。(提取日志自己研究了)
[root@master ~]# cat iotest.sh
#!/bin/bash
IFS=$'\n'
for i in $(grep `date +"%H:%M"` testfile.txt | grep "%" | awk '{if($11>=0.5) {print $1"\t",$5,$6"\t",$7,$8"\t",$9,$10"\t",$11,$12"\t",$13}}')
do
echo `date +"%Y-%m-%d"` $i
done
4、最后做个计划任务每十秒去执行脚本(这个根据自己情况定);
* * * * * sleep 00; /root/iotest.sh >> iotest.txt &
* * * * * sleep 10; /root/iotest.sh >> iotest.txt &
* * * * * sleep 20; /root/iotest.sh &g