image.png

    1.准备两台虚拟机分别为 : 192.168.11.110 , 192.168.11.120 ; 分别装上nginx,keepalived
    yum install keepalived -y

    2.进入/etc/keepalived/keepalivec.conf 配置文件修改

    1. global_defs {
    2. notification_email {
    3. acassen@firewall.loc
    4. failover@firewall.loc
    5. sysadmin@firewall.loc
    6. }
    7. notification_email_from Alexandre.Cassen@firewall.loc
    8. smtp_server 192.168.11.120 #本地主机名
    9. smtp_connect_timeout 30
    10. router_id LVS_DEVEL
    11. }
    12. vrrp_script chk_http_port {
    13. script "/usr/local/src/nginx_check.sh"
    14. interval 2 #(检测脚本执行的间隔)
    15. weight 2
    16. }
    17. vrrp_instance VI_1 {
    18. state BACKUP #备份服务器上将 MASTER 改为 BACKUP
    19. interface ens33 //网卡
    20. virtual_router_id 51 # 主、备机的 virtual_router_id 必须相同
    21. priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小
    22. advert_int 1
    23. authentication {
    24. auth_type PASS
    25. auth_pass 1111
    26. }
    27. virtual_ipaddress {
    28. 192.168.11.50 // VRRP H 虚拟地址
    29. }
    30. }

    3.在/usr/local/src 添加检测脚本
    nginx_check.sh

    1. #!/bin/bash
    2. A=`ps -C nginx –no-header |wc -l`
    3. if [ $A -eq 0 ];then
    4. /usr/local/nginx/sbin/nginx
    5. sleep 2
    6. if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then
    7. killall keepalived
    8. fi
    9. fi

    4.启动nginx可keepalived
    ./nginx
    systemctl start keepalived.service
    5.测试: 输入192.168.11.50,关掉自己服务器(192.168.11.110) 和keeplived,在输入