博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LVS三种模式与八种调度算法
阅读量:6704 次
发布时间:2019-06-25

本文共 2317 字,大约阅读时间需要 7 分钟。

三种LVS负载均衡模式

1.NAT模式
网络地址转换,工作在网络层(三层),只有VIP是公网IP,其余都是私网IP,Real Server指定LVS为网关,LVS开启路由转发,源和目标地址转换,数据的进出期间,无论是进来的流量,还是出去的流量,都必须经过DR,会产生一种瓶颈,适合小网络,规模10台左右。

工作原理:

1>.用户发送请求报文到LVS的VIP上,VIP选择一个Real Server,并记录连接信息到hash表中,然后修改用户的请求报文的目的IP地址为Real Server的地址,将请求发给Real Server;

2>.Real Server收到请求报文包后,发现目的IP是自己的IP,于是处理请求,然后发送reply给LVS;

3>.LVS收到reply包后,修改reply包的的源地址为VIP,发送给用户;

4>.从用户来的属于本次连接的包,查hash表,然后发给对应的Real Server。

5>.当用户发送完毕,此次连接结束或者连接超时,那么LVS自动从hash表中删除此条记录。

2.DR模式

直接路由模式,工作TCP/IP数据链路层(二层),必须都是公网ip,要求是同网段(因为DR是转发给RS的,是在数据链路层实现的,DR要对二层包头进行改换,所以DRReal Server必须在一个广播域下)。不需要路由转发。需要关闭arp解析(抑制arp帧),客户请求处理后直接返回给客户。规模几十台左右。

工作原理:

1>.当一个用户发送一个WEB请求到VIP;

2>.LVS服务器根据VIP选择对应的Real Server的Pool,根据算法,在Pool中选择一台Real Server,并将这台Real Server的MAC地址作为目的MAC地址,重新将IP包封装成帧转给Real Server,LVS在hash表中记录该次连接;

3>.然后将用户的请求包发给选择的Real Server;

4>.最后选择的Real Server把应答包直接传给用户;

5>.当用户继续发包过来时,LVS根据更才记录的hash表的信息,将属于此次连接的请求直接发到刚才选择的Real Server上;当连接中止或者超时,hash表中的记录将被删除。

3.IP隧道模式

ip-tun模式,工作在网络层(三层),网卡需要具备tun隧道协议网卡,系统支持ip隧道,增加了数据传输时间,必须都是公网ip,可以是不同网段,跨路由,分散互联网不同位置,不需要路由转发。规模几十台左右。

工作原理:

1>用户发送请求报文包到LVS服务器的VIP上。

2>.VIP按照算法选择后端的一个Real Server,将用户的请求报文包封装到一个新的IP包里,新IP包的目的IP是Real Server的IP,然后转发给Real Server,并将记录一条消息到hash表中。

3>.Real Server收到包后,解封装,取出用户的请求报文包,发现他的目的地址是VIP,而Real Server发现在自己的lo:0口上有这个IP地址,于是处理用户的请求,然后将relpy这个请求报文包直接发给用户。

4>.该用户的后面的请求报文包,LVS直接按照hash表中的记录直接转发给Real Server,当传输完毕或者连接超时,那么将删除hash表中的记录。

LVS负载均衡的八种调度算法

1.轮叫rr(Round-RobinScheduling)

将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载。

2.加权轮叫wrr(WeightedRound-RobinScheduling)

根据真实服务器的不同处理能力来调度访问请求这样可以保证处理能力强的服务器处理更多的访问流量调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。

3.最小连接lc(Least-ConnectionScheduling)

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

4.加权最小连接wlc(WeightedLeast-ConnectionScheduling)

在集群系统中的服务器性能差异较大的情况下,调度器采用"加权最少链接"调度算法优化负载均衡性能,具有较高权值的服务器将承受较大比例的活动连接负载调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。

5.基于局部性的最少链接(Locality-BasedLeastConnectionsScheduling)

针对目标IP地址的负载均衡,将请求的目标IP地址找到离其最近的服务器进行使用,如果服务器不存在或者满载的话,就会继续寻找下一个服务器。

6.带复制的基于局部性最少链接(Locality-BasedLeastConnectionswithReplicationScheduling)

针对目标IP地址的负载均衡,根据请求的目标IP地址找出该地址所对应的服务器,如果服务器不存在或者满载的话,就会继续寻找下一个服务器。当服务器有一段时间没有被修改,则会从最忙的服务器组中删除。

7.目标地址散列(DestinationHashingScheduling)

根据请求的目标IP地址从静态分配的散列表中超出对应的服务器,如果找到可用的服务器且没有满载,则返回空。

8.源地址散列(SourceHashingScheduling)

根据请求的源IP地址从静态分配的散列表中超出对应的服务器,如果找到可用的服务器且没有满载,则返回空。

转载地址:http://xnzlo.baihongyu.com/

你可能感兴趣的文章
《Programming WPF》翻译 第8章 5.创建动画过程
查看>>
浅谈.NET编译时注入(C#-->IL)
查看>>
兔子机器人Blossom成为萌宠,软体机器人将会是设计新方向?
查看>>
笔记本竟是健康杀手
查看>>
李永辉:IBM大数据产品及实践路线图
查看>>
python装饰器入门
查看>>
【PMP】PMBOK 笔记 第2章 组织影响和项目生命周期
查看>>
安卓修改上层UI界面默认显示为竖屏显示(基于tiny4412开发板)
查看>>
一个著名的日志系统是怎么设计出来的?
查看>>
【干货】史蕾:大数据征信时代的个人信息保护
查看>>
[MethodImpl(MethodImplOptions.Synchronized)]、lock(this)与lock(typeof(...))
查看>>
中国人工智能学会通讯——仿脑GPS基于神经科学的器人定位与导航
查看>>
物联网创新 要具备五种思维
查看>>
《企业首席信息官制度建设指南》宣贯千里行将在京举行
查看>>
Ubuntu Linux继续统领云操作系统江湖
查看>>
台湾云端运算产业协会副理事长刘瑞隆:智能制造的发展离不开云计算人才
查看>>
BI的体系架构及相关技术
查看>>
微金时代:小额贷款公司如何做好“小额贷款贷前风险管控”
查看>>
大数据将在今后改变智能手机的应用方式
查看>>
SDN,这一年都经历了什么?
查看>>