HAproxy +故障切换与Apache相同的节点?

我们目前使用HAproxy来平衡我们的映像和应用服务器,但是我们还没有设置故障转移。 我们现在只需要在一个图像框上使用haproxy,然后将请求路由到需要的地方。 现在,下周我们正在转向新的可乐(14台服务器,现在是停止租赁硬件的时候了)。

我们有5个前端应用程序服务器。 我有可能把haproxy放在其中的两个盒子上,有一个用于故障转移的共享ip,只需将apache移动到端口9000或其他任意端口? 在接下来的几个月中,我们已经在为colo预算了,所以如果我们能够避免的话,我想避免为JUST HAproxy设置两个专用的框。

5个应用程序服务器包含apache和sphinx。 应用程序服务器与我们的mysql服务器和我们日益增长的cassandra集群进行通信。

HAProxy不关心Web服务器是否在本地机器上。 将Apache添加到同一台机器并使用不同的端口是完全有效的。 有一天,你可能想要专门用于HAProxy,但你可能不需要(HAProxy目前的堆栈溢出资源使用率非常低)。

除了多个端口之外,另一个选项是在每台机器上都有多个IP并绑定到这些IP上。 你可以绑定到:

  • 通配符ip和一个特定的端口
  • 通配符端口和特定的ip
  • 通配符端口和通配符ip
  • 特定的ip和特定的端口

还要绑定到特定的VIP(虚拟故障转移IP),您将需要/etc/sysctl.conf的以下内容:

net.ipv4.ip_nonlocal_bind=1