LVS有三種模式:LVS-DR,LVS-NAT,LVS-TUN
這裏舉例子說LVS-DR的搭建方式
備註:雙ip模式,這裏沒有用到熱備,所以VIP可以選用某個節點ip
服務器ip分配:(假設10段的是公網ip,192的是私有ip)
主機 | 用途 | 安裝軟件 |
10.10.10.100,192.168.1.100 | master+res1,10.10.10.100兼做VIP | ipvsadm+lvs腳本 |
10.10.10.101,192.168.1.101 | res2 | res腳本 |
10.10.10.102,192.168.1.102 | res3 | res腳本 |
查看內核是否支持ipvs:
modprobe -l |grep ipvs
安裝ipvsadm
yum install ipvsadm -y
開啓ip轉發
echo 1 > /proc/sys/net/ipv4/ip_forward (臨時,電腦重啓會失效)
永久剩下需要修改配置文件
在 /etc/sysctl.conf中添加下面一行:
net.ipv4.ip_forward = 1
重載:
sysctl -p /etc/sysctl.conf
lvs腳本:lvs-dr.sh
#!/bin/bash #description: sh lvs-dr.sh #set lvs #Written by bg VIP=10.10.10.100 /sbin/ipvsadm -C /sbin/ipvsadm -A -t $VIP:80 -s rr /sbin/ipvsadm -a -t $VIP:80 -r 192.168.1.100:80 -g -w 1 /sbin/ipvsadm -a -t $VIP:80 -r 192.168.1.101:80 -g -w 1 /sbin/ipvsadm -a -t $VIP:80 -r 192.168.1.102:80 -g -w 1 /etc/init.d/ipvsadm save
res腳本: lvs-web.sh
#!/bin/bash #Description : sh lvs-web.sh #Write by bg VIP=10.10.10.100 /sbin/ifconfig lo:0 $VIP broadcast 10.10.10.255 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
備註:確認每臺機器都設置允許VIP訪問web
執行腳本後可以在VIP服務器上查看訪問情況:ipvsadm -lcn