负载均衡的原理说明案例.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? ? 大家都知道一台服务器的处理能力,主要受限于服务器自身的可扩展硬件能力。所以,在需要处理大量用户请求的时候,通常都会引入负载均衡器,将多台普通服务器组成一个系统,来完成高并发的请求处理任务。 之前负载均衡只能通过DNS来实现,1996年之后,出现了新的网络负载均衡技术。通过设置虚拟服务地址(IP),将位于同一地域(Region)的多台服务器虚拟成一个高性能、高可用的应用服务池;再根据应用指定的方式,将来自客户端的网络请求分发到服务器池中。网络负载均衡会检查服务器池中后端服务器的健康状态,自动隔离异常状态的后端服务器,从而解决了单台后端服务器的单点问题,同时提高了应用的整体服务能力。 网络负载均衡主要有硬件与软件两种实现方式,主流负载均衡解决方案中,硬件厂商以F5为代表目前市场占有率超过50%,软件主要为NGINX与LVS。但是,无论???件或软件实现,都逃不出基于四层交互技术的“转发”或基于七层协议的“代理”这两种方式。?四层的转发模式通常性能会更好,但七层的代理模式可以根据更多的信息做到更智能地分发流量。一般大规模应用中,这两种方式会同时存在。 2007年F5提出了ADC(Application?delivery?controller)的概念为传统的负载均衡器增加了大量的功能,常用的有:SSL卸载、压缩优化和TCP连接优化。NGINX也支持很多ADC的特性,但F5的中高端型号会通过硬件加速卡来实现SSL卸载、压缩优化这一类CPU密集型的操作,从而可以提供更好的性能。 F5推出ADC以后,各种各样的功能有很多,但其实我们最常用的也就几种。这里我也简单的总结了一下,并和LVS、Nginx对比了一下。 ? ? SSL卸载和压缩优化,主要是将CPU密集型的加解密和压缩操作移到负载均衡器上进行;TCP连接优化主要指的是用户和负载均衡器短连接的同时,负载均衡器和后端服务器建立长连接。 不过我们本次主要介绍四层负载均衡,所以这些高级ADC功能不会涉及到。 F5的硬件负载均衡产品又分单机Big?IP系列和集群VISRION系列,都是X86架构,配合自研的TMOS(Traffic?Management?Operating?System),再加上硬件加速卡(Cavium提供)处理SSL和压缩等CPU密集型操作。 L4?CPS:四层每秒新建连接数。测试的时候一般采用TCP短连接,每次请求128字节。体现CPU性能,最重要的性能指标,没有之一。 L4最大并发连接数:体现内存大小 L7?RPS:七层每秒请求数。测试时每连接10个128字节HTTP请求。主要体现HTTP协议栈性能 这些性能指标实际上就是一个负载均衡器最关键的指标了。大家如有采购硬件负载均衡器一定要看这个。 有很多小牌子的硬件负载均衡器经常不标注L4?CPS,只是笼统地说10G负载均衡,其实差别很大的。 硬件负载均衡在功能、易用性和可扩展性上都做得不错,但是也有不少缺点。从商业角度来说,硬件负载均衡产品过于昂贵,高端产品动辄五十万甚至数百万的价格对于用户是几乎不可承受的负担。 从使用角度来说,硬件负载均衡是黑盒,有BUG需要联系厂商等待解决,时间不可控、新特性迭代缓慢且需资深人员维护升级,也是变相增加昂贵的人力成本。 相信除了很多不差钱的公司,大家还是用软件负载均衡比较多。 软件四层负载均衡最常见的就是LVS了。 ? ? LVS最常用的有NAT、DR以及新的FULL?NAT模式。上图比较了几种常见转发模式的优缺点。 我们认为LVS的每种转发模式都有其优点和缺点,但最大的问题还是其复杂性。 我第一次看到这三种转发方式、还有F5的单臂模式、双臂模式都会有云里雾里的感觉。 雪上加霜的是咱们还需要考虑LVS的性能扩展和容灾方法,这使得整个方案更加的复杂。 常见的有基于Keepalived的主备方式和ECMP两种。Keepalived主备模式设备利用率低;不能横向扩展;VRRP协议,有脑裂的风险。 而ECMP的方式需要了解动态路由协议,LVS和交换机均需要较复杂配置;交换机的HASH算法一般比较简单,增加删除节点会造成HASH重分布,可能导致当前TCP连接全部中断;部分交换机的ECMP在处理分片包时会有Bug,说起来心中满满的都是血泪呀。 ? ? 如图:UCloud?Vortex负载均衡器的设计理念 用户使用负载均衡器最重要的需求是“High?Availability”和“Scalability”,Vortex的架构设计重心就是满足用户需求,提供极致的“可靠性”和“可收缩性”,而在这两者之间我们又把“可靠性”放在更重要的位置。 值得一提的是今年3月举办的第十三届网络系统设计与实现USENIX研讨会(NSDI?16)上,?来自谷歌、加州大学洛杉矶分校、SpaceX公司的工程师们分享了《Mag

文档评论(0)

1112111 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档