keepalived + nginx负载均衡,无法访问VIP

时间:2015-12-22 09:55:16

标签: nginx load-balancing reverse-proxy

  1. 服务器A(主):nginx 1.9.9 + keepalived 1.2.19,IP:9.110.95.90
  2. 服务器B(备份):nginx 1.9.9 + keepalived 1.2.19,IP:9.110.95.91
  3. VIP(虚拟IP):9.110.95.95
  4. nginx绑定所有接口。

    iptables配置:

     iptables -I INPUT -i eth1 -d 224.0.0.0/8 -p vrrp -j ACCEPT
     iptables -I OUTPUT -o eth1 -d 224.0.0.0/8 -p vrrp -j ACCEPT
    

    Keepalived配置:

    • 服务器A
    global_defs {
        router_id LVS_MASTER
    }
    
    vrrp_script chk_nginx {
        script "killall -0 nginx"
        interval 2
    }
    
    vrrp_instance VI_1 {
        state MASTER
        interface eth1
        virtual_router_id 51
        priority 150
        advert_int 1
    
        authentication {
            auth_type PASS
            auth_pass my_pass
        }
    
        virtual_ipaddress {
            9.110.95.95
        }
    
        track_script {
           chk_nginx
        }
    }
    
    • 服务器B
    global_defs {
        router_id LVS_BACKUP
    }
    
    vrrp_script chk_nginx {
        script "killall -0 nginx"
        interval 2
    }
    
    vrrp_instance VI_1 {
        state BACKUP
        interface eth1
        virtual_router_id 51
        priority 100
        advert_int 1
    
        authentication {
            auth_type PASS
            auth_pass my_pass
        }
    
        virtual_ipaddress {
            9.110.95.95
        }
    
        track_script {
           chk_nginx
        }
    }
    

    在访问VIP(9.110.95.95)时开始工作正常,如果在主节点上停止keepalived,它也会成功故障转移到备份节点。

    一切似乎都很好,但是客户端在一段时间之后无法访问VIP,可能是几分钟。如果访问服务器A / B IP(9.110.95.90,9.110.95.91),它可以工作。

    不确定是什么问题,有什么想法吗?

    由于

0 个答案:

没有答案
相关问题