防止HAProxy从后备切换回主

我们有Redis的主从设置,我们希望一旦主设备出现故障就回退到从设备。 但是,如果失败了,即使主站再次联机,它也不应该回切换。

这可能吗?

有一个解决方法来做你所需要的。 简单地把rise参数放在一个非常高的值,几秒之间,如下面的例子:

 listen sql-cluster 0.0.0.0:1433 balance roundrobin server sql01 192.168.100.109:1433 check backup server sql02 192.168.100.180:1433 check inter 5s fall 3 rise 99999999 

在这个例子中, sql01backup ,而sql02是活动的。 如果主人closures, sql01就会启动。 对于sql02返回活动,它必须做99.999.999健康检查,间隔5秒…这是大约15年!

使用stick🏑选项。 从官方HAproxy博客 :

自动故障转移,无故障回复

以下configuration使HAProxy在可用时使用s1,否则将故障切换到s2(如果可用)。 发生故障转移时,由于使用了粘贴表,因此不会自动处理故障回复:

 backend bk_app stick-table type ip size 1 nopurge peers LB stick on dst server s1 10.0.0.1:80 check server s2 10.0.0.2:80 check backup