1. 监控脚本 在Master节点和Slave节点 /etc/keepalived目录下添加check_nginx.sh 文件,用于检测Nginx的存活状况 #!/bin/bash #时间变量,用于记录日志 d=`date --date today +%Y%m%d_%H:%M:%S` #计算nginx进程数量 n=`ps -C nginx --no-heading|wc -l` #如果进程为0,则尝试启动nginx,并且再次检测nginx进程数量, #如果还为0,说明nginx无法启动,此时需要关闭keepalived if [ $n -eq "0" ]; then #如果挂掉了,就启动nginx #注意nginx.conf配置文件的位置 #尝试重新启动nginx /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf sleep 3 #睡眠3秒 n2=`ps -C nginx --no-heading|wc -l` if [ $n2 -eq "0" ]; then #把nginx宕机时间写入日志 echo "$d nginx down,keepalived will stop" >> /usr/local/nginx/logs/check_ng.log #启动失败,将keepalived服务杀死。将vip漂移到其它备份节点 service keepalived stop fi fi 授权: chmod 755 /etc/keepalived/check_nginx.sh 2. 非抢占模式 在Master 节点 /etc/keepalived目录下,配置keepalived.……

阅读全文