一、LVS :四層負載均衡設備,可針對IP和端口進行匹配相應的規則
借鑑iptables工作機制,工作在input鏈上,在上面設置規則,一旦發現用戶請求集羣服務,強行修改報文,通過postrouting鏈轉發給其主機
命令行工具:ipvsadm(管理集羣服務)
內核模塊: ipvs
二、LVS類型:NAT(地址轉換):需要兩個網卡,一個面對外網,一個面對後端服務,
集羣節點跟idrector必須工作在同一個ip網絡中
director位於client和relal server 之間,並負責處理進出的所有通信
realserver必須將網關指向DIP
diretory支持端口映射
realserver可以使用任意操作系統
較大規模應用場景中,director易成爲系統瓶頸
DR(直接路由):director只有一塊網卡,只負責進來的請求並通過修改MAC地址進行分發,realserver可以直接響應響應用戶請求,迴應的源地址是VIP,一般能帶動百臺server
集羣節點跟director必須在同一個物理網絡中
RIP可以使用公網地址,實現便捷的遠程管理
director僅負責入站請求,響應報文由realserver直接發往客戶端
realserver不能將網關指向DIP
不支持端口映射
TUN(隧道):
集羣節點可以跨越互聯網
RIP必須是公網地址
director僅負責入站請求,響應報文由realserver直接發往客戶端
realserver不能將網關指向DIP
只有支持隧道功能的OS才能用於realserver
不支持端口映射
三、LVS調度方法
固定(靜態)調度:director不對後端主機進行健康檢查
rr: 輪詢
wrr: weight,加權
sh: source hash 源地址hash(主要用於session affinity)
dh: destination hash
動態調度:
lc(lest connection):最少連接active*256+inactive
wlc:加權最少連接(active*256+inactive)/weight
sed:最短期望延遲(active+1)*256/weight
nq(nerver queue):
lblc:基於本地的最少連接
lblcr:基於本地帶複製功能的最少連接