Load-Balancing

如何使用故障轉移設置 HAProxy?

  • June 26, 2015

我了解,要在 HAProxy 負載平衡設置上進行故障轉移,您需要兩台執行 HAproxy 的機器(並將其路由到多個 Web 伺服器實例)。但是在這種情況下,比如 abcd.com,我們如何將流量拆分/路由到 2 個 IP 地址而不是一個?DNS 通常將域名解析為單個 IP。我們如何使用免費/便宜的工具/服務來做到這一點?

如果您有太多的負載需要在兩個 haproxy 實例之間進行負載平衡,那麼 DNS 循環不是一個壞主意(如果您有這個負載,我會感到驚訝)。DNS 輪詢雖然不會提供良好的故障轉移。

在 Stack Overflow,我們使用heartbeat提供單個虛擬 IP,此 IP 一次僅在一個 haproxy 主機上處於活動狀態(如果它出現故障,則另一個接管此 IP)。您可以使用心跳在每台機器上擁有一個 IP,然後在兩者之間使用 DNS 循環。如果一個失敗,那麼另一個將擁有這兩個 IP。

HAProxy 在我們的物理伺服器上使用了大約 1-5% 的 CPU 來平衡我們的流量,該流量只有一個Intel(R) Xeon(R) CPU E5504 @ 2.00GHz. 所以 HAProxy 通常可以輕鬆處理大量流量。

引用自:https://serverfault.com/questions/281230