虚拟机环境4台:c1, lvs, r1, r2, c1和lvs的eth2是同一个子网,r1、r2和lvs的eth3是同一个子网。
主机lvs配置:
1、2张网卡,eth2, eth3, 安装ipvsadm。
2、打开路由
echo "1">/proc/sys/net/ipv4/ip_forward
或者修改/etc/sysctl.conf
net.ipv4.ip_forward=1
3、网卡配置: /etc/network/interfaces
auto eth2
iface eth2 inet static
address 10.10.0.100
netmask 255.255.0.0
auto eth3
iface eth3 inet static
address 192.168.1.100
netmask 255.255.255.0
4、添加规则
root@dev64:~# ipvsadm -A -t 10.10.0.100:8090 -s rr
root@dev64:~# ipvsadm -a -t 10.10.0.100:8090 -r 192.168.1.3 -m
root@dev64:~# ipvsadm -a -t 10.10.0.100:8090 -r 192.168.1.4 -m
若采用0端口模式,例如:
ipvsadm -A -t 10.10.0.100:0 -s rr -p 5
ipvsadm -a -t 10.10.0.100:0 -r 192.168.1.3 -m
ipvsadm -a -t 10.10.0.100:0 -r 192.168.1.4 -m
说明:
-A表示添加service,-t表示tcp协议, -s rr表示采用轮询算法,
-a 表示添加realserver, -r跟着realserver ip,-m表示采用nat模式,
-p表示采用持久化,后面跟着超时时间(秒),表示在超时内,相同ip的连接会发到同一real server
查看规则:
root@dev64:~# ipvsadm -ln
Virtual Server version 1.2.1 (size=4096)
a–?t LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 10.10.0.100:8090 rr
-> 192.168.1.3:8090 Masq 1 0 0
-> 192.168.1.4:8090 Masq 1 0 0
Client主机c1配置:
1、1张网卡,eth1
2、网卡配置(子网和lvs的eth2的mask相同):
auto eth1
iface eth1 inet static
address 10.10.0.3
netmask 255.255.0.0
RealServer主机r1配置:
1、1张网卡,eth1
2、网卡配置(子网和lvs的eth3的mask相同, gateway指向eth3的ip):
auto eth1
iface eth1 inet static
address 192.168.1.3
netmask 255.255.255.0
gateway 10.10.0.100
主机r2配置类似