Keepalived配置nginx自動重啟
1. 增加nginx 檢查腳本
vim /etc/keepalived/check_nginx_alive_or_not. sh
#!/bin/bash
A=`ps -C nginx --no-header | wc -l`
# 判斷nginx是否宕機,如果宕機嘗試重新啟動
if [ $A -eq 0 ];then
/usr/local/nginx/sbin/nginx
# 等待3秒檢查nginx 如果沒有啟動成功 則停止keepalived 啟動備用機
sleep 3
if [`ps -C nginx --no-header I wc -l` -eq 0 ];then
killall keepalived
fi
fi
# 增加運行權限
chmod +x /etc/keepalived/check_nginx_alive_or_not.sh
2. 配置keepalived監聽nginx腳本
vrrp_script check_nginx_alived {
script "/etc/keepalived/check_nginx_alive_or_not.sh"
interval 2 #每隔2秒運行一次
weight 10 # 運行成功 權重加10
}
3. 在vrrp_ instance 中新增監控腳本
track_script {
check_nginx_alive # 添加nginx腳本
}
4. 重啟keepalived使配置文件生效
systemctl restart keepalived