设为首页 收藏本站
查看: 973|回复: 0

[经验分享] LVS(Linux Virtual Server)三种负载均衡模型和十种调度的简单介绍

[复制链接]
累计签到:7 天
连续签到:1 天
发表于 2015-9-5 08:36:02 | 显示全部楼层 |阅读模式
  

  

LVS (Linux Virtual Server)
LVS(Linux Virtual Server)其实就是针对高可伸缩、高可用网络服务的需求,给出了基于IP层和基于内容请求分发的负载平衡调度解决方法,并在Linux内核中实现了这些方法,将一组服务器构成一个实现可伸缩的、高可用网络服务的虚拟服务器。所以,lvs需要内核有ipvs支持,确保你的内核支持ipvs后,只需安装ipvsadm就可以把一台服务器配置成负载调度器(Load Balancer)。对外提供服务的IP,也就是我们访问的IP称做VIP。调度器LB的任务主要是分发请求,真正处理的是真实服务器(Real Server)。
LVS的三种负载均衡模型:
为了区别这三种模型,我们可以先做一下对比

NAT模型
DR模型
TUN模型
集群节点(rip和dip)
需要在同一个子网当中
必须在同一个物理网络当中
不需要在一个物理网络当中
rip要求
私有地址,仅用于节点之间
可以使用公网地址
一定不能是私有地址
Director处理的请求
处理入站和出站
仅处理入站
仅处理入站
Real-server的网关
要指向dip
不能指向dip,而是路由器
不能指向dip,而是路由器
端口映射
可以实现
不能实现
不能实现
Real-server服务器要求
任意操作系统
支持大多数操作系统
必须是支持隧道功能的操作系统
注:rip为real-server的IP地址,dip为director的IP地址


LVS-NAT 的数据转发流程是:Director机器收到外界请求,改写数据包的目标地址,按相应的调度算法将其发送到相应Real Server上,Real Server处理完该请求后,将结果数据包返回到其默认网关,即Director机器上,Director机器再改写数据包的源地址,最后将其返回给外界。这样就完成一次负载调度。
LVS-NAT方式负载均衡集群(图 1)

DSC0000.png
  
注:LVS-NAT集群中Real Server可以是任何的操作系统,而且无需做任何特殊的设定,惟一要做的就是将其默认网关指向Director机器。Real Server可以使用局域网 的 内 部 IP(192.168.0.0/24)。Director要有两块网卡,一块网卡绑定一个外部IP地址(10.0.0.1),另一块网卡绑定局域网的内部IP(192.168.0.254),作为Real Server的默认网关。


LVS-DR的数据转发流程是:Director机器收到外界请求,按相应的调度算法将其直接发送到相应Real Server,Real Server处理完该请求后,将结果数据包直接返回给客户,完成一次负载调度。
LVS-DR 方式负载均衡集群(图 2)

DSC0001.png
  
LVS-DR集群中注意Real Server的内核也必须打上修正ARP问题的内核补丁


LVS-TUN的数据转发流程是:Director机器收到外界请求,按相应的调度算法将其通过IP隧道发送到相应Real Server,Real Server处理完该请求后,将结果数据包直接返回给客户。至此完成一次负载调度。
LVS-TUN方式负载均衡集群(图 3)

  
DSC0002.png
LVS-TUN集群中注意Real Server的内核必须打上修正ARP问题的内核补丁。该方式中 Director将客户请求分配到不同的Real Server,Real Server处理请求后直接回应给用户,这样Director就只处理客户机与服务器的一半连接,极大地提高了Director的调度处理能力, 使集群系统能容纳更多的节点数。另外TUN方式中的Real Server可以在任何LAN或WAN 上运行,这样可以构筑跨地域的集群,其应对灾难的能力也更强,但是服务器需要为IP封装付出一定的资源开销,而且后端的Real Server必须是支持IP Tunneling的操作系统。


LVS的十种调度方法
轮调(RR)调度器将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载,每个服务器都一样多。
加权轮调(WRR) 调度器根据真实服务器的不同处理能力来调度访问请求。这样可以保证处理能力强的服务器处理更多的访问流量。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。
目标地址Hash 根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。
源地址Hashing根据请求的源IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。
最少链接(LC)根据RS算法将请求调度到已建立的链接数最少的服务器上。
RS=active*256+inactive=overhead  active活动连接数,inactive非活动连接数,overhead值越小则连接到谁上边
加权最少链接(WLC) 在集群系统中的服务器性能差异较大的情况下,既要根据RS算法,还要考虑服务器的性能,具有较高权值的服务器将承受较大比例的活动连接负载。
最短的期望的延迟(SED) 基于WLC,但却有所改变,依据(active+1)*256/weight=overhead,值越小,则连接到哪个服务器上。
最少队列调度(NQ)无需队列。如果有台realserver的连接数=0就直接分配过去,不需要在进行sed运算
基于局部性的最少链接(LBLC)针对目标IP地址的负载均衡,目前主要用于Cache集群系统。该算法根据请求的目标IP地址找出该目标IP地址最近使用的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务器不存在,或者该服务器超载且有服务器处于一半的工作负载,则用"最少链接"的原则选出一个可用的服务器,将请求发送到该服务器。
带复制的基于局部性最少链接(LBLCR)也是针对目标IP地址的负载均衡,目前主要用于 Cache集群系统。它与LBLC算法的不同之处是它要维护从一个目标IP地址到一组服务器的映射,LBLC算法维护从一个目标IP地址到一台服务器的映而射。该算法根据请求的目标IP地址找出该目标IP地址对应的服务器组,按"最小连接"原则从服务器组中选出一台服务器,若服务器没有超载,将请求发送到该服务器,若服务器超载;则按"最小连接"原则从这个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器。同时,当该服务器组有一段时间没有被修改,将最忙的服务器从服务器组中删除,以降低复制的程度。  
  本文出自 “譕淚らづ寳唄” 博客,请务必保留此出处http://fengjunfei.blog.iyunv.com/4356100/834800

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-109563-1-1.html 上篇帖子: linux lvs 配置 下篇帖子: CentOS6.4 安装LVS-RRD监控LVS
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表