Routing

如果一台 SMTP 伺服器宕機,將所有請求路由到另一台,如何實現?

  • December 10, 2013

我有一個應用程序在多個級別使用電子郵件通知,所以如果 SMTP 伺服器出現故障,我就會遇到麻煩。我無法在我的所有配置中快速切換 SMTP 地址,或者說我什至不想那樣做。

那麼有誰知道如何將所有請求從一個 smtp“重新路由”到另一個?這有什麼大不了的嗎?謝謝

是的,你可以實現它,是的,這是一個(相對)重要的設置,但如果你已經在使用 Puppet 或 Chef 這樣的自動化工具,這並不是什麼大不了的事情。

理想情況下,您的設置將如下以獲得真正的高可用性:

SMTP 1 (192.168.1.21) <-----> Load Balancer 1 (192.168.1.10)
                      \   /           |
                        +             |-------------- VIP (192.168.1.100)
                       / \            |
SMTP 2 (192.168.1.22) <-----> Load Balancer 2 (192.168.1.11)
  • 您在兩個負載平衡器上執行 HAproxy,它偵聽 VIP 上的埠 25,並將流量轉發到兩個SMTP 伺服器上的埠 25。
  • Keepalived 控制 VIP 並將故障轉移從負載均衡器 1負載均衡器 2
  • 如果 SMTP 伺服器發生故障,它將從池中刪除,請求將被轉移到剩餘的健康伺服器。
  • 如果負載均衡器發生故障,如果故障 LB 是輔助負載均衡器,則不會有任何更改。如果失敗的 LB 是主要的,VIP 將故障轉移到輔助。
  • 此設置可以同時應對一個LB 和一個SMTP 伺服器的故障,但兩個SMTP/LB 都不會出現故障。

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