使用 HAproxy 和 keepalived 的连接同步建议

gol*_*ere 5 centos connection haproxy keepalived

我设法使用 keepalived 使 HAproxy 在故障转移配置中工作,如Architecture.txt文档中的建议。

我使用了 CentOS 5.5、来自 epel 存储库的 HAproxy rpm (haproxy-1.3.25-1.el5) 和来自 CentOS 测试存储库的 keepalived rpm (keepalived-1.1.15-0.el5.centos)。

这是我的 keepalived 配置

vrrp_script chk_haproxy {           # Requires keepalived-1.1.13
    script "killall -0 haproxy"     # cheaper than pidof
    interval 2                      # check every 2 seconds
    weight 2                        # add 2 points of prio if OK
}

vrrp_instance VI_1 {
    interface eth0
    state MASTER
    virtual_router_id 51
    priority 101                    # 101 on master, 100 on backup
    virtual_ipaddress {
    10.0.0.30            
    10.0.0.31            
    }
    track_script {
        chk_haproxy
    }
}
Run Code Online (Sandbox Code Playgroud)

我现在想要的是让我的备份节点能够在主节点发生故障时接管打开的实际连接。

我听说这可以通过多种方式(conntrackd)、使用 LVS 功能等来完成...我想就最简单、更强大的方式来实现它提出建议,使用可用的 rpm 是最好的。

谢谢G

qua*_*nta 2

lvs_sync_daemon_inteface选项使 MASTER 能够保存连接状态并将其与 BACKUP 同步。尝试这个:

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    lvs_sync_daemon_interface eth0
    virtual_router_id 51
    priority 101                    # 101 on master, 100 on backup
    virtual_ipaddress {
    10.0.0.30            
    10.0.0.31            
    }
    track_script {
        chk_haproxy
    }
}
Run Code Online (Sandbox Code Playgroud)