lvs的路由模式
前邊已經搭建過了(nat模式),這裏就不在搭建了
DR模式的搭建:
這種模式的群集中,lvs負載調度器作為群集的入口,但不做網關使用了,web服務器節點都各自接入internet,發送給客戶機的web相應數據包不經過lvs負載調度器。
這裏我們IP地址都使用共有地址網段來體現,服務器節點采用雙網卡,一塊用於應答客戶端請求,一塊連接共享存儲。
在實驗中使簡化為下面的環境:
註意web節點A有兩塊網卡,一塊192.168.7.21,另一塊172.16.16.177,web節點B有兩塊網卡,一塊192.168.7.22,另一塊172.16.16.178,調度器一塊網卡172.16.16.173,NFS一塊網卡192.168.7.250
1、配置調度器
1)配置虛擬ip地址(vip)
執行:ifup eth0:0 開啟
在重啟網卡服務
1)調整/proc響應參數
因為lvs負載調度器和各節點需要共用vip地址,應該關閉linux內核重定向參數響應
打開vi /etc/sysctl.conf,增加三行。
執行Sysctl -p
1)配置負載分配策略
2、配置節點服務器
使用DR模式時,節點服務器也需要配置VIP地址,因為客戶端請求的是群集IP地址
目標MAC地址是LVS的,節點服務器回應時應該以群集IP回應,否則客戶端不能成功接收
還需要調整內核的ARP響應參數阻止更新VIP的MAC地址,因為客戶端在發送ARP請求的時候IP地址是群集地址,這是所有的節點都配置了VIP,這時客戶端的ARP緩存內就會出現多條重復的IP地址對應的MAC地址確不相同,這回導致客戶端無法正確找到調度器。
1)在節點B上配置虛擬ip地址
Vi /etc/sysconfig/network-scripts/ifcfg-lo:0
添加vip本地訪問路由
[root@centos]# vim /etc/rc.local
/sbin/route add -host 172.16.16.172 dev lo:0 //永久生效
[root@centos]# route add -host 172.16.16.172 dev eth0 //臨時生效
1)調整/proc響應參數
vim /etc/sysctl.conf,添加6行
執行:sysctl -p
然後再另一臺節點A上做相同的操作,這裏就不再截屏了,大家參考上面,如果不想去打一遍,可以使用scp命令拷貝節點B上面的文件。
SCP -r root@地址:/文件目錄 /跟自己的目錄
在a節點上操作,這裏的地址是你要拷貝的地址(b節點的地址)
SCP -r [email protected]:/etc/rc.local /etc/rc.local
3、在客戶端上測試,每次打開瀏覽器訪問的頁面在兩臺web服務器之間切換就對了
在實際工作中兩個web節點上的網頁要保持一致,這樣就能始終訪問一個相同的網站,從而能實現負載均衡。
lvs的路由模式