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

news2025/2/19 15:46:30

一、 对比 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.测试 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2297910.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++17 中 std::lcm:从入门到精通

文章目录 一、引言二、std::lcm 的基本概念三、入门示例四、计算多个整数的最小公倍数五、std::lcm 的实现原理六、在实际项目中的应用七、注意事项八、总结 一、引言 在 C 编程中,处理数学运算时,计算最小公倍数(Least Common Multiple&…

html 点击弹出视频弹窗

一、效果: 点击视频按钮后,弹出弹窗 播放视频 二、代码 <div class="index_change_video" data-video-src="</

代码随想录算法【Day44】

Day44 1143.最长公共子序列 class Solution { public:int longestCommonSubsequence(string text1, string text2) {vector<vector<int>> dp(text1.size() 1, vector<int>(text2.size() 1, 0));for (int i 1; i < text1.size(); i) {for (int j 1; …

项目总结:java agent的使用

测试团队会做java agent的事&#xff0c;实现测试模拟&#xff0c;各种数据采集等等工作&#xff0c;而这些不需要开发改代码来做到&#xff0c;只需要挂载下agent。 目录 javaagent认识和例子代码例子&#xff1a;java.lang.instrument自定义实现一个javaagentagent jar测试 回…

如何借助NoETL指标平台实现数据分析、决策的提效?

通常&#xff0c;企业通过明确分析目标、定位所需分析的数据&#xff0c;再通过多渠道汇集销售数据、客户反馈、市场调研等信息&#xff0c;经过数据清洗、缺失值处理及格式标准化等手段&#xff0c;运用描述性统计、回归分析、聚类分析及关联规则挖掘等多样分析方法&#xff0…

大模型语言简介

大模型语言能做什么 信息提取 将长段文字中的信息抽取出来并且以结构化的方式输出。相比起传统NLP的方式&#xff0c;大模型在泛化能力上有非常大的提升&#xff0c;并且开发成本要低2个数量级。应用场景包括&#xff1a;论文论点论据提取、用户画像提取、舆情分析、病例结构…

手动配置IP

手动配置IP&#xff0c;需要考虑四个配置项&#xff1a; 四个配置项 IP地址、子网掩码、默认网关、DNS服务器 IP地址&#xff1a;格式表现为点分十进制&#xff0c;如192.168.254.1 子网掩码&#xff1a;用于区分网络位和主机位 【子网掩码的二进制表达式一定是连续的&#…

Golang 进阶训练营

一、Golang 的 slice、map、channel 1.1 slice vs array a : make([]int, 100) //切片 b : [100]int{} //数组array需指明长度&#xff0c;长度为常量且不可改变 array长度为其类型中的组成部分&#xff08;给参数为长度100的数组的方法传长度为101的会报错&#xff09; array在…

2-使用wifidog实现portal

wifidog是openwrt上面实现portal认证的一个开源工具&#xff0c;从网关端到服务器都帮你搭建好&#xff0c;通过学习wifidog的原理&#xff0c;后面就可以改造成自己需要的逻辑。 1. openwrt安装wifidog 添加源 vim 14.07/feeds.conf.defaultsrc-git wifidog https://github.c…

AI时代前端开发的创造力:解放还是束缚?

在人工智能&#xff08;AI&#xff09;快速发展的时代&#xff0c;AI技术的影响已经渗透到各个领域&#xff0c;从医疗保健到金融服务&#xff0c;再到创意产业。AI工具的出现&#xff0c;为前端开发带来了前所未有的效率提升&#xff0c;但也引发了人们对创造力的担忧&#xf…

有哪些免费的SEO软件优化工具

随着2025年互联网的不断发展&#xff0c;越来越多的企业意识到在数字营销中&#xff0c;网站的曝光度和排名至关重要。无论是想要提高品牌知名度&#xff0c;还是想要通过在线销售增加收益&#xff0c;SEO&#xff08;搜索引擎优化&#xff09;都是一项不可忽视的关键策略。而要…

FastExcel + Java:打造高效灵活的Excel数据导入导出解决方案

作者&#xff1a;后端小肥肠 &#x1f347; 我写过的文章中的相关代码放到了gitee&#xff0c;地址&#xff1a;xfc-fdw-cloud: 公共解决方案 &#x1f34a; 有疑问可私信或评论区联系我。 &#x1f951; 创作不易未经允许严禁转载。 姊妹篇&#xff1a; 基于AOP的数据字典实现…

node.js + html调用ChatGPTApi实现Ai网站demo(带源码)

文章目录 前言一、demo演示二、node.js 使用步骤1.引入库2.引入包 前端HTML调用接口和UI所有文件总结 前言 关注博主&#xff0c;学习每天一个小demo 今天是Ai对话网站 又到了每天一个小demo的时候咯&#xff0c;前面我写了多人实时对话demo、和视频转换demo&#xff0c;今天…

STM32+Proteus+DS18B20数码管仿真实验

1. 实验准备 硬件方面&#xff1a; 了解 STM32 单片机的基本原理和使用方法&#xff0c;本实验可选用常见的 STM32F103 系列。熟悉 DS18B20 温度传感器的工作原理和通信协议&#xff08;单总线协议&#xff09;。数码管可选用共阴极或共阳极数码管&#xff0c;用于显示温度值。…

Vulhub靶机 ActiveMQ 反序列化漏洞(CVE-2015-5254)(渗透测试详解)

一、开启vulhub环境 docker-compose up -d 启动 docker ps 查看开放的端口 漏洞版本&#xff1a;Apache ActiveMQ 5.x ~ Apache ActiveMQ 5.13.0 二、访问靶机IP 8161端口 默认账户密码 admin/admin&#xff0c;登录 此时qucues事件为空 1、使用jmet-0.1.0-all.jar工具将…

2025年二级建造师报名流程图解

2025年二级建造师报名时间&#xff01;附报名流程&#xff01; ⏰️已公布25年二建考试时间的省份如下&#xff1a; ️4月19日、20日考试的城市有&#xff1a;贵州 ️5月10日、11日考试的城市有&#xff1a;湖北、陕西、宁夏、甘肃、福建、浙江、江西、黑龙江、河南、湖南、…

hexo 魔改 | 修改卡片透明度

hexo 魔改 | 修改卡片透明度 ** 博客食物用更佳 博客地址 ** 这是笔者自己瞎倒腾的。作为前端菜鸡一枚&#xff0c;大佬们随便看看就好~ 我用的主题是 butterfly 4.12.0 分析 通过开发者工具可以看出来卡片的背景和 --card-bg 变量有关 再在 sources 下的 css 文件夹下的…

Golang的并发编程案例详解

Golang的并发编程案例详解 一、并发编程概述 并发编程是指程序中有多个独立的执行线索&#xff0c;并且这些线索在时间上是重叠的。在 Golang 中&#xff0c;并发是其核心特性之一&#xff0c;通过 goroutine 和 channel 来支持并发编程&#xff0c;使得程序可以更高效地利用计…

策略模式-小结

总结一下看到的策略模式&#xff1a; A:一个含有一个方法的接口 B:具体的实行方式行为1,2,3&#xff0c;实现上面的接口。 C:一个环境类&#xff08;或者上下文类&#xff09;&#xff0c;形式可以是&#xff1a;工厂模式&#xff0c;构造器注入模式&#xff0c;枚举模式。 …