LVS负载均衡(DR模式)集群配置

架构图

在这里插入图片描述

LVS-DR工作原理

①.客户端将请求发往前端的负载均衡器(load server),请求报文源地址是CIP,目标地址为VIP(192.168.100.20)。
②.负载均衡器收到报文后,发现请求的是在规则里面存在的地址,那么它将客户端请求报文的源MAC地址改为自己DIP的MAC址,目标MAC改为了RIP的MAC地址,并将此包发送给RS(如real server1)。
③.RS发现请求报文中的目的MAC是自己,就会将次报文接收下来,处理完请求报文后,将响应报文通过Io接口送给ens32网卡直接发送给客户端。

特点

  • 1,集群节点和director必须在- -个物理网络内
  • 2,RIP可以使用公网地址或私有地址
  • 3,director仅 处理入站请求,director服务 器的压力比较小
  • 4,集群节点网关不指向director, 故出站不经过director
  • 5,不支持端口映射
  • 6,大多数操作系统可以作为realserver, 要支持隔离arp广播

ARP问题

通常,DR模式需要在Real-server.上配置VIP,配置的方式为:/sbin/ifconfig lo:0 inet VIP netmask 255.255.255.255
原因在于,当LVS把client的 包转给Real-server时,因为包的目的IP地址是VIP,那么如果Real-server收到这个包后,发现包的目的IP不是自己的系统IP,那么就会认为这个包不是发给自己的,就会丢弃这个包,所以需要将这个IP地址绑到网卡上;当发送应答包给client时,Real-server就 会把包的源和目的地址调换,直接回复给client.
关于ARP广播:

  • 上面绑定VIP的掩码是"255.255.255.255",说明广播地址是其本身,那么他就不会将ARP发送到实际的自己该属于的广播域了,这样防止与LVS上VIP冲突,而导.致IP冲突。
  • 另外在Linux的Real-server上,需要设置ARP的sysctl选项

搭建步骤

LVS服务器配置

LVS准备VIP和路由

一、添加VIP

[root@lvs-server ~]# ifconfig ens32:0 192.168.100.20 broadcast 192.168.100.255 netmask 255.255.255.0 up
[root@lvs-server ~]# route add -host 192.168.100.20 dev ens32:0

二、设置路由转发
调整/proc策略:因客户端再发起请求时,是请求的VIP地址的虚拟服务器,但是我们又把代理的真实服务器的VIP通过设置关闭了APR请求,所有调整重定向参数打开调度器的VIP地址的ARP请求

[root@lvs-server ~]# vim /etc/sysctl.conf
//配置文件中键入:
net.ipv4.ip_forward = 1		//开启路由功能
net.ipv4.conf.all.send_redirects = 0	//禁止转发重定向报文
net.ipv4.conf.ens32.send_redirects = 0	//禁止ens32转发重定向报文
net.ipv4.conf.default.send_redirects = 0	//禁止转发默认重定向报文

[root@lvs-server ~]# sysctl -p	//启用
net.ipv4.ip_forward = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.ens32.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0

LVS设置负载均衡条目/规则

[root@lvs-server ~]# yum -y install ipvsadm
[root@lvs-server ~]# ipvsadm -A -t 192.168.100.20:80 -s rr
[root@lvs-server ~]# ipvsadm -a -t 192.168.100.20:80 -r 192.168.100.13:80 -g
[root@lvs-server ~]# ipvsadm -a -t 192.168.100.20:80 -r 192.168.100.14:80 -g`	//-g:DR模式
[root@lvs-server ~]# ipvsadm-save > /etc/sysconfig/ipvsadm	//使配置永久生效

WEB集群配置

两台web服务器安装好nginx,并将后台nfs服务器的分享目录挂载至相应网页目录

两台web配置lo:0虚拟网卡

[root@real-server1 ~]# ifconfig lo:0 192.168.100.20/32
[root@real-server2 ~]# ifconfig lo:0 192.168.100.20/32

两台web配置内核参数

[root@real-server1 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore	//忽略ARP响应,不允许收
[root@real-server1 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce	//为了让VIP包发出去,允许发
[root@real-server2 ~]# echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@real-server2 ~]# echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce

客户端访问测试

[root@client ~]# elinks --dump http://192.168.100.20
   web
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

屎到淋头还嚼便

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值