一、 概念
lvs的術語:
router:gwip
vs:virtual server,director
rs:real server
cip:client ip
vip:virtual server ip
dip:ditecter ip(connect with rs)
rip:real server ip
使用者請求的ip一定是vip,否則vs就失去了負載均衡的排程意義
lvs方式的cluster從結構上可分為兩部分:前端的負載均衡器(稱之為director)和後端的真實伺服器(稱之為real server)。cluster前端的director將來自外界的請求排程到cluster後端不同的real server去執行。real server負責真正的提供各種應用服務,比如:web、ftp、mail等服務。real server的數量可以根據實際需求進行增加、減少。
二、lvs的工作過程
三、lvs的型別
lvs有三種通用標準模型
(1)lvs-nat (網路位址對映)
(2)lvs-dr (直接路由)
(3)lvs-tun (ip隧道)
3.1、 lvs nat的特性(實質是多目標的dnat):
1、rs應該使用私有位址;
2、rs的閘道器的必須指向dip;
3、rip和dip必須在同一網段內;
4、請求和響應的報文都得經過director;在高負載場景中,director很可能成為系統效能瓶頸;
5、支援埠對映;
6、rs可以使用任意支援集群服務的os;
lvs-nat:工作流程如圖:
3.2、 lvs dr型別的特性:
1、rs可以使用私有位址;但也可以使用公網位址,此時可以直接通過網際網路連入rs以實現配置、監控等;
2、rs的閘道器一定不能指向dip;
3、rs跟dirctory要在同一物理網路內(不能由路由器分隔,因為vs通過封裝mac位址到rs);
4、請求報文經過directory,但響應報文一定不經過director
5、不支援埠對映;
6、rs可以使用大多數的作業系統;
由於dr型別中,vs、rs的vip都是一樣,如果在同一網段內會造成位址衝突,因此要解決位址衝突有一下三種方法:
禁止rs響應對vip的arp廣播請求:
1、在前端路由上實現靜態mac位址vip的繫結;
前提:得有路由器的配置許可權;
缺點:directory故障轉時,無法更新此繫結;
2、arptables
前提:在各rs在安裝arptables程式,並編寫arptables規則
缺點:依賴於獨特功能的應用程式
3、修改linux核心引數
前提:rs必須是linux;
缺點:適用性差;
兩個引數:
arp_announce:定義通告模式
arp_ignore:定義收到arp請求的時響應模式
配置專用路由,以使得響應報文首先通過vip所配置的lo上的別名介面
lvs-dr:工作流程如圖
3.2、 lvs-tun:ip隧道
1、rip、dip、vip都得是公網位址;
2、rs的閘道器不會指向也不可能指向dip;
3、請求報文經過directory,但響應報文一定不經過director;
4、不支援埠對映;
5、rs的os必須得支援隧道功能;
lvs-tun:工作流程如圖:也是基於lvs-dr的模型,只不過不同的是,rs和vs不必在同乙個物理的網路(實現物理冗餘),而是通過隧道技術進行vs和rs間的通訊
四、 lvs 十個排程演算法: rr、
wrr、lc、
wlc、
lblc
、lblcr、dh
、sh、sed
、 nq
1.輪叫排程(round robin)(簡稱rr)
2.加權輪叫(weighted round robin)(簡稱wrr)
3.最少鏈結(least connections)(lc)
4.加權最少鏈結(weighted least connections)(wlc)
5.基於區域性性的最少鏈結(locality-based least connections)(lblc)
6.帶複製的基於區域性性最少鏈結(locality-based least connections with replication)(lblcr)
7.目標位址雜湊(destination hashing)(dh)
8.源位址雜湊(source hashing)(sh)
9. 最短的期望的延遲(shortest expected delay scheduling sed)(sed)
10.最少佇列排程(never queue scheduling nq)(nq)
最常用的兩個演算法介紹:
2.加權輪叫(weighted round robin)(簡稱wrr)
排程器通過「加權輪叫」排程演算法根據真實伺服器的不同處理能力來排程訪問請求。這樣可以保證處理能力強的伺服器能處理更多的訪問流量。排程器可以自動問詢真實伺服器的負載情況,並動態地調整其權值。
4.加權最少鏈結(weighted least connections)(wlc)
在集群系統中的伺服器效能差異較大的情況下,排程器採用「加權最少鏈結」排程演算法優化負載均衡效能,具有較高權值的伺服器將承受較大比例的活動連線負載。排程器可以自動問詢真實伺服器的負載情況,並動態地調整其權值。
說明: 部分參考 感謝作者。
LVS負載均衡之DR模式原理介紹
流程解釋 當使用者向負載均衡排程器 director server 發起請求,排程器將請求發往至核心空間 prerouting 鏈首先會接收到使用者請求,判斷目標 ip 確定是本機 ip,將資料報發往 input 鏈 ipvs 是工作在 input 鏈上的,當使用者請求到達 input 時,ipvs...
lvs簡單介紹
所有的負載均衡群集大概都分為三層 1 排程器 2 伺服器池 各個節點 3 儲存設施 群集的分類 負載均衡群集,高可用群集,高效能能運算群集 lvs群集的工作模式 nat模式 dr模式 tun模式今天介紹的兩個主要是 nat模式與dr模式 首先nat模式的群集他只需要乙個公網 ip,是最容易的負載均衡...
lvs演算法介紹
lvs演算法型別 靜態演算法 rr,wrr,dh,sh 動態演算法 wlc,lc,lblc,sed,nq 後兩種官方站點沒有提到,編譯lvs,make過程可以看到 靜態演算法 僅根據演算法本身進行排程 保證起點公平 rr round robin,輪調,輪循 wrr weighted rr,加權輪循 ...