微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 HAProxy 上的故障转移时使 keepalived 响应?

如何解决如何在 HAProxy 上的故障转移时使 keepalived 响应?

我使用 HAProxy 作为我的应用程序的负载平衡器并使其高度可用,我使用了 keepalive 服务和浮动 ip 地址概念。但是,每当我的主要负载平衡器服务器出现故障时,通过将其从网络中删除或将其关闭,我的所有服务都会关闭,而不是使辅助负载平衡器服务器可用。 我的主服务器 keepalived.conf 是,

global_defs
{
        # Keepalived process identifier
        lvs_id haproxy_DH
}
# Script used to check if HAProxy is running
vrrp_script check_haproxy
{
        script "pidof haproxy"
        interval 2
        weight 2
}
# Virtual interface
vrrp_instance VI_01
{
        state MASTER
        interface eno16777984           #here eth0 is the name of network interface
        virtual_router_id 51
        priority 101
        # The virtual ip address shared between the two loadbalancers
        virtual_ipaddress {
                172.16.231.162
        }
        track_script {
                check_haproxy
        }
}

对于备份服务器来说,

global_defs
{
        # Keepalived process identifier
        lvs_id haproxy_DH_passive
}
# Script used to check if HAProxy is running
vrrp_script check_haproxy
{
        script "pidof haproxy"
        interval 2
        weight 2
}
# Virtual interface
vrrp_instance VI_01
{
        state BACKUP
        interface eno16777984           #here eth0 is the name of network interface
        virtual_router_id 51
        priority 100
        # The virtual ip address shared between the two loadbalancers
        virtual_ipaddress {
                172.16.231.162
        }
        track_script {
                check_haproxy
        }
}

当两个负载平衡器都启动时,虚拟 IP 地址被分配并工作。但是每当机器出现故障时,我的服务也会出现故障。我正在使用 CentOS7,请帮忙。

解决方法

使用这个,

global_defs {

router_id ovp_vrrp

} vrrp_script haproxy_check { 脚本“killall -0 haproxy” 间隔2 重量 2 }

vrrp_instance OCP_EXT { 接口ens192

virtual_router_id 51

优先级 100 状态大师 虚拟IP地址{ 10.19.114.231 dev ens192

} track_script { haproxy_check } 验证 { auth_type 通行证 auth_pass 1cee4b6e-2cdc-48bf-83b2-01a96d1593e4 } }

更多信息:阅读此处,https://www.openshift.com/blog/haproxy-highly-available-keepalived

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?