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

【LVS】负载均衡之NAT模式

一、LVS概念

LVS(Linux Virtual Server)是一个基于Linux操作系统的虚拟服务器技术,用于实现负载均衡和高可用性。LVS通过将客户端的请求分发到多台后端服务器上,从而提高整体服务的处理能力和可靠性。

二、LVS优势

高性能:LVS工作在内核层,性能高效,能够处理大量并发请求。
高可用性:通过配置Keepalived等工具,LVS可以实现高可用性,确保服务的持续运行。
灵活性强:支持多种负载均衡算法和工作模式,适应不同的应用场景。

三、LVS整体架构

LVS的整体架构主要包括负载均衡器(Load Balancer)、后端服务器(Real Server)和客户端三部分。客户端的请求首先到达负载均衡器,然后由负载均衡器根据一定的调度算法将请求转发到后端服务器进行处理,处理结果再返回给客户端。

四、LVS中名词概念

VS Virtual Server
RS Real Server
CIP Client IP
VIP: Virtual serve IP VS 外网的 IP
DIP: Director IP VS 内网的 IP
RIP: Real server IP

五、LVS工作模式

LVS有以下四种模式,最后一种只在阿里内部使用。

1.LVS-NAT(Network Address Translation):在该模式下,负载均衡器不仅需要修改请求报文的目标地址,还需要修改响应报文的源地址,适用于小规模集群。

2.LVS-DR(Direct Routing):在该模式下,负载均衡器只修改请求报文的目标MAC地址,而不修改IP地址,后端服务器直接将响应报文发回客户端,适用于大规模集群。

3.LVS-TUN(IP Tunneling):该模式通过IP隧道将请求转发到后端服务器,后端服务器直接将响应报文发回客户端,适用于地理位置分散的集群。

4.LVS-FULLNAT:通过同时修改请求报文的源IP地址和目标IP地址进行转发

六、工作模式制NAT模式

1.NAT模式要求

  • 本质是多目标IPDNAT,通过将请求报文中的目标地址和目标端口修改为某挑出的RSRIPPORT实现转发
  • RIPDIP应在同一个IP网络,且应使用私网地址;RS的网关要指向DIP
  • 请求报文和响应报文都必须经由Director转发,Director易于成为系统瓶颈
  • 支持端口映射,可修改请求报文的目标PORT
  • VS必须是Linux系统,RS可以是任意OS系统

2. NAT实验

将题目中的100都替换成200

配置如下:

3.具体步骤

LVS配置

3.1配置网卡

配置eth0网卡,为nat模式(172.25.254.0)

[root@lvs ~]# vim /etc/NetworkManager/system-connections/eth0.nmconnection 

配置eth1网卡,为仅主机模式(192.168.0.0)

[root@lvs ~]# vim /etc/NetworkManager/system-connections/eth1.nmconnection 

3.2打开内核路由功能

(1)查看路由转发

(2)打开内核路由功能

(3)生效

3.3下载ipvsadm

[root@lvs ~]# systemctl stop ipvsadm

当ipvsadm停止时,才会执行成功以下命令,因为这是临时命令,重启服务后,就会消失

3.4临时命令

(1)添加虚拟服务器

(2)添加后端服务器

(3)查看负载均衡设置

3.5永久命令

(1)停止服务

(2) 将刚刚执行过的命令保存到文件中,就可永久执行

 

webserver1配置

webserver2配置

测试

 

相关文章:

【LVS】负载均衡之NAT模式

一、LVS概念 LVS(Linux Virtual Server)是一个基于Linux操作系统的虚拟服务器技术,用于实现负载均衡和高可用性。LVS通过将客户端的请求分发到多台后端服务器上,从而提高整体服务的处理能力和可靠性。 二、LVS优势 高性能&…...

ASP.NET Core 基础 - 入门实例

一. 下载 1. 下载vs2022 Visual Studio 2022 IDE - 适用于软件开发人员的编程工具 (microsoft.com) 学生,个人开发者选择社区版就行,免费的. 安装程序一直下一步下一步就行,别忘了选择安装位置,如果都放在C盘的话,就太大了. 2. 选择工作负荷 准备工作完成 二. 创建新项目 三…...

机器人主板维修|ABB机械手主板元器件故障

【ABB机器人电路板故障原因诊断】 针对上述故障现象,我们需要对ABB机器人IO板进行详细的故障诊断。以下是一些可能的故障原因: 1. 元器件老化或损坏:ABB机械手安全面板上的元器件在长期使用过程中可能出现老化、损坏或接触不良等问题&#xf…...

大数据Flink(一百零六):什么是阿里云实时计算Flink版

文章目录 什么是阿里云实时计算Flink版 一、产品概述 二、产品架构 三、产品优势 什么是阿里云实时计算Flink版 阿里云实时计算Flink版是一套基于Apache Flink构建的⼀站式实时大数据分析平台,提供端到端亚秒级实时数据分析能力,并通过标准SQL降低业…...

ERCOT中的专业术语解释

在ERCOT中,ECRSM 代表的是 “Emergency Contingency Resource Supplementary Market”。这个术语涉及到紧急备用资源市场,用于应对电力需求或供应的紧急情况。在ERCOT电网中,当系统面临极端情况或资源不足时,ECRSM 可以帮助确保电…...

Python酷库之旅-第三方库Pandas(069)

目录 一、用法精讲 276、pandas.Series.dt.is_quarter_start属性 276-1、语法 276-2、参数 276-3、功能 276-4、返回值 276-5、说明 276-6、用法 276-6-1、数据准备 276-6-2、代码示例 276-6-3、结果输出 277、pandas.Series.dt.is_quarter_end属性 277-1、语法 …...

基于hutools的国密SM2、3、4

文章目录 前言一. 代码 前言 最近还要深度研究hutools底层实现,一定要搞透澈,本章将会是持续更新 参考资料: Java代码实现SM2算法以及注意点总结(踩坑记录) 国密算法工具Smutil 一. 代码 import cn.hutool.core.uti…...

进程的等待(非阻塞轮询+阻塞)和替换控制详解

引言 在Linux系统中,进程管理是核心功能之一。理解进程的创建、执行和终止是系统编程中的基础。本文将深入探讨Linux中的进程控制机制,包括进程的生命周期、父子进程的交互、以及进程状态的管理 1. 进程创建:fork()函数 在Linux操作系统中…...

24/8/6算法笔记 支持向量机

支持向量机(Support Vector Machine, SVM)是一种监督学习算法,主要用于分类和回归任务。它基于统计学习理论中的结构风险最小化原理,通过找到数据点之间的最优边界来实现模型的泛化能力。 import numpy as np import matplotlib.…...

测试用例等级划分

基本等级(‌Level 1或P0)‌:‌这类用例设计系统基本功能,‌执行失败会导致多处重要功能无法运行。‌例如,‌单表维护中的增加功能、‌最平常的业务使用等,‌这些是发生概率较高的功能用例。‌这类用例在每一…...

打造Perl编译器前端:自定义语言处理的魔法

打造Perl编译器前端:自定义语言处理的魔法 Perl是一种强大而灵活的编程语言,它提供了丰富的文本处理能力,使其成为实现自定义编译器前端的理想选择。编译器前端通常负责源代码的词法分析、语法分析和语义分析。本文将详细介绍如何在Perl中实…...

Visual Studio 和 Visual Studio Code 的比较与应用偏向

Visual Studio 和 Visual Studio Code(VS Code)是微软开发的两个不同的开发工具,各有特点和优势,适用于不同的开发需求。下面是详细的比较和在实际应用中的偏向。 功能和特性 Visual Studio 完整的IDE:支持多种编程…...

Python打开JSON/CSV文件的正确方式(针对UnicodeDecodeError)

前言 我们在使用python的过程中,经常需要它完成一些数据处理的工作,其中尤以json/csv文件为常见。今天,博主针对UnicodeDecodeError异常进行试验,因为这个是新手最容易犯错的地方。 Q:如何应对 UnicodeDecodeError 读…...

深入解析TikTok广告开户白名单:规范与申请指南

在TikTok的广告平台上,白名单(Whitelist)系统作为一种重要的审核和管理机制,对广告账户的开设与运营起着至关重要的作用。 一、什么是TikTok广告开户白名单? 白名单的定义 白名单是一种预先批准的账户或广告内容列表…...

CSS技巧专栏:一日一例 19 -纯CSS实现超酷的水晶按钮特效

CSS技巧专栏:一日一例 19 -纯CSS实现超酷的水晶按钮特效 今天给大家分享一个纯CSS按钮水晶按钮,效果很赞,希望对大家有所帮助。 本例图片 案例分析 这个按钮看起来效果很赞,我们分析一下它由几个层组成: 1. 按钮本体:渐变层+按钮文字 2.用before伪元素实现高光层+内…...

ArcGIS基础:基于数据图框实现地理坐标系下不同投影转换的可视化效果

ArcGIS默认以第一次加载数据的坐标系决定整个工程的坐标系 可以通过改变数据框的投影坐标系,对地理数据进行快速投影变换,以可视化展示不同投影坐标系下的地理数据形状和形态 对数据框坐标系的改变,只是针对的显示参数的改变,并…...

⚡4. Kubernetes核心资源管理操作实战

文章目录 kubectl [command] [TYPE] [NAME] [flags]kubectl run 资源名称 --image镜像名称 --port端口号kubectl create -f 配置文件名称.yaml kubectl apply -f 配置文件名称.yaml快速编写yaml文件,通过命令导出新的yaml文件Kubernetes常见资源类型和缩写 kubectl …...

【Wireshark 抓 CAN 总线】Wireshark 抓取 CAN 总线数据的实现思路

最近看到一个帖子 Wireshark 对接 Windows 系统命名管道,抓取数据 我突然想到一个很有意思的方式 你没看错 用 Wireshark 来抓取 CAN 总线数据 【其实 Wireshark 上有 CAN 总线的的解码器,不信你可以在表达式栏打 can 试下,是有这个解码器的】…...

Linux网络编程3

并发服务器 1.TCP多进程并发服务器 服务器端: 客户端: 2.TCP多线程服务器 服务器端: 客户机端: 需要学习的函数还有 1. send() 函数 send() 函数用于在套接字上发送数据。它是网络编程中发送数据到对端的主要函数之一。 函数…...

gitlab 服务器安装

阿里云盘快传 百度链接 链接:https://pan.baidu.com/s/1Gn5bWHi45Dcpe1RH1S06dw 提取码:yai2 然后就是有一台服务器 cd /mkdir gitlab上传下载好的东西rpm -ivh gitlab-ce-10.8.4-ce.0.el7.x86_64.rpm 这里可以tab提示vim /etc/gitlab/gitlab.rb我建议…...

OpenClaw低代码实践:Kimi-VL-A3B-Thinking多模态任务可视化编排

OpenClaw低代码实践:Kimi-VL-A3B-Thinking多模态任务可视化编排 1. 为什么需要低代码多模态任务编排 去年我接手了一个数据分析项目,需要每天从几十个网页截图并提取关键信息。最初尝试用Python脚本OpenCV硬编码处理,但每当网页改版就得重写…...

联想拯救者工具箱:释放游戏本性能的终极免费解决方案

联想拯救者工具箱:释放游戏本性能的终极免费解决方案 【免费下载链接】LenovoLegionToolkit Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops. 项目地址: https://gitcode.com/gh_mirrors/le/LenovoLegionToolkit 联想拯救者…...

一站式机器学习环境配置:从操作系统到运行NLP-StructBERT

一站式机器学习环境配置:从操作系统到运行NLP-StructBERT 刚接触AI开发,是不是感觉第一步就卡住了?看着网上各种教程,又是装系统,又是配环境,还要搞什么CUDA驱动,头都大了。别担心,…...

OpenClaw技能开发入门:为千问3.5-35B-A3B-FP8定制多模态处理模块

OpenClaw技能开发入门:为千问3.5-35B-A3B-FP8定制多模态处理模块 1. 为什么需要自定义OpenClaw技能? 去年夏天,我负责一个数据分析项目时,每天要手动从上百张图表中提取关键数据点。当我发现OpenClaw可以通过技能扩展实现自动化…...

3分钟快速上手:免费城通网盘解析器终极指南

3分钟快速上手:免费城通网盘解析器终极指南 【免费下载链接】ctfileGet 获取城通网盘一次性直连地址 项目地址: https://gitcode.com/gh_mirrors/ct/ctfileGet 还在为城通网盘下载慢、广告多而烦恼吗?城通网盘解析器正是解决这些问题的利器&#…...

轻量嵌入模型实战:all-MiniLM-L6-v2部署与简单应用

轻量嵌入模型实战:all-MiniLM-L6-v2部署与简单应用 还在为文本搜索、智能问答或者文档分类项目寻找一个既快又准的文本向量化工具而发愁吗?传统的BERT模型虽然效果好,但动辄几百兆的体积和缓慢的推理速度,在资源有限的生产环境中…...

告别命令行!用wsl2distromanager轻松管理多个WSL2发行版(附详细图文)

告别命令行!用WSL2 Distro Manager轻松管理多个WSL2发行版 对于Windows开发者来说,WSL2已经成为日常开发不可或缺的工具。它让我们能在Windows环境下无缝运行Linux环境,享受两全其美的开发体验。然而,随着项目复杂度增加&#xff…...

2026 全新利器!餐饮零售实体门店督导的三款法宝,巡店稽查与整改追踪全搞定

在餐饮和零售行业担任督导的人员,每日都被工作压得喘不过气来。巡店、检查、整改、培训等任务接连不断,忙得不可开交。而且,他们常常会遭遇一些令人头疼的状况:总部制定的标准,到了门店执行起来就走样;上午…...

zk(zookeeper)的选举机制

zk中有两种角色:Leader 和 Fllower,Leader是集群各台电脑投票选举出来的。事务【非常重要】:一通操作,要么同时成立,要么都不成立。LeaderZookeeper 集群工作的核心。1.事务请求(写操作)的唯一调…...

Synopsys综合指令进阶指南:为什么90%的工程师都用错了full_case?

Synopsys综合指令进阶指南:为什么90%的工程师都用错了full_case? 在数字电路设计领域,Synopsys工具链中的full_case指令就像一把双刃剑——用得好可以优化电路结构,用不好则可能导致仿真与综合结果不一致的灾难性后果。本文将带您…...