如何讓 HAproxy 傳回下一個資料庫伺服器的 IP 位址?

如何讓 HAproxy 傳回下一個資料庫伺服器的 IP 位址?

我想使用 HAproxy 檢查我的資料庫伺服器是否在線,而不實際透過 HAproxy 框路由請求。有什麼方法可以連接到 HAproxy 並讓它傳回資料庫主機 IP 位址嗎?

例如:我從網頁伺服器 #1 連接到連接埠 3306 上的 HAproxy。然後從 webserver#1 直接連線到 DB 主機 #1。

答案1

不適用於普通 haproxy,但我遇到了同樣的問題並修補了 haproxy 以添加此功能。它可能會在某個時候包含在 haproxy 本身中(作者對此很積極,但要求進行一些我還沒有抽出時間進行的更改)。

如果您有興趣,我將分享此補丁。但請問問自己是否真的需要它。為什麼「正常」負載平衡不夠好,也許直接伺服器回傳使回傳流量繞過負載平衡器。運行一個穩定的、受支援的產品可能比擁有精確的你想要的功能(據我所知,任何開源負載平衡器都不存在,甚至在我看過的閉源負載平衡器中也不存在)。

相關內容