在使用宝塔面板中常常会出现网站不能访问,数据库中断等意想不到的问题,为了防止此问题发生可在宝塔面板里设置计划任务运用脚本来实现全自动运维。
Nginx监控
#!/bin/bash
# Linux监控Nginx服务,关闭就自动重启
nginx_procnum=`ps -ef|grep "nginx"|grep -v grep|wc -l`
if [ $nginx_procnum -eq 0 ]
then
echo $(date) "Success,Nginx重启成功!" >> /var/log/nginxmonitor.log
/etc/init.d/nginx start
else
sleep 5
echo "Nginx正常运行中..."
fi
MySQL监控
#!/bin/bash
# Linux监控MySQL服务,关闭就自动重启
pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
bash /www/server/panel/script/rememory.sh
/etc/init.d/mysqld start
echo "监控到MySQL已停止,已执行重启计划,时间: `date "+%Y-%m-%d %H:%M:%S"` " >> /www/mysql_jiankong.log
fi
PHP监控(PHP56举例)
#!/bin/bash
# Linux监控PHP服务,关闭就自动重启
pgrep -x php-fpm &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/php-fpm-56 restart
echo "监控到php56已停止,已执行重启计划,时间: `date "+%Y-%m-%d %H:%M:%S"` " >> /www/php_jiankong.log
fi
redis监控
#!/bin/bash
# Linux监控redis服务,关闭就自动重启
pgrep -x redis &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/redis start
fi
memcached监控
# 添加memcached进程守护脚本方法
pgrep -x memcached &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/memcached restart
fi
添加方法:宝塔面板 -> 计划任务 -> 添加shell脚本
推荐设置1分钟,这样可以快速检测到各种服务是否正常,不正常会立即启动。
检测以下是否管用,可以到软件管理,里面手动暂停,然后来执行一下计划任务,看看是否生效。