LVS實現四層負載均衡


1. 集群概述

1.1 Linux Cluster

  • Linux Cluster的類型
    • LB(Load Balance)
    • HA(High Available)
    • HP(High Performance)
  • 分布式系統
    • 分布式存儲
    • 分布式計算
  • 系統擴展方式
    • Scale UP
    • Scale OUT

1.2 LB Cluster的實現

  • 硬件、軟件實現
  • 基於工作的協議層次划分
    • 傳輸層(7層)
    • 應用層(4層)
  • 相關術語
    • 訪問模式(胖瘦客戶端)
    • 站點指標(PV、UV、IP)
    • 並發訪問
  • 會話保持
    • session sticky
    • session replication
    • session server

2. LVS概述

  • 擔任的角色
    • 四層路由器、四層交換機
  • ipvs & ipvsadm
    • ipvs:內核空間netfilter的INPUT鈎子上的框架
    • ipvsadm:用戶空間的規則管理器
  • LVS圖示
  • LVS集群類型的相關術語
    • Server類型:VS,RS
    • IP類型:CIP,VIP,DIP,RIP
  • 報文流向
    • CIP <--> VIP == DIP <--> RIP

3. LVS的工作類型

  • LVS-NAT
  • LVS-DR
  • LVS-TUN
  • LVS-FULLNET

4. ipvs scheduler(調度算法)

4.1 靜態調度算法

  • RR
  • WRR
  • SH
  • DH

4.2 動態調度

  • LC:Overhead=activeconns*256+inactiveconns
  • WLC:Overhead=(activeconns*256+inactiveconns)/ weight
  • SED:Overhead=(activeconns+1)*256 / weight
  • NQ:將最開始的請求先按順序來安排,之后再根據權重來分配,是對之前的優化
  • LBLC:動態的DH算法
  • LBLCR:帶復制功能的LBLC

5. ipvsadm/ipvs 的使用

5.1 概述

  • 集群和集群之上的各個RS是分開管理的
  • 查看系統是否支持ipvs

5.2 ipvsadm管理工具

  • ipvsadm軟件結構
  • 管理集群服務
    • ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]
  • 管理集群之上的RS
    • ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight]
  • 清空和查看
    • ipvsadm -C
    • ipvsadm -L [options]
  • 保存和載入

6. FWM&持久鏈接&保存載入規則

6.1 FireWall Mark,防火牆標記

  • iptables -t mangle -A PREROUTING -d $vip -p $protocol -d port -j MARK --set-mark NUMBER
  • ipvsadm -A -f NUMBER [options]

6.2 lvs persistence 持久連接

  • ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]]

6.3 保存及載入規則

7. 進而引起的可用性思考


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM