服务器宕机监控

背景:服务器会出现宕机的情况,影响发布的应用,集群中的服务器一般不会同时宕机,这里采用服务器间互相ping的方式。若ping不同则调用发送短信的jar包,向维护人员发送一条告警短信。(假设有3台机器1,2,3)

机器1脚本
#!/bin/bash
date="`date -d"-0 day" +%Y-%m-%d-%H-%M`"
###机器2
ping -w 5 -c 3 机器2ip      //-w 5 设置超时时间5s,-c 3ping3次
str=$?                                //上条命令的执行后的返回结果,通了0,不通1
if [ $str -ne 0 ];then
echo "机器2:异常!">> 监控日志_$date.txt  //记录日志文件
java -jar sendSMS.jar                    //执行发送短信的jar包
fi
echo "机器2:正常!">>监控日志_bak_$date.txt  
###机器3
ping -w 5 -c 3 机器3ip
str=$?
if [ $str -ne 0 ];then
echo "机器3:异常!">> 监控日志_$date.txt
java -jar sendSMS.jar 
fi
echo "机器3:正常!">>监控日志_bak_$date.txt

机器2脚本
#!/bin/bash
date="`date -d"-0 day" +%Y-%m-%d-%H-%M`"
###机器1
ping -w 5 -c 3 机器1ip
str=$?
if [ $str -ne 0 ];then
echo "机器1:异常!">> 监控日志_$date.txt
java -jar sendSMS.jar 
fi
echo "机器1:正常!">>监控日志_bak_$date.txt
###机器3
ping -w 5 -c 3 机器3ip
str=$?
if [ $str -ne 0 ];then
echo "机器3:异常!">> 监控日志_$date.txt
java -jar sendSMS.jar 
fi
echo "机器3:正常!">>监控日志_bak_$date.txt

机器3脚本
#!/bin/bash
date="`date -d"-0 day" +%Y-%m-%d-%H-%M`"
###机器1
ping -w 5 -c 3 机器1ip
str=$?
if [ $str -ne 0 ];then
echo "机器1:异常!">> 监控日志_$date.txt
java -jar sendSMS.jar 
fi
echo "机器1:正常!">>监控日志_bak_$date.txt
###机器2
ping -w 5 -c 2 机器3ip
str=$?
if [ $str -ne 0 ];then
echo "机器2:异常!">> 监控日志_$date.txt
java -jar sendSMS.jar 
fi

echo "机器2:正常!">>监控日志_bak_$date.txt

然后将各个服务器的脚本在crontab 下定时就可以了

本人原创,转载请注明出处

猜你喜欢

转载自blog.csdn.net/qq_34485930/article/details/79878280