LVS 负载均衡群集的 NAT 模式和 DR 模式

文章详细对比了LVS负载均衡的DR模式和NAT模式,强调DR模式减少负载均衡器的数据流量,提高效率,但要求在同一局域网,而NAT模式具有更好的操作系统兼容性但可能成为系统瓶颈。接着,文章介绍了如何在CentOS7上构建LVS-DR群集,包括配置调度器、设置LVS策略、搭建Web服务器、配置节点服务器以及抑制ARP响应的步骤。
摘要由CSDN通过智能技术生成

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 

DR 模式

* 负载各节点服务器通过本地网络连接,不需要建立专用的IP隧道

      原理:首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后负载均衡器就把客户端发送的请求数据包的目标MAC地址改成后端真实服务器的MAC地址(R-MAC)。真实服务器响应完请求后,查看默认路由,把响应后的数据包直接发送给客户端,不需要经过负载均衡器。

     优点:负载均衡器只负责将请求包分发给后端节点服务器,而RS将应答包直接发给用户。所以,减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,也能处理很巨大的请求量。

     缺点:需要负载均衡器与真实服务器RS都有一块网卡连接到同一物理网段上,必须在同一个局域网环境。

NAT模式

      原理:首先负载均衡器接收到客户的请求数据包时,根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后负载均衡器就把客户端发送的请求数据包的目标IP地址及端口改成后端真实服务器的IP地址(RIP)。真实服务器响应完请求后,查看默认路由,把响应后的数据包发送给负载均衡器,负载均衡器在接收到响应包后,把包的源地址改成虚拟地址(VIP)然后发送回给客户端。

     优点:集群中的服务器可以使用任何支持TCP/IP的操作系统,只要负载均衡器有一个合法的IP地址。

      缺点:扩展性有限,当服务器节点增长过多时,由于所有的请求和应答都需要经过负载均衡器,因此负载均衡器将成为整个系统的瓶颈。

两者的区别

DR模式不使用调度器为公司网关,而是路由设备,调度器只是分配访问的请求任务而回应的web页面,不经过调度器,直接通过网络设备回应,不容易造成阻塞而且所有节点都使用VIP地址。

在nat模式群集中,LSV负载均衡调度器是所有节点的访问internet的网关服务器其外网口地址也最为整个群集的VIP地址,调度器是整个公司网关任何请求都要经过调度器,包括回应的。

2. 基于 CentOS 7 构建 LVS-DR 群集

2.1配置LVS负载调度器


第一步:手动添加虚拟IP地址(VIP)(可以是永久添加也可以是临时添加),采用虚接口的方式,为ens33绑定VIP地址,以便响应群集访问。
[root@lvs1 ~]# nmcli con mod ens33 +ipv4.addresses 192.168.150.100/24    //永久添加
[root@lvs1 ~]# nmcli con up ens33
第二步:下载负载均衡工具
[root@lvs1 ~]# yum install ipvsadm -y

2.2配置LVS-DR群集策略

配置LVS负载均衡服务
[root@lvs1 ~]# ipvsadm -A -t 192.168.150.100:80 -s rr    //对TCP80端口提供负载分流服务,使用的调度为轮询
[root@lvs1 ~]# ipvsadm -ln
[root@lvs1 ~]# ipvsadm -a -t 192.168.150.100:80 -r 192.168.150.12:80    //添加节点服务器 192.168.150.12/
[root@lvs1 ~]# ipvsadm -a -t 192.168.150.100:80 -r 192.168.150.13:80  
[root@lvs1 ~]# ipvsadm-save     #保存配置
[root@lvs1 ~]# systemctl enable ipvsadm

2.3查看节点状态

[root@lvs1 ~]# ipvsadm -ln 

2.4给LVS2与LVS3 创建配置WEB服务器

首先:关闭防火墙

# systemctl stop firewalld.service
# firewall-cmd --state
第一步:搭建静态页面
LVS2:
[root@lvs2 ~]# yum install httpd -y
[root@lvs2 ~]# vim /var/www/html/index.html
web.test.pate,ip:192.168.150.12
[root@lvs2 ~]# systemctl start httpd
 
LVS3:
[root@lvs3 ~]# yum install httpd -y
[root@lvs3 ~]# vim /var/www/html/index.html
web2.test.pate,ip:192.168.150.13
[root@lvs3 ~]# systemctl start httpd

2.5配置节点服务器:需要在虚机中配置

lvs2:
为本机添加一台路由记录,将VIP的数据限制在本地,避免通信混乱
#ifconfig lo:100 192.168.150.100  netmask 255.255.255.255
#route add -host 192.168.150.100 dev lo
 
LVS3:
#ifconfig lo:100 192.168.150.100  netmask 255.255.255.255
#route add -host 192.168.150.100 dev lo

2.6手工在RS端抑制ARP响应

LVS1:
[root@lvs1 ~]#yum install https://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/arptables-0.0.4-8.el7.x86_64.rpm
 
[root@lvs1 ~]# echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
[root@lvs1 ~]# echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
[root@lvs1 ~]# echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
[root@lvs1 ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
 
[root@lvs1 ~]# ipvsadm -ln          #查看节点状态
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Gur.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值