ipvsadm管理LVS
环境
vip:192.168.37.10
前端lvs服务器
test11:192.168.37.11 lb01
test11:192.168.37.11 lb02后端web服务器
test13:192.168.37.13 nginx01
test14:192.168.37.14 nginx02系统版本:centos7.6
安装
- 安装管理工具:
yum -y install ipvsadm
- 查看当前LVS状态
[root@test11 ~]# ipvsadm -ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn
配置
lb服务器上设置
在enp0s3网卡绑定VIP地址(高可用):
ip addr add 192.168.37.10/24 dev enp0s3
清除当前所有LVS规则:
ipvsadm -C
控制浏览器与lb01的超时时间:
ipvsadm --set 30 5 60
LVS默认无80端口,需另外添加新的虚拟IP记录->控制lb01与nginx01、nginx02的超时时间:
ipvsadm -A -t 192.168.37.10:80 -s wrr -p 20
将虚拟服务关联到真实服务上:
ipvsadm -a -t 192.168.37.10:80 -r 192.168.37.13:80 -g -w 1 ipvsadm -a -t 192.168.37.10:80 -r 192.168.37.14:80 -g -w 1
查看配置结果
[root@test11 ~]# ipvsadm -ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 192.168.37.10:80 wrr persistent 20 -> 192.168.37.13:80 Route 1 0 0 -> 192.168.37.14:80 Route 1 0 0
WEB服务器上设置
在lo网卡绑定VIP地址:
ip addr add 192.168.37.10/32 dev lo
修改内核参数抑制ARP响应
cat >>/etc/sysctl.conf<<EOF #其目的是为了让rs顺利发送mac地址给客户端 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
测试
给web01的服务器设置index.html内容为web01,web02的服务器设置index.html内容为web02
在浏览器上输入:192.168.37.10,可以看到页面显示内容为web02,过一会再刷新一下页面显示的是web01。至此,测试成功
文档更新时间: 2019-07-23 16:46 作者:子木