LVS

LVS即Linux Virtual Server,L4 負載均衡實現,高性能,穩定可靠,已成爲Linux內核一部分,國人章文嵩的著名開源項目算法

架構

輸入圖片說明

工做流後端

User > LoadBalancer(包括一組Director調度器) > ServerArray(包括一組Realserver業務機) > SharedStorage

模塊組成bash

  • IPVS內核調度模塊:部署在Director,對外暴露一個VIP,接受訪問流量轉發到RealServer
  • Ipvsadm用戶空間管理模塊:部署在Director,配置lvs調度方式並指定後端服務

IPVS模塊工做模式服務器

  • VS/NAT
  • VS/TUN
  • VS/DR:性能最好,但要求Director和Realserver在同一網段

負載均衡算法

靜態類網絡

  • RR:Round Robin循環調度
  • WRR:Weighted Round Robin加權循環調度
  • SH:SourceIP Hash源地址哈希調度
  • DH:Destination Hash目標地址哈希調度

動態類架構

  • LC:Least Connections最小連接數調度
  • WLC:Weighted Least Connection加權最小連接數調度
  • SED:Shortest Expection Delay最小指望延遲
  • NQ:Never Queue空閒服務器調度
  • LBLC:locality based least connection
  • LBLCR:locality based least connection with replication

VS/DR模式配置實例

IP約定負載均衡

  • CIP:用戶IP
  • VIP:Director面向外部用戶的IP
  • DIP:Director面向後端業務機的IP
  • RIP:業務機IP
### 網絡約定 ###
# 192.168.0.99(VIP)、192.168.0.100(DIP)
# 192.168.0.101(RealServer1)

sudo yum install -y ipvsadm

## Director配置IP ##
ifconfig eth0:0 192.168.0.99/32 broadcast 192.168.0.99 up #網卡綁定VIP
route add -host 192.168.0.99 dev eth0:0 #網卡增長路由
echo 1>/proc/sys/net/ipv4/ip_forward #啓動IP包轉發

## Director配置IPVS調度規則 ##
ipvsadm -C #ipvsadm重置
ipvsadm -A -t 192.168.0.99:80 -s rr #添加VIP
ipvsadm -a -t 192.168.0.99:80 -r 192.168.0.101:80 -g #添加RealServer記錄(-g爲VS/DR模式)
ipvsadm -L -n #啓動LVS服務並羅列規則

## RealServer配置 ##
ifconfig lo:0 192.168.0.99/32 broadcast 192.168.0.99 up #迴環設備綁定VIP
route add -host 192.168.0.99 dev lo:0 #迴環設備增長路由
echo 1 >/proc/sys/net/ipv4/conf/lo/arp_ignore #禁用ARP
echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore #禁用ARP
echo 2 >/proc/sys/net/ipv4/conf/lo/arp_announce #禁用ARP
echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce #禁用ARP

## 訪問服務 ##
curl 192.168.0.99:80

Keepalived

sudo yum install -y keepalived
相關文章
相關標籤/搜索