一、环境规划

准备4台安装好CentOS7.4系统的虚拟机,内存512M。所有虚拟机的防火墙和Selinux关闭.主机名及IP地址关系如下:

主机名称规划 外网ip(nat) 内网ip(nat)
lb03 10.0.0.15/24 172.16.1.15/24
lb04 10.0.0.16/24 172.16.1.16/24
web03 10.0.0.17/24 172.16.1.17/24
web04 10.0.0.18/24 172.16.1.18/24

web03和web04安装web软件,并满足下面条件:
curl http://10.0.0.17/页面底部得到结果为web03
curl http://10.0.0.18/页面底部得到结果为web04

二、用ipvsadm管理lvs

1.安装使用LVS[lb03]

1
2
3
4
5
6
[root@xxx ~]# yum install ipvsadm -y
[root@xxx ~]# ipvsadm
[root@xxx ~]# lsmod|grep ip_vs
ip_vs 141092 0
nf_conntrack 111302 1 ip_vs
libcrc32c 12644 2 xfs,ip_vs

2.配置LVS负载均衡服务[lb03]

1)绑定vip

1
ip addr add 10.0.0.13/24 dev eth0

2)配置ipvsadm
清除当前所有LVS规则(-C)
设置tcp、tcpfin、udp链接超时时间(–set)
添加虚拟服务(-A),调度算法见man ipvsadm
将虚拟服务关联到真实服务上(-a)
查看配置结果(-ln)

1
2
3
4
5
6
7
ip addr add 10.0.0.13/24 dev eth0
ipvsadm -C
ipvsadm --set 30 5 60
ipvsadm -A -t 10.0.0.13:80 -s wrr -p 20
ipvsadm -a -t 10.0.0.13:80 -r 10.0.0.17:80 -g -w 1
ipvsadm -a -t 10.0.0.13:80 -r 10.0.0.18:80 -g -w 1
ipvsadm -ln

3.web服务器配置

1)lo网卡绑定VIP

1
ip addr add 10.0.0.13/32 dev lo

2)修改内核参数抑制APR响应

1
2
3
4
5
6
7
cat >>/etc/sysctl.conf<<EOF
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
EOF
sysctl -p

以上设置完成后,就可以在web界面进行操作并验证了