- 論壇徽章:
- 0
|
架設(shè)LVS至少都要3臺(tái)電腦,如果只有一臺(tái)電腦主機(jī)又想搞個(gè)LVS集群來體驗(yàn)一下,那么我們可以借助VMware來實(shí)現(xiàn)。做法是在一臺(tái)主機(jī)中虛擬3個(gè)Linux系統(tǒng),主機(jī)最好能連接到一個(gè)LAN或者本身已有公網(wǎng)IP,如果沒有LAN就在VM中用Team方式實(shí)現(xiàn)一個(gè)虛擬LAN。(以下方法同樣可以應(yīng)用在真實(shí)環(huán)境中)
首先用來運(yùn)行VM的主機(jī)CPU最好在2G以上,內(nèi)存要有1GB(因?yàn)橐瑫r(shí)掛上3個(gè)Linux),系統(tǒng)是WindowsXP.先安裝VMware-workstation-5.5.1-19175.exe,設(shè)定VM的虛擬網(wǎng)絡(luò),把VMnet0(Bridged)指定到主機(jī)網(wǎng)卡上.現(xiàn)在可以開始安裝Linux,我安裝的是 Mandriva2006,安裝的Linux Kernal最好是2.6.10以上的發(fā)行版,因?yàn)橐呀?jīng)集成了IPVS.在安裝清單中記得選上WEB服務(wù)器和ipvsadm.待安裝完成后在VM中克隆2個(gè)Linux.各系統(tǒng)的IP如下:
1. WindowsXP: 192.168.0.5
2. Linux1: 192.168.0.11
3. Linux2: 192.168.0.12
4. Linux3: 192.168.0.13
3個(gè)Linux系統(tǒng)分別簡稱為LB(192.168.0.11),RS1(192.168.0.12),RS2(192.168.0.13),加上原本的XP一共有4個(gè)OS.先用ping測試一下網(wǎng)絡(luò),看看各個(gè)系統(tǒng)通不通。
現(xiàn)在已經(jīng)虛擬出3臺(tái)主機(jī)(與真正主機(jī)沒分別),可以正式配置LVS,使用直接路由DR方式。
LB的內(nèi)核要 2.6.10以上(已集成IPVS).RS的內(nèi)核最好也用2.6.x。用modprobe -l 命令可查看到IPVS module在 /lib/modules/2.6.12-12mdksmp/kernel/net/ipv4/ipvs中. ipvsadm運(yùn)行時(shí)會(huì)自動(dòng)把IPVS module掛載到系統(tǒng)中,到系統(tǒng)服務(wù)中查看ipvsadm是否已經(jīng)加入.可以用lsmod查看系統(tǒng)當(dāng)前所有掛載的module。
分別在3個(gè)Linux系統(tǒng)中設(shè)置Virtual IP, 在RS上必須對(duì)VIP忽略ARP回應(yīng)。由于2.4和2.6內(nèi)核處理ARP方式不一樣,在2.6內(nèi)核中通過調(diào)整內(nèi)核參數(shù)忽略ARP廣播回應(yīng)。
下面是我用的2個(gè)腳本:
LB上的腳本:
#!/bin/bash
VIP=192.168.0.100
RIP1=192.168.0.11
RIP2=192.168.0.12
RIP3=192.168.0.13
GW=192.168.0.1
# set the Virtual IP Address
/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev eth0:0
#Clear IPVS table
/sbin/ipvsadm -C
#set LVS
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP3:80 -g
#Run LVS
/sbin/ipvsadm
#end
RS上的腳本:
#!/bin/bash
VIP=192.168.0.100
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
/sbin/route add -host $VIP dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p
#end
LVS的配置大至上完成,返回到XP中,打開IE、firefox或者 Opera測試,然后切換到LB上用 ipvsadm –L -c查看是否有連接。 |
|