使用Lvs DR模式实现负载均衡
LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,适应LVS可以构建高性能的负载均衡系统,LVS有三种模式即:LVS/NAT(网络地址转换)、LVS/TUN(IP隧道)、LVS/DR(直接路由),通常用的是DR模式,下面介绍一下DR模式的配置方式。
假设测试环境:使用虚拟IP192.168.1.243,调度机的IP地址是192.168.1.245,两台真实服务器的IP分别是192.168.1.246、192.168.1.247。
首先在调度机上安装ipvsadm
yum -y install ipvsadm
调度机设置虚拟IP
ifconfig eth0:0 192.168.1.243 netmask 255.255.255.255
route add -host 192.168.1.243 dev eth0:0
两台真实服务器设置虚拟IP
ifconfig lo:0 192.168.1.243 netmask 255.255.255.255
route add -host 192.168.1.243 dev lo:0
真实服务器配置arp忽略脚本(有几台配置几台)
vi /data0/arp_ignore.sh
加入
#!/bin/sh
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
赋予可执行权限
chmod a+x /data0/arp_ignore.sh
LVS调度机 配置LVS脚本
vi /data0/lvs.sh
加入
#!/bin/sh
ipvsadm -C
ipvsadm -At 192.168.1.243:80 -s rr
ipvsadm -at 192.168.1.243:80 -r 192.168.1.246:80 -g
ipvsadm -at 192.168.1.243:80 -r 192.168.1.247:80 -g
ipvsadm -L -n
赋予可执行权限
chmod a+x /data0/lvs.sh
在调度机以及各个服务器执行lvs.sh和arp_ignore.sh脚本后测试效果。