閱讀814 返回首頁    go 阿裏雲 go 技術社區[雲棲]


部署負載均衡集群支持會話同步__常見問題_負載均衡-阿裏雲

負載均衡服務通過設置虛擬服務地址(IP),將位於同一地域(Region)的多台雲服務器資源虛擬成一個高性能、高可用的應用服務池;再根據應用指定的方式,將來自客戶端的網絡請求分發到雲服務器池中。

負載均衡集群模塊

cluster-01

如上圖所示,整個負載均衡係統由3部分構成:四層負載均衡,七層負載均衡和控製係統。

  • 四層負載均衡:采用開源軟件LVS(linux virtual server),並根據雲計算需求對其進行了定製化;

  • 七層負載均衡,采用開源軟件Tengine,該技術已經在阿裏巴巴內部業務全麵上線應用4年多;

  • 控製係統:用於配置和監控負載均衡係統;

以下將會詳細闡述四層負載均衡的技術實現,著重介紹四層負載均衡的集群部署、會話同步功能及優勢。

LVS集群部署具體機製

如下圖所示,各個Region的四層負載均衡實際上是由多台LVS機器部署成一個LVS集群來運行的,采用集群部署模式極大的保證了異常情況下負載均衡服務的可用性、穩定性與可擴展性。

cluster-02

如何選擇用哪台LVS服務?

LVS集群和上聯交換機間運行OSPF協議,上聯交換機通過ECMP等價路由,將數據流分發給LVS集群,LVS集群再轉發給後端ECS服務器。

一台LVS服務器宕機了怎麼辦?

LVS和交換機間運行OSPF心跳,1個VIP配置在集群的所有LVS上,當一台LVS宕機時,交換機會自動發現並將其從ECMP等價路由中剔除,同時一個訪問請求經過一台LVS時,這個會話會被同步到集群所有LVS機器,保證在一台LVS 宕機時連接不中斷。

遇到超大流量的負載均衡實例怎麼辦?

當前一個集群一般能支撐30G流量,一般情況下不會有這麼大流量的負載均衡實例,如有,LVS集群也可以進行水平擴容。

LVS集群內部會話同步具體機製

cluster-03

LVS集群內的每台LVS上都會話都會通過組播報文同步到該集群內的其他LVS機器上,從而實現LVS集群內部各台機器間的會話同步。如上圖所示,在LVS1上麵建立的會話A,會同步到其他LVS機器上,圖中實線表示現有的連接,圖中虛線表示當LVS1出現故障或進行維護時,這部分流量會走到一台可以正常運行的機器LVS2上,這能夠保證負載均衡集群支持熱升級,任何機器故障和集群維護都對用戶透明,不影響用戶業務。

功能優勢

由本章介紹的集群部署和會話同步,結合負載均衡服務之前的各項功能,其實該服務目前已具備大量功能優勢,能夠真正做到各個層麵上的高可用:

  • 負載均衡服務提供後端ECS的健康檢查,可自動屏蔽後端服務器;

  • 負載均衡服務采用集群部署,可用消除Real Server層麵上的單點;

  • 負載均衡服務支持會話同步,可實現熱升級,機器故障和集群升級再也不影響用戶,對用戶透明;

  • 負載均衡服務在大多數地域(Region)下部署兩個可用區,一個可用區出現故障可自動切換到另一個可用區,實現同城雙A;

  • 負載均衡服務結合雲解析DNS更可實現跨地域容災

最後更新:2016-12-20 19:19:25

  上一篇:go 負載均衡超時問題__負載均衡性能常見問題_常見問題_負載均衡-阿裏雲
  下一篇:go 同一客戶端訪問多個負載均衡實例失敗或超時__異常排查_負載均衡-阿裏雲