linux LVS负载均衡原理 NAT DR TUN FULLNAT 模式

LVS DR模型负载均衡 健康检查 LVS简介 LVS(Linux virtual server),即Linux虚拟服务器。是因为LVS自身是个负载均衡器(director),不直接处理请求,而是将请求转发至位于它后端真正的服务器realserver上,所以是虚拟服务器 LVS是四层(传输层tcp/udp)、七层(应用层)的负载均衡工具,只不过大众一般都使用它的四层负载均衡功能ipvs,而七层的内容分发负载工具ktcpvs(ker... 阅读详情

原文:https://blog.youkuaiyun.com/lcl_xiaowugui/article/details/81701949

LVS原理篇:LVS简介、结构、四种模式、十种算法

LVS是Linux virtual server的缩写,为linux虚拟服务器,是一个虚拟的服务器集群系统。LVS简单工作原理为用户请求LVS VIP,LVS根据转发方式和算法,将请求转发给后端服务器,后端服务器接收到请求,返回给用户。对于用户来说,看不到Web后端具体的应用。

一、LVS负载均衡简介

可伸缩网络服务有很多结构,但都有一个共同点:它们都需要一个前端的负载调度器。而实现虚拟网络服务的主要技术指出IP负载均衡技术是在负载调度器的实现技术里面效率最高的一个。
在已有的IP负载均衡技术中,主要有通过网络地址转换将一组服务器构成一个高性能的、高可用的虚拟服务器,通常称为VS/NAT技术。在分析VS/NAT的缺点和网络服务的非对称的基础上,可以通过IP隧道实现虚拟服务器的方法VS/TUN和通过直接路由实现虚拟服务器的方法VS/DR,它们可以极大地提高系统的伸缩性。(摘自 LINUX企业运维实战一书中)

二、LVS结构

LVS集群分为三层结构:

  • 负载调度器(Load Blancer):是整个LVS集群对外的前端机器,负责敬爱嗯client的请求发送到一组服务器【多台 LB IP】上执行,而client则认为返回来是同一个IP(通常把这个IP成为虚拟ip或VIP)
  • 服务器池(server pool):一组真正执行clinet请求的服务器,一般是web服务器;除了web,还有FTP、MAIL、DNS等
  • 共享存储(shared stord):它为server pool提供了一个共享的存储区,很容易让服务器池拥有相同的内容,提供相同的服务

三、LVS相关术语

  1. DS:Director Server。指的是前端负载均衡器节点
  2. RS:Real Server。后端真实的工作服务器
  3. VIP:向外部直接面向用户请求,作为用户请求的目标的IP地址
  4. DIP:Director Server IP,主要用于和内部主机通讯的IP地址
  5. RIP:Real Server IP,后端服务器的IP地址
  6. CIP:Client IP,访问客户端的IP地址

四、LVS负载均衡工作原理

1、LVS DR模式

LVS DR原理详解图

这里写图片描述

LVS DR原理:用户请求LVS到达director,director将请求的报文的目的MAC地址改为后端的realserver的MAC地址,目的IP为VIP(不变),源IP为client IP地址(不变),然后director将报文发送到realserver,realserver检测到目的地址为自己本地的VIP,如果在同一网段,将请求直接返回给用户,如果用户跟realserver不在同一个网段,则需要通过网关返回给用户。

LVS DR特性:

  • 前端路由将目标地址为VIP报文统统发给Director Server
  • RS跟Director Server必须有一个网卡在同一个物理网络中
  • 所有的请求报文经由Director Server,但响应报文必须不能进过Director Server
  • 所有的real server机器上都有VIP地址

2、LVS NAT模式

LVS NAT原理详解图
d

LVS NAT原理:用户请求LVS到达director,director将请求的报文的目的IP改为RIP,同时将报文的目标端口也改为realserver的相应端口,最后将报文发送到realserver上,realserver将数据返回给director,director再把数据发送给用户

LVS NAT特性:

  • NAT模式修改的是目的ip,直接走的是switch不需要修改mac地址,所以VIP和RIP不需要在同一个网段内
  • NAT的包的进出都需要经过LVS,所以LVS可能会成为一个系统的瓶颈问题

3、LVS FULLNAT模式

LVS FULLNAT报文变化

LVS FULLNAT特性:

  • FULLNAT模式也不需要DIP和RIP在同一网段
  • FULLNAT和NAT相比的话:会保证RS的回包一定可到达LVS
  • FULLNAT需要更新源IP,所以性能正常比NAT模式下降10%

4、LVS TUN原理

LVS TUN原理详解图

LVS TUN原理:用户请求LVS到达director,director通过IP-TUN加密技术将请求报文的包封装到一个新的IP包里面,目的IP为VIP(不变),然后director将报文发送到realserver,realserver基于IP-TUN解密,然后解析出来包的目的为VIP,检测网卡是否绑定了VIP,绑定了就处理这个包,如果在同一个网段,将请求直接返回给用户,否则通过网关返回给用户;如果没有绑定VIP就直接丢掉这个包

LVS TUN特性:

  • TUNNEL必须在所有的realserver上绑定VIP
  • realserver直接把包发给client
  • 隧道模式运维起来会比较难,所以一般不用

5、四种模式的比较

  • 
  • 是否需要VIP和realserver在同一网段
    DR模式因为只修改包的MAC地址,需要通过ARP广播找到realserver,所以VIP和realserver必须在同一个网段,也就是说DR模式需要先确认这个IP是否只能挂在这个LVS下面;其他模式因为都会修改目的地址为realserver的IP地址,所以不需要在同一个网段内
  • 是否需要在realserver上绑定VIP
    realserver在收到包之后会判断目的地址是否是自己的IP
    DR模式的目的地址没有修改,还是VIP,所以需要在realserver上绑定VIP
    IP TUN模式值是对包重新包装了一层,realserver解析后的包的IP仍然是VIP,所以也需要在realserver上绑定VIP
  • 四种模式的性能比较
    DR模式、IP TUN模式都是在包进入的时候经过LVS,在包返回的时候直接返回给client;所以二者的性能比NAT高
    但TUN模式更加复杂,所以性能不如DR
    FULLNAT模式不仅更换目的IP还更换了源IP,所以性能比NAT下降10%
    性能比较:DR>TUN>NAT>FULLNAT

五、LVS负载均衡十种算法

1. 轮叫调度 rr
均等地对待每一台服务器,不管服务器上的实际连接数和系统负载

2. 加权轮叫 wrr
调度器可以自动问询真实服务器的负载情况,并动态调整权值

3. 最少链接 lc
动态地将网络请求调度到已建立的连接数最少的服务器上
如果集群真实的服务器具有相近的系统性能,采用该算法可以较好的实现负载均衡

4. 加权最少链接 wlc
调度器可以自动问询真实服务器的负载情况,并动态调整权值
带权重的谁不干活就给谁分配,机器配置好的权重高

5. 基于局部性的最少连接调度算法 lblc
这个算法是请求数据包的目标 IP 地址的一种调度算法,该算法先根据请求的目标 IP 地址寻找最近的该目标 IP 地址所有使用的服务器,如果这台服务器依然可用,并且有能力处理该请求,调度器会尽量选择相同的服务器,否则会继续选择其它可行的服务器

6. 复杂的基于局部性最少的连接算法 lblcr
记录的不是要给目标 IP 与一台服务器之间的连接记录,它会维护一个目标 IP 到一组服务器之间的映射关系,防止单点服务器负载过高。

7. 目标地址散列调度算法 dh
该算法是根据目标 IP 地址通过散列函数将目标 IP 与服务器建立映射关系,出现服务器不可用或负载过高的情况下,发往该目标 IP 的请求会固定发给该服务器。

8. 源地址散列调度算法 sh
与目标地址散列调度算法类似,但它是根据源地址散列算法进行静态分配固定的服务器资源。

9. 最少期望延迟 sed
不考虑非活动链接,谁的权重大,优先选择权重大的服务器来接收请求,但权重大的机器会比较忙

10. 永不排队 nq
无需队列,如果有realserver的连接数为0就直接分配过去

参考链接


戴尔G3/AWCC用户必看:揪出WMI Provider Host疯狂占用的元凶,附5.4.35旧版回退保姆级教程 本文针对戴尔G3/AWCC用户遇到的WMI Provider Host异常占用问题,提供了详细的诊断方法和解决方案。通过分析AWCC 5.5.14.0版本的资源占用问题,指导用户回退到稳定版AWCC 5.4.35,并附上保姆级教程和预防措施,帮助用户彻底解决系统卡顿问题。 阅读详情

相关推荐

用逐飞STC32G库做个智能小车:编码器测速、PWM调电机、ADC读电池电压(完整项目)

本文详细介绍了如何使用逐飞科技的STC32G12K128开源库构建智能小车项目,涵盖编码器测速、PWM电机控制和电池电压监测等核心功能。通过硬件选型、开发环境搭建、代码实现及调试技巧的全流程讲解,帮助开发者快速掌握基于STC32G的嵌入式系统开发,实现高性能的智能小车控制。

weixin_42526417的博客 194

lvs 负载均衡fullnat 模式clientip 怎样传递给 realserver

关于LVS和FULLNAT的介绍可以看一下 淘宝吴佳明(普空)的视频  http://blog.aliyun.com/1750 ,FULLNAT 模式很大简化了LVS的配置和部署,目前淘宝和百度基本上都在使用FULLNAT模式来作为接入侧的负载均衡模式.         百度的LVS叫做BVS, Baidu Virtual Server, 是在LVS基础上修改的增加了L3 Though 和 S

mumumuwudi的博客 1万+

关于笔记本测试的面试准备 2021-10-11

** 关于笔记本测试的面试准备 ** 一、根据JD分析,工作内容以软测为主,硬件知识需要了解一点。 以下几个问题为主要: 1.了解VGA、audio、wlan、bt、TP 、camera等driver,BIOS和image测试。 2.了解性能测试工具?压力测试相关设置? 3.了解preload流程? 二、解决 VGA: video graphics array ——笔记本上外接显示器的接口。 【VGA接口兼容性更强,但是不支持高分辨率。 支持高分辨率:HDMI、DIV、TP】 bt【Bluetooth

xw_009的博客 1866

实现keepalived高可用集群:基于NAT模式

注意:NAT模式的keepalive做的时候vip和dip都要漂移,因为要在real-server上配置指向lvs上的dip地址的路由,这个路由只能指定一个dip地址,所以dip要跟着一起漂移过去;还有一个方法就是写一个脚本,当lvs-server在master和backup之间切换时实现在real-server上重新指定一个在工作状态的lvs-server的dip的路由,这个比较复杂,不如直接实现

盛夏北梦的博客 2134

深度探索:非线性随机森林(Nonlinear Random Forest,NL-RF)原理及应用

非线性随机森林(NL-RF)旨在通过结合集成方法与高级技术来捕捉和建模数据中的非线性关系,从而改善传统随机森林在处理复杂非线性数据结构时的表现。

qq_51320133的博客 2067

固定时间收敛的控制器设计(基础知识)

针对控制系统的有限时间收敛和固定时间收敛给出一些常用定理。

qq_40241332的博客 1万+

LVS负载均衡集群(NAT——DR——KEEPALIVED)

一、集群 1.集群的含义 ①Cluster、集群、群集 ②由多台主机构成,但对外只表现为一个整体,只提供一个访问入口(域名与IP地址),相当于一台大型计算机。 2.目前的问题 互联网应用中,随着站点对硬件性能、响应速度、服务稳定性、数据可靠性等要求越来越高,单台服务器已经无法满足负载均衡及高可用性的要求。 3.解决方法 ①、使用价格昂贵的小型机、大型机 ②、使用多台相对廉价的普通服务器构建服务集群 通过整合多台服务器,使用LVS来达到服务器的高可用和负载均衡,并且同一个IP地址对外提供相同的服务

YsDou的博客 817

【全网最新】使用 1panel面板 部署若依系统( springboot 和 vue)项目

打开前端项目的vue.config.js文件,检查devServer下的proxy代理部分,然后将下面这个端口修改为你要在打包后访问的端口,即使用nginx代理前的接口。这个端口默认是80端口,这里把其修改为不会冲突的8010端口,后台接口的地址配置为9080,不过感觉这里设置的8010和9080可能没有用,因为部署前端静态页面是,也配置了一次网页的外部接口和api的接口,后期有空了再验证。打开右侧的Maven,点击:生存期->package,然后点击运行,等待打包成功,包在如图所示的文件夹中。

老薛的专栏 1756

LVS原理简介

LVS是Linux virtual server的缩写,为linux虚拟服务器,是一个虚拟的服务器集群系统。LVS简单工作原理为用户请求LVS VIP,LVS根据转发方式和算法,将请求转发给后端服务器,后端服务器接收到请求,返回给用户。对于用户来说,看不到Web后端具体的应用。 1. LVS负载均衡简介 可伸缩网络服务有很多结构,但都有一个共同点:它们都需要一个前端的负载调度器。而实现虚拟网络服务的主要技术指出IP负载均衡技术是在负载调度器的实现技术里面效率最高的一个。 在已有的IP负载均衡技术中,主要

傅红雪的专栏 4632

python实现马丁策略(股市) (附完整源码)

python实现马丁策略(股市) (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 603

111. 如何创建 SAP ABAP 锁对象(Lock Object)和加锁以及解锁函数

至此,我们完成了 ABAP 系统锁机制和加锁解锁函数的介绍。有了这些基础知识,大家就能在实际工作中,使用 Lock Object 和加锁解锁函数,编写出支持并发访问控制的 ABAP 应用程序了。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1533

LVS 工作原理图文讲解,非常详细!

LVS 工作原理图文讲解,非常详细! 原创 肖邦Linux DevOps技术栈 今天 作者:肖邦Linux 博客地址:https://blog.youkuaiyun.com/liwei0526vip 一、负载均衡由来 在业务初期,我们一般会先使用单台服务器对外提供服务。随着业务流量越来越大,单台服务器无论如何优化,无论采用多好的硬件,总会有性能天花板,当单服务器的性能无法满足业务需求时,就需要把多台服务器...

sunfei927的博客 2041

AI大模型:(三)3.2 Spring AI实现Agent

SpringAI实现了流式对话功能,通过与Ollama模型集成完成前后端交互,当前版本存在thinking信息丢失问题。系统支持两种工具注册方式(方法注解和函数式),并内置时间工具类展示外部工具调用能力。记忆功能提供多种存储方案(内存、JDBC、NoSQL等),实现跨对话轮次的上下文保持。MCP协议集成方面,服务端实现计算和业务查询工具,客户端支持12306及自定义业务系统接入。完整演示了流式对话、工具调用与记忆功能的综合应用。该实践构建了具备复杂交互能力的AI系统,同时指出生产环境需关注的安全与优化问题。

haylee的专栏 1008

lvs四种工作模式简介

lvs:linux virtual server 1.四种工作模式: dr:直接路由模式 tun:隧道模式 nat:路由转发模式 fullnat模式 性能比较:DR>TUN>NAT>FULLNAT 2.LVS相关术语 DS:Director Server。指的是前端负载均衡器节点 RS:Real Server。后端真实的工作服务器 VIP:向外部...

weixin_44214830的博客 1万+

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Day63-LVS四层负载均衡及结合Nginx7层负载均衡实践

LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统,可以在UNIX/LINUX平台下实现负载均衡集群功能。该项目是中国国内最早出现的自由软件项目之一。

苦难带不走梦想 1863

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

LVS基础

LVS(Linux Virtual Server), Linux 虚拟服务器,是一个虚拟的服务器集群系统,本项目在 1998 年 5 月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。LVS主要用于多服务器的负载均衡。工作在网络4层,目标是通过集群和Linux操作系统实现一个高性能、高可用的服务器集群,具有较好的可伸缩性(Scalability)、可靠性(Reliability)和可管理性(Manageability)。

weixin_49799299的博客 1535

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

LVS(Linux virual server)

LVS是集群的调度器,而企业的架构由集群来完成。系统性能的提升方式:1、Scale UP:向上扩展,增强2、Scale Out:向外扩展,增加设备,调度分配问题,Cluster一、集群与分布式集群Cluster:用于解决访问压力。单机处理到达瓶颈的时候,你就把单机复制几份,这样就构成了一个“集群”。集群中每台服务器就叫做这个集群的一个“节点”,所有节点构成了一个集群。每个节点都提供相同的服务,集群中,每一台服务器实现的功能没有差别,数据。

2302_81660255的博客 1034

高可用负载均衡集群(2)-LVS负载均衡的介绍及LVS的不同模式

目录 一.LVS简介 二.LVS的基本工作原理 三、LVS的组成 四、LVS相关术语 五.LVS三种模式的详解 六.总结 七.新的转发模式FULLNAT模式 一.LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中。该项目在Linux内核中实现了基于IP的数据请求负载均衡调度方案,其体系结构如图1所示,终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的...

weixin_43215948的博客 278

2、高可用负载均衡集群——LVS负载均衡的介绍及LVS的不同模式(1)

目录   一. LVS简介  二.LVS的基本工作原理 三、LVS的组成 四、LVS相关术语 五.LVS三种模式的详解 六.总结  七.新的转发模式FULLNAT模式 一. LVS简介  LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主...

qq_27172205的博客 224

LVS

LVS简介 LVS(Linux Virtual Server)即Linux虚拟服务器,是一个虚拟的服务器集群系统,由章文嵩博士在1998年5月成立,在linux2.6+后将lvs自动加入了kernel模块,我们看下lvs在我们日常的服务器架构所在的位置: LVS调度算法 在内核中的连接调度算法上,IPVS已实现了以下八种调度算法: 轮叫调度(Round-Robin Scheduling) 加权轮叫调度(Weighted Round-Robin Scheduling) 最小连接调度(Least-Connec

qq_44784155的博客 169

企业—在lvs的DR模式下实现负载均衡、后端服务器的健康检查、高可用

1.相关介绍 负载均衡可由软件和硬件来实现,一般在中小型企业,他们采用的是软件,硬件的稍微贵一些,并且中小型企业一般也用不到太多,如果选择硬件会浪费,一般只有大型的企业由可能需要使用硬件构成的负载均衡。 负载均衡软件的实现有:lvs,haproxy,nginx,httpd,varnish. 这里我们讲解lvs 2.什么是lvs LVS ( Linux Virtual Server ) 即linu...

xy_的博客 463

LVS集群

1. LVS介绍 LVS,Linux Virtual Server LVS是章文嵩博士发起的自由软件项目,它的官方站点是http://www.linuxvirtualserver.org。LVS工作在内核空间,实现TCP/IP协议群的四层路由,在Linux2.4内核以前,使用LVS时必须要重新编译内核以支持LVS功能模块,但从Linux2.4内核以后已经完全内置了LVS的各个功能模块,无需给内核打任何补丁,可以直接使用LVS提供的各种功能。 负载调度器(load balancer/Director):由一台

- 227

LVS集群技术

LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器。LVS是一个开源的负载均衡软件,运行在Linux操作系统上,通过IP负载均衡技术和基于内容请求分发技术来实现高性能、高可用的服务器集群。

2301_80829238的博客 805

LVS知识点总结

LVS( Linux虚拟服务器) 负载均衡原理: 负载均衡作用: 1.解决并发压力,提高应用处理性能(增加吞吐量,加强网络处理能力); 2.提供故障转移,实现高可用; 3.通过添加或减少服务器数量,提供网站伸缩性(扩展性); 4.安全防护;(负载均衡设备上做一些过滤,黑白名单等处理) LVS体系结构: Load Balancer层:位于整个集群系统的最前端,有一台或者...

luohuayu111的博客 589

LVS(Linux virual server)实验

Cluster: 集群是为了解决某个特定问题将堕胎计算机组合起来形成的单个系统:LoadBalancing(负载均衡)由多个主机组成,每个主机只承担一部分访问:High Availiablity(高可用)SPOF(single Point Of failure)MTBF:Mean Time Between Failure 平均无故障时间,正常时间MTTR:Mean Time To Restoration( repair)平均恢复前时间,故障时间。

zy1418597796的博客 1194

LVS(Linux virual server)基础概念详解

​​LVS​​:Linux Virtual Server,Linux内核集成的四层负载均衡器,负载调度器,内核集成,章文嵩,阿里的四层SLB(Server LoadBalance)是基 于LVS+keepalived实现LVS 官网: http://www.linuxvirtualserver.org/lvs集群体系结构:​​关键术语​​:VS(Virtual Server):调度器RS(Real Server):真实服务器VIP(Virtual IP):对外服务IP。

m0_74345115的博客 730
上一篇: Torch Fails to build against CUDA 10
下一篇: LVS 负载均衡 DR模式环境搭建
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值