我有以下设置:
我已经在两个负载均衡器 (HAProxy) 之间配置了高可用性,这样如果 HAProxy1 出现故障,浮动 IP 就会转移到另一个负载均衡器 HAProxy2,因此所有客户端都会从后端正在执行的 HAProxy2 获得响应LB sme 中间有两个webserver。这是为了在只有一个 HAProxy 的情况下消除单点故障。
每当我停止 HAProxy1 中的心跳时,浮动 IP 就会转到 HAProxy2。但我想配置为每当process haproxy
发生故障时,浮动 IP 都应分配给 HAProxy2。有人可以告诉我如何实施吗?
您可以从russki 存储库下载 haproxy ocf 代理:
sudo wget -O /usr/lib/ocf/resource.d/heartbeat/haproxy http://github.com/russki/cluster-agents/raw/master/haproxy
然后更改文件权限:
并像这样配置您的资源:
# crm configure show
听起来你已经正确配置了 heartbeat,但还没有配置 pacemaker。
Pacemaker 是解决方案的一部分,它监视诸如运行服务之类的事情,并决定您是否需要切换到另一台服务器。
http://itand.me/41901523有关于为 haproxy 设置它的指南。如果你用谷歌搜索“pacemaker haproxy”,你会发现更多。也不要忘记通读 pacemaker 的所有文档。那里有很多重要的花絮可以让一切顺利运行。
您需要配置 Pacemaker 以监控服务并使其在主服务器 (HAProxy1) 出现故障时可用。可以通过crm命令进行配置,为pacemaker添加浮动IP和haproxy服务。
在 OCF 中你不会得到 HAProxy,你需要使用 LSB 类。运行以下命令以查看 lsb 类下的 haproxy
然后
你完成了。