Linux
corosync 和多個負載均衡器
我正在嘗試使用起搏器/corosync 為我們的負載均衡器(nginx、pgpool 和 haproxy 可選)提供 HA 功能。我定義了三個原語:
1 用於故障轉移 IP,
1 代表 lsb::nginx
1 代表 lsb::pgpool
我假設我可以添加 lsb::haproxy,雖然我沒有測試過這個場景。
並將它們組合在一起。我的問題是,當例如 pgpool 出現故障時,集群將切換到另一個節點,包括 nginx。根據我對文件的理解,故障轉移 IP 只能包含在一個組中,這使得這是一個全有或全無的情況(所有服務都工作,或者如果一個服務失敗,則所有三個服務都將發生故障轉移)。是否可以將它們組合在一起,例如 node1 可以使用相同的虛擬 IP 提供 nginx 和 node2 pgpool 和 haproxy?甚至可能嗎?我正在使用 Debian Wheezy 以及來自其儲存庫的所有軟體包(haproxy 來自 backports)。感謝您的任何回复。
我認為最簡單的方法是擁有 2 個故障轉移 IP。一個為一對
nginx
,另一個為pgpool + haproxy
一對。這樣,它就會按照您想要的方式工作。nginx
可以配置為從第一台機器執行並從第二台機器pgpool + haproxy
配對。