模型一:NAT模型的配置php
實驗環境:html
採用VMware虛擬機,版本6.0.5mysql
操做系統:Red Hat Enterprise Linux 5 (2.6.18)算法
虛擬機1:充當Director:網卡1(橋接):192.168.0.33(對外),網卡2(Vmnet):10.0.0.1(對內)sql
虛擬機2:充當RS1:IP:10.0.0.11瀏覽器
虛擬機3:充當RS2:IP:10.0.0.12ide
設置工做環境:測試
- # 在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
因而咱們進入瀏覽器,進入主機看是否響應spa
咱們發現當咱們刷新的時候,的確出現了不一樣的頁面,也就是咱們的系統在內部的確實現了調度操作系統
回到終端,查看咱們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算法的實現結果