負載均衡器

1.常見的負載均衡器

4層負載均衡軟件nginx

4層負載均衡器基於ip+端口來進行負載均衡。正則表達式

應用名 說明
F5 硬件負載均衡器,功能很好,可是成本很高
lvs 重量級的四層負載軟件
nginx 輕量級的四層負載軟件,帶緩存功能,正則表達式較靈活
haproxy 模擬四層轉發,較靈活

7層負載均衡軟件算法

7層負載均衡器基於URL等應用層信息來進行負載均衡。sql

應用名 說明
haproxy 天生負載均衡技能,全面支持七層代理,會話保持,標記,路徑轉移;
nginx 只在http協議和mail協議上功能比較好,性能與haproxy差很少;
apache 功能較差
Mysql proxy 功能尚可。

2. lvs的4種工做模式

2.1 nat模式

負載均衡器

報文改寫流程apache

1.客戶端發送請求報文,源ip爲192.168.0.10 目標ip爲192.168.1.10。
2.調度器接收到請求報文後,根據調度算法(如rr,wrr,lc等等)選出rs2來進行提供服務。
3.調度器改寫報文,只改寫目標ip爲10.0.0.3。
4.rs2返回響應報文,源ip爲10.0.0.3 目標ip爲192.168.0.10。
5.調度器接收響應報文,轉換源ip。源ip爲192.168.1.10 目標ip爲192.168.0.10,返回給客服端。後端

適用場景緩存

小併發的業務環境。安全

優勢服務器

1.只須要一個外網ip地址配置調度器上,而且後端服務器能夠用私有ip。
2.對後端的服務器沒有系統上的要求。網絡

缺點

1.流進和流出的流量都會通過調度器,那麼調度器就會成爲一個性能瓶頸。
2.須要調度器和後端服務器在同一個局域網內。

2.2 dr模式

負載均衡器

報文改寫流程

1.客戶端發送請求報文,源ip爲192.168.0.10 目標ip爲192.168.1.10。
2.調度器接收到請求報文後,根據調度算法(如rr,wrr,lc等等)選出rs2來進行提供服務。
3.調度器改寫報文,只改寫目標mac地址爲rs2的mac。
4.rs2返回響應報文,源ip爲192.168.1.10 目標ip爲192.168.0.10。直接返回給客服端。

適用場景

大流量高併發業務環境,如視頻業務。

優勢

調度器只負責轉發請求報文沒有其餘的資源開銷,性能最好。

缺點

要求調度器和後端服務器的都有一塊網卡連在同一個物理網絡局域網內。

2.3 tun模式

負載均衡器

報文改寫流程

1.客戶端發送請求報文,源ip爲192.168.0.10 目標ip爲192.168.1.10。
2.調度器接收到請求報文後,根據調度算法(如rr,wrr,lc等等)選出rs2來進行提供服務。
3.調度器對客戶端發來的請求報文,從新封裝成一個新的請求報文。此時新報文,源ip爲192.168.1.10 目標ip爲192.168.3.3。而後和rs2創建隧道轉發請求報文給rs2。
4.rs2接收到請求報文後,對其進行解封裝,得到原始請求報文。
5.rs2將請求處理完成後,直接發送響應報文給客戶端。此時源ip爲192.168.1.10,目標ip爲192.168.0.10。

適用場景

須要對放在不一樣區域網絡內的業務機器進行負載。

優勢

1.不須要轉發後端服務器的響應報文,負載能力強。
2.服務器和調度器能夠不在同一個局域網中。
3.支持廣域網負載均衡。

缺點

1.後端服務器必須支持「IP Tunneling」協議。
2.系統須要創建IP隧道,資源開銷大。
3.服務器須要聯通外網,安全風險較大。

2.4 fullnat模式

負載均衡器

報文改寫流程

1.客戶端發送請求報文,源ip爲192.168.0.10 目標ip爲192.168.1.10。
2.調度器接收到請求報文後,根據調度算法(如rr,wrr,lc等等)選出rs2來進行提供服務。
3.調度器改寫報文,改寫目標ip和源ip。此時源ip爲10.0.1.1 目標ip爲10.0.3.3。
4.rs2返回響應報文,源ip爲10.0.3.3 目標ip爲10.0.1.1。
5.調度器接收響應報文,轉換源ip和目標ip。源ip爲192.168.1.10 目標ip爲192.168.0.10,返回給客服端。

適用場景

對不一樣局域網內的業務機器進行負載。

優勢

1.相較於nat模式,調度器和後端服務器能夠在不一樣的局域網內。

缺點

1.調度器會成爲系統性能瓶頸。2.性能比nat模式更弱,對請求和響應報文,它比nat模式須要多修改源ip地址和目標ip地址

相關文章
相關標籤/搜索