合格linux运维人员必会的30道shell编程实践题及讲解-13

企业实践题13:

1、监控web服务是否正常,不低于3种监控策略。

2、监控db服务是否正常,不低于3种监控策略。
要求间隔1分钟,持续监控。

我的脚本1==============

#!/bin/bash
[ -f /etc/init.d/functions ] && . /ect/init.d/functions
if [ `netstat -nelp |grep -w 80|wc -l` -ne 0 ];then
    action "web service" /bin/true
else
    action "web service" /bin/false

if [ `netstat -nelp|grep -w 3306|wc -l` -ne 0 ];then
     action "db service" /bin/true
else
     action "db service" /bin/false

用定时任务crontab控制监控间隔时间
*/1 * * * * /bin/bash /scripts/listen_service.sh

我的脚本2===============

#!/bin/bash
[ -f /etc/init.d/functions ] && . /ect/init.d/functions
if [ `ps aux|grep -w http|wc -l` -ne 0 ];then
    action "web service" /bin/true
else
    action "web service" /bin/false

if [ `ps aux|grep -w http|wc -l` -ne 0 ];then
     action "db service" /bin/true
else
     action "db service" /bin/false

用定时任务crontab控制监控间隔时间
*/1 * * * * /bin/bash /scripts/listen_service.sh

我的脚本3================

#!/bin/bash
[ -f /etc/init.d/functions ] && . /ect/init.d/functions
if [ "`curl -I http://127.0.0.1 2>/dev/null|head -1|egrep "200|302|301" -ne 0 ];then
    action "web service" /bin/true
else
    action "web service" /bin/false

if [ `mysql -uroot -p123456 -P 3306 -e "show databases;"|wc -l` -ne 0 ];then
     action "db service" /bin/true
else
     action "db service" /bin/false

用定时任务crontab控制监控间隔时间
*/1 * * * * /bin/bash /scripts/listen_service.sh

 

posted @ 2017-10-24 15:34  蓝瘦香菇の挨踢  阅读(449)  评论(0编辑  收藏  举报