CentOS使用LVS/TUN模式配置负载均衡

  与DR模式不同的是,TUN模式支持Director与RealServer处于不同的网段中,在生产模式中TUN模式可以良好的适应服务器位于不同机房的环境,但是必须要求RealServer机房的网关路由器允许源IP地址伪装。
  实验使用的路由器是Windows Server加3块网卡做的软路由。

服务器IP分配

角色 网络接口 IP地址 用途
Router eth0 192.168.103.254/24 网关
Router eth1 192.168.1.254/24 网关
Router eth2 192.168.2.254/24 网关
Director eth0 192.168.103.101 服务器IP
Director eth0:1 192.168.103.150 集群IP
RealServer1 eth0 192.168.1.101 服务器IP
RealServer1 tunl0 192.168.103.150 集群IP
RealServer2 eth0 192.168.2.101 服务器IP
RealServer2 tunl0 192.168.103.150 集群IP

Director配置

1
2
3
ipvsadm -A -t 192.168.103.150:80 -s lc
ipvsadm -a -t 192.168.103.150:80 -r 192.168.1.101 -i
ipvsadm -a -t 192.168.103.150:80 -r 192.168.2.101 -i

RealServer配置

1
2
ifconfig tunl0 192.168.103.150 netmask 255.255.255.255 up
echo 0 > /proc/sys/net/ipv4/conf/tunl0/rp_filter

  如果RealServer与Director位于同一个网段,那么还需要在RealServer上加入以下命令。

1
2
3
4
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo 1 > /proc/sys/net/ipv4/conf/tunl0/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/tunl0/arp_announce