一、主keepAlived配置
vrrp_instance VI_1 { state MASTER #主備區分 interface eth0 virtual_router_id 51 #主備一致 priority 100 #主備區分 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } track_script { chk_nginx } }二、備keepAlived配置
vrrp_instance VI_1 { state BACKUP #主備區分 interface eth0 virtual_router_id 51 #主備一致 priority 50 #主備區分 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } }
一、第一臺keepAlived配置
vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } } vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 52 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 2222 } virtual_ipaddress { 192.168.244.201 } }二、第二臺keepAlived配置
vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } } vrrp_instance VI_2 { state MASTER interface eth0 virtual_router_id 52 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 2222 } virtual_ipaddress { 192.168.244.201 } }
一、第一臺keepAlived配置
vrrp_script chk_nginx { script "/zjl/program/nginx/conf/checkNginxAlived.sh" interval 2 weight 2 } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } track_script { chk_nginx } } vrrp_instance VI_2 { state BACKUP interface eth0 virtual_router_id 52 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 2222 } virtual_ipaddress { 192.168.244.201 } track_script { chk_nginx } }
二、第二臺keepAlived配置
vrrp_script chk_nginx { script "/zjl/program/nginx/conf/checkNginxAlived.sh" interval 2 weight 2 } vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 51 priority 50 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.244.200 } track_script { chk_nginx } } vrrp_instance VI_2 { state MASTER interface eth0 virtual_router_id 52 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 2222 } virtual_ipaddress { 192.168.244.201 } track_script { chk_nginx } }
三、監測腳本
#!/bin/bash psnginx=`ps -C nginx --no-heading|wc -l` if [ $psnginx == 0 ] ; then echo "nginx服務已關閉,嘗試從新啓動..." /zjl/commond/nginxbegin-start.sh sleep 3 if [ `ps -C nginx --no-heading|wc -l` -eq 0 ] ; then echo "nginx嘗試啓動失敗關閉keepAlived" killall keepalived else echo "nginx從新啓動成功" fi else echo "nginx服務正常..." fi