集羣,就是把多臺服務器組合在一起提供服務,組合成一個服務器羣體。
集羣類型:
LB:Load Banlancing負載均衡
HA:High Availability高可用
HP:High Performace高性能
LVS集羣採用IP負載均衡技術和基於內容請求分發技術。調度器具有很好的吞吐率,將請求均衡地轉移到不同的服務器上執行,且調度器自動屏蔽掉服 務器的故障,從而將一組服務器構成一個高性能的、高可用的虛擬服務器。整個服務器集羣的結構對客戶是透明的,而且無需修改客戶端和服務器端的程序。
LVS虛擬服務器:分爲三層架構:
A、負載調度器(load balancer),它是整個集羣對外面的前端機,負責將客戶的請求發送到一組服務器上執行,而客戶認爲服務是來自一個IP地址(我們可稱之爲虛擬IP地 址)上的。
B、服務器池(server pool),是一組真正執行客戶請求的服務器,執行的服務有WEB、MAIL、FTP和DNS等。
C、共享存儲(shared storage),它爲服務器池提供一個共享的存儲區,這樣很容易使得服務器池擁有相同的內容,提供相同的服務。
LVS常用的三種模式:
LVS-NAT:網絡地址轉換
LVS-DR:路由模式
LVS-TUn:ip隧道模式
三種模式配置需要注意的事項:
LVS NAT的特性: 1、RS應該使用私有地址; 2、RS的網關的必須指向DIP; 3、RIP和DIP必須在同一網段內; 4、請求和響應的報文都得經過Director;在高負載場景中,Director很可能成爲系統性能瓶頸; 5、支持端口映射; 6、RS可以使用任意支持集羣服務的OS; LVS DR類型的特性: 1、RS可以使用私有地址;但也可以使用公網地址,此時可以直接通過互聯網連入RS以實現配置、監控等; 2、RS的網關一定不能指向DIP; 3、RS跟Dirctory要在同一物理網絡內(不能由路由器分隔); 4、請求報文經過Directory,但響應報文一定不經過Director 5、不支持端口映射; 6、RS可以使用大多數的操作系統; LVS TUN類型:IP隧道 1、RIP、DIP、VIP都得是公網地址; 2、RS的網關不會指向也不可能指向DIP; 3、請求報文經過Directory,但響應報文一定不經過Director; 4、不支持端口映射; 5、RS的OS必須得支持隧道功能;
配置LVS常見的名詞介紹
VIP:Directory用來想客戶端提供服務器的ip地址
RIP:後端提供服務器的服務器
DIP:和後端服務器進行連接的地址
CIP:客戶端ip
LVS:10種調度算法
靜態的分爲四種:
rr:輪詢
wrr:權重
sh:源地址hash
dh:目標地址hash
動態的分爲六種:動態是根據算法及rs當前的負載狀況進行計算
lc:最少連接方法
wlc:權重算法
sed:最短期望延遲
nq:永不排隊
lblc:基於本地的最少連接
lblcr:帶複製的基於本地的最小連接
Session持久機制:
1)session綁定:始終將同一個請求者的連接定向至同一個rs(第一次請求時仍由調度方法選擇);沒有容錯能力,有損均衡效果;
2)session複製:在rs之間同步session,因此,每個RS持集羣中所有的session;對於大規模集羣環境不適用;
3)session共享或服務器機制:利用單獨部署的服務器來統一管理session;
ipvsadm常用命令參數
ipvsadm 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:添加一個集羣服務 -s:調度方法,默認是wlc -p timeout:持久連接 -E:修改定義過的集羣服務 -D:刪除指定的集羣服務 -a:添加服務 -r:指定rs -w:指定權重 -e:修改指定的rs屬性 -C:清空所有的集羣服務 ipvsadm-save或ipvsadm -S保存規則 ipvsadm-restore或ipvsadm -R載入指定的規則 -L 【optios】 -n:數字格式顯示ip地址 -c:顯示連接數相關信息 --stats:顯示統計數據 --rate:速率 --exact:顯示統計數據的精確值 -Z:計數器清零