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

对比 LVS 负载均衡群集的 NAT 模式和 DR 模式,比较其各自的优势 与基于 openEuler 构建 LVS-DR 群集

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

NAT 模式

部署简单:NAT 模式下,所有的服务器节点只需要连接到同一个局域网内,通过负载均衡器进行网络地址转换,就可以实现负载均衡功能。不需要对服务器节点的网络配置进行复杂的修改,也不需要特殊的网络设备支持,易于部署和维护。

对服务器要求低:服务器节点无需特殊配置,它们可以使用私有 IP 地址,通过负载均衡器进行 NAT 转换后对外提供服务。这使得在现有的网络环境中添加新的服务器节点变得较为容易,无需担心 IP 地址冲突等问题。

安全性较高:由于服务器节点使用私有 IP 地址,对外隐藏了内部网络结构,外部网络只能看到负载均衡器的公网 IP 地址,一定程度上提高了内部服务器的安全性,减少了外部攻击的暴露面。

支持端口映射:可以方便地实现端口映射功能,将外部请求的不同端口映射到内部服务器的不同端口或服务上,灵活地满足各种应用场景的需求,例如可以将外部的 80 端口请求映射到内部服务器的不同 Web 服务端口。

DR 模式

性能高效:DR 模式下,负载均衡器只负责将请求分发到后端服务器,后端服务器直接将响应数据包返回给客户端,无需经过负载均衡器再次转发。这样大大减少了负载均衡器的处理压力,提高了整个系统的响应速度和吞吐量,能够处理大量的并发请求。

支持大流量:由于响应数据直接从后端服务器返回给客户端,避免了 NAT 模式下可能出现的负载均衡器带宽瓶颈问题,特别适合处理大流量的网络服务,如大型网站、视频流服务等。

对网络依赖小:相比其他一些模式,DR 模式对网络的依赖相对较小,不需要特殊的网络设备支持复杂的功能。只需要保证负载均衡器和后端服务器之间的网络连接正常,并且能够进行正确的路由配置即可。

服务器可扩展性好:在 DR 模式下,添加或删除后端服务器节点对整个系统的影响较小,只需要在负载均衡器上进行相应的配置调整,后端服务器可以独立地进行扩展或收缩,方便实现系统的弹性扩展,以满足业务量的变化需求。

二 、LVS-DR 群集

1.环境

3台openEuler加一台rocky或4台openEuler

调度器 192.168.1.11

RS1  192.168.1.12

RS2  192.168.1.13

客户端  192.168.1.14

VIP 192.168.1.10/32

2.配置RS(两台都要)

2.1安装ngix,静态页面

[root@openEuler-1 ~]# yum install nginx -y
[root@openEuler-1 ~]# echo "web test page,ip is `hostname -I`" > /usr/share/nginx/html/index.html
[root@openEuler-1 ~]# systemctl enable --now nginx

2.2绑定VIP

[root@openEuler-1 ~]# curl localhost
web test page,ip is 192.168.1.12 
[root@openEuler-1 ~]# nmcli con add type dummy ifname dummy1 ipv4.method manual ipv4.addresses 192.168.1.10/32
Connection 'dummy-dummy1' (8d1da361-2b2f-4242-8926-6cead4ce9814) successfully added.



[root@openEuler-1 ~]# curl localhost
web test page,ip is 192.168.1.13
[root@openEuler-1 ~]# nmcli con add type dummy ifname dummy1 ipv4.method manual ipv4.addresses 192.168.1.10/32
Connection 'dummy-dummy1' (6140825e-f6c6-498c-972a-8845f28af910) successfully added.
 

2.3arp抑制

[root@openEuler-1 ~]# vim /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

输入下列代码使其生效

[root@openEuler-1 ~]# sysctl -p

3.配置调度器

3.1绑定VIP

[root@openEuler-1 ~]# nmcli con add type dummy ifname dummy1 ipv4.method manual ipv4.addresses 192.168.1.10/32
Connection 'dummy-dummy1' (d830eb43-e633-45d7-8702-1d7327ffd717) successfully added.

3.2安装ipvsadm

[root@openEuler-1 ~]# yum install ipvsadm -y

3.3配置LVS-DR

[root@openEuler-1 ~]# ipvsadm -At 192.168.1.10:80 -s rr 
[root@openEuler-1 ~]# ipvsadm -at 192.168.1.10:80 -r 192.168.1.12:80 -g
[root@openEuler-1 ~]# ipvsadm -at 192.168.1.10:80 -r 192.168.1.13:80 -g

4.测试 

相关文章:

  • 在 rtthread中,rt_list_entry (rt_container_of) 已知结构体成员的地址,反推出结构体的首地址
  • Unity崩溃后信息结合符号表来查看问题
  • 基于SpringBoot的在线车辆租赁信息管理系统
  • 电脑端调用摄像头拍照:从基础到实现
  • Ubuntu启动geteck/jetlinks实战:Docker启动
  • 程序诗篇里的灵动笔触:指针绘就数据的梦幻蓝图<10>
  • ffmpeg -muxers
  • Vue 3 和 <script setup> 的组件,它使用 v-for 来渲染一个嵌套的菜单结构。
  • vant4 van-list组件的使用
  • 【EI Scopus 双检索 | 稳定EI检索】第二届通信技术与软件工程国际学术会议 (CTSE 2025)
  • Notepad++ 中删除所有以 “pdf“ 结尾的行
  • Uniapp 原生组件层级过高问题及解决方案
  • 【Linux】多线程 -> 从线程概念到线程控制
  • BPMN.js 与 DeepSeek 集成:打造个性化 Web 培训项目的秘诀
  • 网络安全讲座之一:网络安全的重要性
  • C++11新特性之weak_ptr智能指针
  • 【新人系列】Python 入门(三十):工作常用第三方库 - 上
  • 51单片机(国信长天)矩阵键盘的基本操作
  • macOS git status 中文现实不正常 -解决方法
  • WebRTC与EasyRTC:开启智能硬件音视频通讯的全新旅程
  • 实物黄金哪个网站做的好/百度收录权重
  • 做鸡蛋期货看什么网站/网站推广方案模板
  • 网站建设价格比较/常州网络推广哪家好
  • 做网站品/百度发视频步骤
  • 怎么接网站来做/新闻投稿平台
  • 网站百度统计表格怎么做/青岛网络科技公司排名