采用Nat技術(shù)時,由于請求和響應(yīng)報文都必須經(jīng)過調(diào)度器地址重寫,當(dāng)客戶請求越來越多時,調(diào)度器的處理能力將成為瓶頸。為了解決這個問題,調(diào)度器把請求報文通過IP隧道轉(zhuǎn)發(fā)至真實服務(wù)器,而真實服務(wù)器將響應(yīng)直接返回給客戶,所以調(diào)度器只處理請求報文。由于一般網(wǎng)絡(luò)服務(wù)器應(yīng)答比請求報文大許多,采用VS/TUN技術(shù)后,集群系統(tǒng)的最大吞吐量可以提高10倍。
實驗規(guī)劃:
(1).將物理機(jī)上的VMnet1網(wǎng)卡的ip設(shè)置為200.168.10.4,子網(wǎng)掩碼設(shè)置為255.255.255.0
(2).為Lvs服務(wù)器配置一塊網(wǎng)卡eth0,網(wǎng)絡(luò)連接設(shè)置為VMnet1,設(shè)置IP地址:ifconfig eth0 200.168.10.1
(3).為兩臺真實服務(wù)器配置一塊網(wǎng)卡,網(wǎng)絡(luò)連接設(shè)置為VMnet1,設(shè)置IP地址:ifconfig eth1 200.168.10.2和ifconfig eth1 200.168.10.3
(4).為Lvs服務(wù)器和兩臺真實服務(wù)器都配置一個tunl0網(wǎng)卡,配置為單獨的網(wǎng)段:ifconfig tunl0 200.168.10.10 netmask 255.255.255.255 up,route add -host 200.168.10.10 dev tunl0
(5).Lvs ip-tun服務(wù)器腳本:
ipvsadm -C
ipvsadm -A -t 200.168.10.10:80 -s rr(-t:采用tcp協(xié)議;-s:模式參數(shù);rr:采用輪叫算法)
ipvsadm -a -t200.168.10.10:80 -r 200.168.10.2 -i(-r:真實服務(wù)器ip;-i:ip-tun模式)
ipvsadm -a -t200.168.10.10:80 -r 200.168.10.3 -i
(6).真實服務(wù)器腳本:
echo "1" > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/tunl0/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
注:目前只有Unix/Linux版本的操作系統(tǒng)才具備ip-tun網(wǎng)卡