模型一:NAT模型的配置實驗環境:
采用VMware虛擬機,版本6.0.5
操作系統:Red Hat Enterprise Linux 5 (2.6.18)
虛擬機1:充當Director:網卡1(橋接):192.168.0.33(對外),網卡2(Vmnet):10.0.0.1(對內)
虛擬機2:充當RS1:IP:10.0.0.11
虛擬機3:充當RS2:IP:10.0.0.12
設置工作環境:
# 在Director上安裝ipvsadm yum install ipvsadm # 在RS1和RS2上這樣配置 yum install httpd mysql-server php php-mysql php-mbstring route add default gw 10.0.0.1 hostname localhost # 在RS1上配置網頁 echo “<h1>RealServer1</h>” > /var/www/html/index.html # 在RS2上配置網頁 echo “<h1>RealServer2</h>” > /var/www/html/index.html # 分別在RS1和RS2上開啟服務 server httpd start # 在Director上開啟路由轉發功能 echo 1 > /proc/sys/net/ipv4/ip_forward # 在Director上配置ipvs的定義:使用模式以及算法 ipvsadm -A -t 192.168.0.33:80 -s rr ipvsadm -a -t 192.168.0.33:80 -r 10.0.0.11 -m ipvsadm -a -t 192.168.0.33:80 -r 10.0.0.12 -m ipvsadm -L -n
於是我們進入浏覽器,進入主機看是否響應
我們發現當我們刷新的時候,的確出現了不同的頁面,也就是我們的系統在內部的確實現了調度
回到終端,查看我們ipvsadm的狀態。發現的確它的InActConn值很平均,的確在按照RR算法進行調度
改為WLC算法,查看權重信息:
# 在Director上修改算法以及權重信息 ipvsadm -E -t 192.168.0.33:80 -s wlc ipvsadm -e -t 192.168.0.33:80 -r 10.0.0.11 -m -w 3 ## 權重定義為3:1 # 我們在另一台主機上使用Apache自帶的ab命令進行壓力測試 ab -c 10 -n 10000 http://192.168.0.33/index.html
查看檢測內容:
改為sed算法,查看的效果,的確如Sed算法特點的那樣加大大權重的使用率,於是……
同理修改為NQ算法的效果,在權重比相差懸殊的情況下不讓權重高的一直響應而導致低權重的完全空閒的機制
模型二:DR模型的配置
實驗環境:
采用VMware虛擬機,版本6.0.5
操作系統:Red Hat Enterprise Linux 5 (2.6.18)
虛擬機1:Director:
DIP配置在接口上 172.16.19.10
VIP配置在接口別名上:172.16.19.1
虛擬機1:RS1:RIP配置在接口上:172.16.19.11 ;VIP配置在lo別名上
虛擬機2:RS2:RIP配置在接口上:172.16.19.12 ;VIP配置在lo別名上
# 我們在Director上這樣配置 ifconfig eth0 172.16.19.10/16 ifconfig eth0:0 172.16.19.1 broadcast 172.16.19.1 netmask 255.255.255.255 up route add -host 172.16.19.1 dev eth0:0 echo 1 > /proc/sys/net/ipv4/ip_forward # RS1和RS2配置屬於自己的ip之後都要:定義內核參數,禁止響應對VIP的ARP廣播請求 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 # 配置VIP ifconfig lo:0 172.16.19.1 broadcast 172.16.19.1 netmask 255.255.255.255 up # 凡是到172.16.19.1主機的一律使用lo:0響應 route add -host 172.16.19.1 dev lo:0 # 在Director上配置Ipvs ipvsadm -A -t 172.16.19.1:80 -s wlc ipvsadm -a -t 172.16.19.1:80 -r 172.16.100.11 -g -w 2 ipvsadm -a -t 172.16.19.1:80 -r 172.16.100.12 -g -w 4 ipvsadm -Ln
我們對172.16.19.1訪問查看wlc算法的實現結果
OK,通過這樣的實現,我想已經可以完整的明白LVS的理論實現過程了。