55、LVS型別、排程演算法、ipvsadm命令用法
LVS型別:
NAT
DR
TUN
FULLNAT
LVS的排程方法:10種
靜態方法:僅根據演算法本身進行排程
rr 輪詢
wrr 加權輪詢
sh 源地址雜湊,可實現session繫結
dh 目標地址雜湊
動態方法:根據演算法及RS當前的負載狀況
lc 最小連線,小者勝出 Overhead=Active*256+Inactive
wlc 加權最小連線,小者勝出 Overhead=(Active*256+Inactive)/weight
sed 最短期望延遲, 小者勝出 Overhead=(Active+1)*256/weight
nq 改進的sed,開局先輪詢一遍,挑選還是sed演算法
lblc 基於本地的最少連線(用於cache,提高快取命中率)
lblcr 帶複製的基於本地的最少連線(用於cache,提高快取命中率)
Session持久機制:
1、session繫結:始終將同一個請求者的連線定向至同一個RS(第一次請求時仍由排程方法選擇);沒有容錯能力,有損均衡效果;
2、session複製:在RS之間同步session,因此,每個RS持叢集中所有的session;對於大規模叢集環境不適用;
3、session伺服器:利用單獨部署的伺服器來統一管理session;
ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask]
ipvsadm -D -t|u|f service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight] [-x upper] [-y lower]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
叢集服務相關
-A: 新增一個叢集服務
-t: tcp
-u: udp
-f: firewall mark,通常用於將兩個或以上的服務繫結為一個服務進行處理時使用;
service-address:
-t IP:port
-u ip:port
-f firewall_mark
-s 排程方法,預設為wlc
-p timeout: persistent connection, 持久連線
-E:修改定義過的叢集服務
-D -t|u|f service-address:刪除指定的叢集服務
RS相關
-a:向指定的CS中新增RS
-t|-u|-f service-address:指明將RS新增至哪個Cluster Service中
-r: 指定RS,可包含{IP[:port]},只有支援埠對映的LVS型別才允許此處使用跟叢集服務中不同的埠
LVS型別:
-g: Gateway, DR
-i: ipip, TUN
-m: masquerade, NAT
指定RS權重:
-w
-e: 修改指定的RS屬性
-d -t|u|f service-address -r server-address:從指定的叢集服務中刪除某RS
清空所有的叢集服務:
-C
儲存規則:(使用輸出重定向)
ipvsadm-save
ipvsadm -S
載入指定的規則:(使用輸入重定向)
ipvsadm-restore
ipvsadm -R
檢視ipvs規則等:
-L [options]
-n: 數字格式顯示IP地址
-c: 顯示連線數相關資訊
--stats: 顯示統計資料
--rate: 速率
--exact:顯示統計資料的精確值
-Z: 計數器清零;