当前位置: 首页 > news >正文

1. 对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 。2. 基于 openEuler 构建 LVS-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地址,调度器是整个公司网关任何请求都要经过调度器,包括回应的。


 

实验准备环境

1,保持实验环境干净

准备四台机器

负载均衡服务器192.168.1.128
web1192.168.1.129
web2192.168.1.130
客户端192.168.1.11

VIP为192.168.1.127/32


配置web服务器 web1 web2

首先下载nginx

 yum install nginx -y

设置连接界面

echo "web test page, ip is `hostname -I`" > /usr/share/nginx/html/index.html

测试

在两台web服务器中增加VIP的相关配置

绑定地址

Linux Dummy 接口基础概念
Dummy 接口 是 Linux 操作系统中的一个虚拟网络接口,它不与任何物理硬件设备关联,主要用于测试和配置网络环境。Dummy 接口可以模拟一个网络接口,允许你在没有实际网络硬件的情况下进行网络相关的操作和测试。

 nmcli con add type dummy ifname dummy1 ipv4.method manual  ipv4.addresses  192.168.1.127/32

ARP抑制

在两台web服务器中配置

编辑/etc/sysctl.conf在最后增加一下内容


net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
net.ipv4.conf.dummy1.arp_ignore=1
net.ipv4.conf.dummy1.arp_announce=2

然后使其生效 


配置负载均衡192.168.1.128

 nmcli con add type dummy ifname dummy1 ipv4.method manual  ipv4.addresses  192.168.1.127/32

 接着下载管理工具ipvsadm
                     
[相关参数说明]
[root@Directory ~]# ipvsadm –help
-A  添加虚拟服务器
-t  设置群集地址(VIP,Virtual IP)
-s  指定负载调度算法
-a  添加真实服务器
-d  删除真实服务器
-r  指定真实服务器(Real Server)的地址
-m  使用NAT模式;-g、-i分别对应DR、TUN模式
-w  为节点服务器设置权重,默认为1

yum install ipvsadm -y

查看配置

ipvsadm -Ln

 测试

使用客户机192.168.1.11

相关文章:

  • DeepSeek 教我 C++ (3) : Optional / Variant 使用的应该注意的细节
  • Java 中的 HashSet 和 HashMap 有什么区别?
  • [操作系统] 基础IO:系统文件I/O
  • 基于springboot的留学服务管理平台的设计与开发(源码+文档)
  • 【deepseek与chatGPT辩论】辩论题: “人工智能是否应当具备自主决策能力?”
  • BGP分解实验·18——BGP选路原则之权重
  • 网络安全:挑战、技术与未来发展
  • Amazon S3导入Salesforce对象的ETL设计和导入状态日志管理
  • 领域驱动设计(DDD)是什么?——从理论到实践的全方位解析
  • Java gc完整认识和常见问题
  • 【Bluedroid】 BLE连接源码分析(一)
  • 每日OJ_牛客_剪花布条(string内置函数)
  • es6箭头函数和普通函数的区别
  • 排序算法衍生问题
  • 在 WSL上的 Ubuntu 中通过 Docker 来运行 Redis,并在微服务项目中使用redis
  • VGG 改进:加入GAMAttention注意力机制提升对全局信息捕捉能力
  • 服务器部署DeepSeek,通过Ollama+open-webui部署
  • DeepSeek助力学术论文写作[特殊字符]
  • 【进程与线程】System V IPC:消息队列(Message Queue)
  • Unity实现高性能多实例RTSP|RTMP播放器技术实践
  • 汕头违建豪宅“英之园”将强拆,当地:将根据公告期内具体情况采取下一步措施
  • 多个侵华日军细菌战部队留守名簿文件首次公布
  • 深圳中院回应“退休夫妻月入1.2万负债1.2亿”:其自述因经营不善负债
  • 美股全线收涨:道指涨逾千点,纳斯达克中国金龙指数涨5.4%
  • 河南洛阳新安县煤渣倾倒耕地:多年难恢复,为何至今未解决?
  • 伊美第四轮核问题谈判开始