------------------------實驗一:實現NAT模式的lvs--------------php
試驗思路:
nginx
①聲明vs,開啓路由轉換功能。 算法
②指定rs,指明默認路由。vim
一:NAT模式工做流程瀏覽器
VS-NAT:Virtual Server via NAT 基於地址翻譯的虛擬服務器服務器
二:IPide
CIP:client IP測試
VIP:virtual IPspa
CIP經過路由器來訪問VIP,因此VIP爲橋接模式IP翻譯
DIP:Director IP
RIP:Real IP
DIP與RIP爲同一網段,因此都爲僅主機模式IP
3、實驗環境:
vs一臺:
VIP:172.17.251.157 DIP:192.168.41.129/24
RS兩臺:
RS1:192.168.41.131 RIP
RS2:192.168.41.133 RIP
測試:瀏覽器鏈接
4、實驗步驟
一、開啓一個基於80端口的VS,調度算法爲wrr(加權輪叫)
[root@vs ~]# yum install ipvsadm
[root@vs ~]#systemctl start nginx/httpd
[root@vs ~]# ipvsadm -A -t 172.17.251.157:80 -s wrr
二、配置RS1,並設置爲NAT模式,權重爲1,
[root@vs ~]# ipvsadm -a -t 172.17.251.157:80 -r 192.168.41.131 -m -w 1
配置RS2,並設置爲NAT模式,權重爲1
[root@vs ~]# ipvsadm -a -t 172.17.252.226:80 -r 192.168.41.133 -m -w 1
三、開啓VS路由轉發功能
[root@vs ~]# vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
生效:sysctl -p
4.配置兩個RS的默認路由都爲DIP
[root@RS1 ~]# route add default gw 192.168.41.129
[root@RS2 ~]# route add default gw 192.168.41.129
五、Director上查看部署結果
[root@vs ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.17.251.157:80 wrr
-> 192.168.41.131:80 Masq 1 0 0
-> 192.168.41.133:80 Masq 1 0 0
5、測試
一、瀏覽器重複訪問:http://172.17.251.157.index.php,並觀察ActiveConn訪問鏈接
六:常見錯誤
配置完成後訪問 http://VIP/index.php 失敗,頁面顯示不出,多是路由轉發功能異常,解決方法以下:RS1/2 設置默認路由後,要查看路由表,刪除多餘路由。