亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

LVS(Linux Virtual Server)Linux 虛擬服務(wù)器介紹及配置(負(fù)載均衡系統(tǒng))

 更新時(shí)間:2012年05月31日 23:32:57   作者:  
LVS(Linux Virtual Server) 是Unix-like系統(tǒng)中的一個(gè)虛擬服務(wù)器,是國(guó)內(nèi)貢獻(xiàn)給開源組織的一個(gè)最優(yōu)秀的項(xiàng)目之一
一,簡(jiǎn)介
LVS(Linux Virtual Server) 是Unix-like系統(tǒng)中的一個(gè)虛擬服務(wù)器,是國(guó)內(nèi)貢獻(xiàn)給開源組織的一個(gè)最優(yōu)秀的項(xiàng)目之一。LVS在Unix-like系統(tǒng)中
是作為一個(gè)前端(Director)存在的,又稱為調(diào)度器,它本身不提供任何的服務(wù),只是將通過互聯(lián)網(wǎng)進(jìn)來(lái)的請(qǐng)求接受后再轉(zhuǎn)發(fā)給后臺(tái)運(yùn)行的真正的
服務(wù)器(RealServer)進(jìn)行處理,然后響應(yīng)給客戶端。
LVS有兩個(gè)重要的組件:一個(gè)是IPVS,一個(gè)是IPVSADM。ipvs是LVS的核心組件,它本身只是一個(gè)框架,類似于iptables,工作于內(nèi)核空間中。
ipvsadm 是用來(lái)定義LVS的轉(zhuǎn)發(fā)規(guī)則的,工作于用戶空間中。
LVS有三種轉(zhuǎn)發(fā)類型:
1.LVS-NAT模型,稱為網(wǎng)絡(luò)地址轉(zhuǎn)換,實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單。
2.LVS-DR模型,稱為直接路由模型,應(yīng)用比較廣泛。
3.LVS-TUN模型,稱為隧道模型。
二、LVS的三種模型的工作屬性:
1.LVS-NAT模型的工作屬性或特:
(1).所有的RealServer集群節(jié)點(diǎn)和前端調(diào)度器Director都要在同一個(gè)子網(wǎng)中
(2).通常情況下RealServer的IP地址(以下簡(jiǎn)成RIP)為私有地址,便于RealServer集群節(jié)點(diǎn)之間進(jìn)行通信
(3).通常情況下前端的Director有兩個(gè)IP地址,一個(gè)為VIP,是虛擬的IP地址,客戶端向此IP地址發(fā)起請(qǐng)求。
一個(gè)是DIP,是真正的Director的IP地址,RIP的網(wǎng)關(guān)要指向Director的DIP。
(4).這種模型可以實(shí)現(xiàn)端口映射
(5).RealServer的操作系統(tǒng)可以是任意操作系統(tǒng)
(6).前端的Director既要處理客戶端發(fā)起的請(qǐng)求,又要處理后臺(tái)RealServer的響應(yīng)信息,將RealServer響應(yīng)的信息再轉(zhuǎn)發(fā)給客戶端
(7).前端Director很容易成為整個(gè)集群系統(tǒng)性能的瓶頸。
2.LVS-DR模型的工作屬性或特征:此種模型通過MAC地址轉(zhuǎn)發(fā)工作,如何轉(zhuǎn)發(fā)后面將會(huì)介紹。
(1).所有的RealServer集群節(jié)點(diǎn)和前端調(diào)度器Director都要在同一個(gè)物理網(wǎng)絡(luò)中
(2).RIP可以使用公網(wǎng)的IP
(3).RIP的網(wǎng)關(guān)不能指向DIP
(4).前端的Director只處理客戶端的請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給RealServer,由后臺(tái)的RealServer直接響應(yīng)客戶端,不再經(jīng)過Director
(5).此種模型不支持端口映射
(6).RealServer可以使用大多數(shù)的操作系統(tǒng)
(7).此種模型的性能要優(yōu)于LVS-NAT
3.LVS-TUN模型的基本工作屬性或特征
(1).RealServer服務(wù)器與前端的Director可以在不同的網(wǎng)絡(luò)中
(2).RIP一定不能是私有IP
(3).前端的Director只處理客戶端的請(qǐng)求,然后將請(qǐng)求轉(zhuǎn)發(fā)給RealServer,由后臺(tái)的RealServer直接響應(yīng)客戶端,不再經(jīng)過Director
(4).此種模型也不支持端口映射
(5).RealServer只能使用哪些支持IP隧道的操作系統(tǒng)
三。LVS Scheduling Method LVS的調(diào)度方法:
1.Fixed Scheduling Method  靜態(tài)調(diào)服方法
(1).RR     輪詢
(2).WRR    加權(quán)輪詢
(3).DH     目標(biāo)地址hash
(4).SH     源地址hash
2.Dynamic Scheduling Method 動(dòng)態(tài)調(diào)服方法
(1).LC     最少連接
(2).WLC    加權(quán)最少連接
(3).SED    最少期望延遲
(4).NQ     從不排隊(duì)調(diào)度方法
(5).LBLC   基于本地的最少連接
(6).LBLCR  帶復(fù)制的基于本地的最少連接
 
四、ipvsadm組件定義規(guī)則的格式:
1.定義集群服務(wù)格式:
 (1).添加集群服務(wù):
ipvsadm -A|E -t|u|f service-address [-s scheduler]
               [-p [timeout]] [-M netmask]
-A:                  表示添加一個(gè)新的集群服務(wù)
-E:                  編輯一個(gè)集群服務(wù)
-t:                  表示tcp協(xié)議
-u:                  表示udp協(xié)議
-f:                  表示firewall-Mark,防火墻標(biāo)記
service-address:     集群服務(wù)的IP地址,即VIP
-s                    指定調(diào)度算法
-p                    持久連接時(shí)長(zhǎng),如#ipvsadm -Lcn ,查看持久連接狀態(tài)
-M                    定義掩碼
 
ipvsadm -D -t|u|f service-address      刪除一個(gè)集群服務(wù)
ipvsadm -C                             清空所有的規(guī)則
ipvsadm -R                             重新載入規(guī)則
ipvsadm -S [-n]                        保存規(guī)則
 
2.向集群服務(wù)添加RealServer規(guī)則:
(1).添加RealServer規(guī)則
ipvsadm -a|e -t|u|f service-address -r server-address
               [-g|i|m] [-w weight] 
-a                 添加一個(gè)新的realserver規(guī)則
-e                 編輯realserver規(guī)則
-t                 tcp協(xié)議
-u                 udp協(xié)議
-f                 firewall-Mark,防火墻標(biāo)記
service-address    realserver的IP地址
-g                 表示定義為L(zhǎng)VS-DR模型
-i                 表示定義為L(zhǎng)VS-TUN模型
-m                 表示定義為L(zhǎng)VS-NAT模型
-w                 定義權(quán)重,后面跟具體的權(quán)值
ipvsadm -d -t|u|f service-address -r server-address          --刪除一個(gè)realserver
ipvsadm -L|l [options]                                       --查看定義的規(guī)則
如:#ipvsadm -L -n  
ipvsadm -Z [-t|u|f service-address]                          --清空計(jì)數(shù)器
     
五、LVS-NAT模型實(shí)例

1。先配置好網(wǎng)絡(luò)環(huán)境,要三個(gè)虛擬機(jī)(本次實(shí)驗(yàn)在虛擬機(jī)上完成),一臺(tái)用作Director,其他兩臺(tái)分別為RealServer1 和RealServer2
其中Director要兩個(gè)網(wǎng)卡,Eth0網(wǎng)卡為橋接(Birdged),Eth1網(wǎng)卡為僅主機(jī)(Host-only),RealServer1 和RealServer2的網(wǎng)卡也都是僅主機(jī)
類型的。
2.為了演示效果,將Director的兩塊網(wǎng)卡配置成不在同一個(gè)網(wǎng)段的IP地址,RealServer1 和RealServer2的IP地址為同一網(wǎng)段,規(guī)劃如下圖:

要注意的是:要將本地物理機(jī)的Vmnet1的IP地址配置成和Director的Eth1網(wǎng)卡的IP地址在同一個(gè)網(wǎng)段中,同時(shí)將RealServer1和RealServer2的網(wǎng)關(guān)指向Director主機(jī)的Eth1網(wǎng)卡的地址,如下圖所示:

3.配置好網(wǎng)絡(luò)環(huán)境之后就開始配置ipvsadm,確保在物理機(jī)上能ping通Eth0的IP地址,如下圖所示:

能Ping通,說明物理主機(jī)已經(jīng)可以和Director虛擬主機(jī)通信了。
4.在Director虛擬主機(jī)上配置:
#echo 1 > /proc/sys/net/ipv4/ip_forward     --開啟IP轉(zhuǎn)發(fā)功能
#rpm -qa ipvsadm        --查看ipvsadm是否安裝,如果沒有安裝則安裝之,直接使用yum安裝即可
#yum install ipvsadm -y
定義LVS-NAT模型規(guī)則
此處使用的是web服務(wù)器進(jìn)行的演示,在192.168.24.44和192.168.24.45上都提供了nginx服務(wù),其中
192.168.24.44提供的網(wǎng)頁(yè)信息為“welcome realserver 1”,192.168.24.45提供的網(wǎng)頁(yè)信息為“welcome realserver 2”
#ipvsadm -A -t 172.16.100.24:80 -s rr
#ipvsadm -a -t 172.16.100.24:80 -r 192.168.24.44 -m
#ipvsadm -a -t 172.16.100.24:80 -r 192.168.24.45 -m
#ipvsadm -L -n --查看定義的規(guī)則
這些規(guī)則都是臨時(shí)規(guī)則,不會(huì)永久生效的,要想永久生效可以保存規(guī)則,命令如下:
#service ipvsadm save 
5.在Internet Explorer瀏覽器中訪問172.16.100.24,會(huì)顯示如下圖所示信息:

而在google瀏覽器中訪問172.16.100.24,會(huì)顯示如下圖所示信息:

如果刷新頁(yè)面或者使用不同的瀏覽器,會(huì)輪流顯示頁(yè)面,這就是最簡(jiǎn)單的服務(wù)器負(fù)載均衡啦!
 
六、LVS-DR模型的實(shí)現(xiàn)過程:
 
1.首先規(guī)劃集群和網(wǎng)路環(huán)境,需要三臺(tái)虛擬機(jī),如下圖所示:
此時(shí)Director可以只有一個(gè)網(wǎng)卡Eth0,連接類型為橋接(Birdged),RealServer1和RealServer2 的網(wǎng)卡連接類型也都為橋接(Birdged):

2.配置集群服務(wù)
(1).在Director服務(wù)器上配置:
#ifconfig eth0:1 172.16.100.100 broadcast 172.16.100.100 netmask 255.255.255.255 up 
#route add -host 172.16.100.100 dev eth0:1 
#echo 1 > /proc/sys/net/ipv4/ip_forward   --開啟IP轉(zhuǎn)發(fā)功能
(2).在realserve1服務(wù)器上進(jìn)行配置:
# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
 
#ifconfig lo:0 172.16.100.100 broadcast 172.16.100.100 netmask 255.255.255.255 up 
#route add -host 172.16.100.100 dev lo:0
(3).在realserver2 服務(wù)器上進(jìn)行配置
# echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
# echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
 
#ifconfig lo:0 172.16.100.100 broadcast 172.16.100.100 netmask 255.255.255.255 up 
#route add -host 172.16.100.100 dev lo:0
(4).再在Director上配置ipvsadm規(guī)則:
 
#ipvsadm -A -t 172.16.100.100:80 -s rr -g
#ipvsadm -a -t 172.16.100.100:80 -r 172.16.24.34
#ipvsadm -a -t 172.16.100.100:80 -r 172.16.24.44
 
(5).在瀏覽器中進(jìn)行驗(yàn)證:
進(jìn)行第一次訪問,如下圖所示:

進(jìn)行第二次訪問,如下圖所示:

3.基于ssl的訪問
 
[root@mail ~]# ipvsadm -A -t 172.16.100.100:443 -s rr
[root@mail ~]# ipvsadm -a -t 172.16.100.100:443 -r 172.16.24.2 -g
[root@mail ~]# ipvsadm -a -t 172.16.100.100:443 -r 172.16.24.3 -g
 
二、LVS Persistence ,lvs的持久連接性
持久連接類型:
(1).Persistent Client Connections(PCC),持久客戶端連接:就是不管客戶端發(fā)起什么樣的服
務(wù)(如80端口的web服務(wù),3306端口的mysql服務(wù))請(qǐng)求,都將經(jīng)過Director被定位到同一個(gè)特定的real server上,
只要此real server 提供了這種服務(wù),并且會(huì)持續(xù)連接,如果客戶端連接超時(shí),real server允許一定范圍內(nèi)的
持久連接時(shí)長(zhǎng),默認(rèn)持久連接時(shí)長(zhǎng)為300m
 
#ipvsadm -A -t 172.16.100.100:0 -p 1200
#ipvsadm -a -t 172.16.100.100:0 -r 172.16.100.34 -g -w 10
#ipvsadm -a -t 172.16.100.100:0 -r 172.16.100.44 -g -w 5 
 
驗(yàn)證效果如下圖:

(2).Persistent Port Connections(PPC),持續(xù)端口連接:就是不管客戶端發(fā)起什么樣的端口請(qǐng)求(如80端口,是提供web服務(wù)的,23端口,是提供telnet服務(wù)的....),
都會(huì)經(jīng)過Director將請(qǐng)求轉(zhuǎn)發(fā)到同一個(gè)real server上,并持續(xù)連接。假如一個(gè)客戶端請(qǐng)求的是web服務(wù),相應(yīng)的是realserver1 ,當(dāng)此用戶退出后再次發(fā)起請(qǐng)求web服務(wù)的時(shí)候
依然是realserver1 提供的web服務(wù)。
iptables:
[root@mail ~]# iptables -t mangle -A PREROUTING -i eth0 -p tcp -d 172.16.100.100 --dport 80 -j MARK --set-mark 20
[root@mail ~]# iptables -t mangle -A PREROUTING -i eth0 -p tcp -d 172.16.100.100 --dport 443 -j MARK --set-mark 20
[root@mail ~]# iptables -t mangle -L -n
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
MARK       tcp  --  0.0.0.0/0            172.16.100.100      tcp dpt:80 MARK set 0x14 
MARK       tcp  --  0.0.0.0/0            172.16.100.100      tcp dpt:443 MARK set 0x14 
 
把80端口和443 端口做成一個(gè)持久防火墻標(biāo)記,同時(shí)定向到同一個(gè)realserver上,即在訪問80服務(wù)的時(shí)候是realserver1,
然后改為訪問443服務(wù)的時(shí)候依然定向到realserver1上
 
基于防火墻標(biāo)記來(lái)定義集群服務(wù),也稱為端口的姻親關(guān)系。
 
ipvsadm:
 
[root@mail ~]# ipvsadm -A -f 20 -s wlc -p 1200 
[root@mail ~]# ipvsadm -a -f 20 -r 172.16.24.2 -g -w 3
[root@mail ~]# ipvsadm -a -f 20 -r 172.16.24.3 -g -w 2
[root@mail ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
FWM  20 wlc persistent 1200
  -> 172.16.24.3:0                Route   2      0          0         
  -> 172.16.24.2:0                Route   3      0  

本文出自 “知識(shí)體系” 博客

相關(guān)文章

最新評(píng)論