Networking
負載平衡、主動-主動配置和動態伺服器添加
對。
我正在研究建立一個類似這樣的系統:
/ [負載均衡器] \ /\/\/\/\/\/\/\ [區域網路1] - ----- | 伺服器池 | \ [負載均衡器] / \/\/\/\/\/\/\/ | [多餘的 ] [負載均衡器]
在此設置中,將有負載均衡器的主動-主動配置(以確保沒有單點故障)和池中可變數量的 Web 伺服器。伺服器可以隨時設置和執行(通過網路啟動),因此平衡器應該能夠將這些伺服器添加到後端而無需重新啟動服務。正如您所說,我很清楚問題是什麼,但我不確定如何實現它。我在想:
- 在這種情況下,哪個負載均衡器最適合?到目前為止,我研究過的有 HAProxy、Linux Virtual Server、Ultramonkey 和 XR crossroads。LVS 可以通過 ipvsadm 支持添加和刪除伺服器而無需重新啟動,並且 crossroads 有一種(儘管很老套)的方式來支持它。我沒有在 HAProxy 上找到任何關於此的註釋,所以我不知道是否可能。
1b) 是否有針對特定 LB 的“最佳”作業系統?顯然 Linux 將是需要的,但有沒有最適合這個的風格?
2)實際上是否可以設置主動-主動配置?我見過很多人說他們已經做到了,但沒有說明如何做到這一點。
- 將每個平衡器連接到自己的伺服器池會更好嗎(即不同的介面和物理 LAN)?這會有所作為嗎?
任何想法/提示/對大腦的刺激都被接受。我讀了很多書,很難知道什麼是/不值得研究。
您如何將請求分配給主動-主動負載均衡器?
您需要一些虛擬地址技術,如 windows-NLB 或CARP,或網路設備實現,如 Cisco content-switching-module
對於大多數情況,我更喜歡具有積極監控的主動-備用系統,並將負載平衡系統視為“核心共享基礎設施”。
雖然在特定情況下當然可以使用網路負載平衡和虛擬 IP 定址解決方案,但我發現了很多不兼容的地方,因此不喜歡在我無法控制可能部署的內容的“一般”網路上使用它,(因此不知道會出現什麼不兼容)
如果您對網路有完全的控制權,那麼一定要享受 NLB/LVS 的樂趣!