CTO负载均衡全真实战案例解析ppt课件_第1页
CTO负载均衡全真实战案例解析ppt课件_第2页
CTO负载均衡全真实战案例解析ppt课件_第3页
CTO负载均衡全真实战案例解析ppt课件_第4页
CTO负载均衡全真实战案例解析ppt课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、负载平衡全真实战案例解析负载平衡全真实战案例解析123412831234本次聚会的主题本次聚会的主题一个凄惨的效力器故事两位Linux系统专家的心声三份千元培训卡的发放100位51CTO网友的同城聚会解读负载平衡技术的实践运用可怜的鲍勃可怜的鲍勃 鲍勃是公司在推销新技术和IT架构方案开展上的革新者。在他的推进下,公司的网站曾经构成了非常快速的开发流程,很快就集成到主站中去了,以便可以进展更多的用户交互运用。当公司战略的执行效率突破了历史最高点的时候,他发现系统的运转有些异常,不但前台Web效力器从后台数据库中读取过程本钱开场徒然上升,容易出错而且在呼应客户恳求方面显得缓慢。与此同时,当Mira

2、鲍勃的新同事开场为博客和BBS更新模组时,系统终于不堪重负,倒下了。 鲍勃和Mira感到他们的权威遭到了挑战,但董事会却担忧由于系统由于缓慢,一些用户会散播谣言,公司的信誉度会影响股票上市的进度。在访问量翻倍的时候,我们的系统却越来越慢?我该如何做呢?怎样忽然会出现这样的问题?怎样忽然会出现这样的问题?Internet 的飞速开展给网络带宽和效力器带来宏大的挑战。Internet的飞速开展。百兆、千兆技术曾经得到广泛运用,在主干网上密集波分复用DWDM将成为宽带IP 的主流技术每秒到达传输速率最大到达400 Gb/s。Gigabit Ethernet 在效力器上很难使得其吞吐率到达1Gb/s

3、的缘由是协议栈TCP/IP和操作系统的低效,以及处置器的低效,这需求对协议的处置方法、操作系统的调度和IO 的处置作更深化的研讨。对用硬件和软件方法实现高可伸缩、高可用网络效力的需求不断增长,这种需求可以归结以下几点:可伸缩性Scalability,当效力的负载增长时,系统能被扩展来满足需求,且不降低效力质量。高可用性Availability,虽然部分硬件和软件会发生缺点,整个系统的效力必需是每天24 小时每星期7 天可用的。可管理性Manageability,整个系统能够在物理上很大,但应该容易管理。价钱有效性Cost-effectiveness,整个系统实现是经济的、易支付的。要处理上述几

4、个需求,靠单个的效力器不能满足需求,因此,只能运用多台效力器结合任务以到达需求,这就是所谓的集群。高可扩展性集群普通的框架构造如下图以Web 访问为例,其它运用类似。后台的多个Web 效力器上面有一样的Web 内容,Internet 客户端的访问恳求首先进入一台效力器,由它根据负载平衡战略算法合理地分配给某个Web 效力器。每个Web 效力器有一样的内容做起来不难,所以选择负载平衡战略算法是个关键问题。负载平衡的作用就像轮番值日制度,把义务分给大家来完成,以免让一个人过度劳累。但是与轮番值日制度不同的是,负载平衡是一种动态平衡,它经过一些工具实时地分析数据包,掌握网络中的数据流量情况,把义务理

5、分配出去。对于以下不同的运用环境,运用的平衡战略(算法)是不同的。 电子商务网站,它的计 算负荷大网络数据库运用,读写频繁,效力器的存储子系统面临很大压力视频效力运用,数据传输量大,网络接口负担重压由于运用环境的不同,平衡战略算法也就有了多种多样的方式。广义上的负载平衡既可以设置专门的网关、负载平衡器,也可以经过一些公用软件与协议来实现。在OSI 七层协议模型中的第二数据链路层、第三网络层、第四传输层、第七层运用层都有相应的负载均衡战略算法.数据链路层:根据数据包的目的MAC 地址选择不同的途径;网络层: 利用基于IP 地址的分配方式将数据流疏通到多个节点传输层和运用层的交换Switch:本身

6、便是一种基于访问流量的控制方式,可以实现负载平衡。目前的集群类型主要概括为三大类型:高可扩展性集群技术负载平衡高可靠性集群(HA)高性能计算集群(HPC)高可扩展性集群技术就是带平衡战略算法的效力器群集,负载平衡群集在多节点之间按照一定的战略算法分发网络或计算处置负载。扩展效力器带宽添加吞吐量提高数据处置才干防止单点缺点。 虚拟效力器的体系构造如下图,一组效力器经过高速的局域网或者地理分布的广域网相互衔接,在它们的前端有一个负载调度器Load Balancer。负载调度器能无缝地将网络恳求调度到真实效力器上,从而使得效力器集群的构造对客户是透明的,客户访问集群系统提供的网络效力就像访问一台高性

7、能、高可用的效力器一样。客户程序不受效力器集群的影响不需作任何修正。系统的伸缩性经过在效力机群中透明地参与和删除一个节点来到达,经过检测节点或效力进程缺点和正确地重置系统到达高可用性。由于该负载调度技术是在Linux 内核中实现的,因此称之为Linux 虚拟效力器Linux Virtual Server。IP 虚拟效力器软件虚拟效力器软件IPVS在调度器的实现技术中,在调度器的实现技术中,IP 负载平衡技术是效率最高的。在已有的负载平衡技术是效率最高的。在已有的IP 负负载平衡技术中有经过网络地址转换载平衡技术中有经过网络地址转换Network Address Translation将将一组效

8、力器构成一个高性能的、高可用的虚拟效力器,我们称之为一组效力器构成一个高性能的、高可用的虚拟效力器,我们称之为VS/NAT 技术技术Virtual Server via Network Address Translation,大,大多数商品化的多数商品化的IP 负载平衡调度器产品都是运用此方法,如负载平衡调度器产品都是运用此方法,如Cisco 的的LocalDirector、F5 的的Big/IP 和和 Alteon 的的ACEDirector。在分析。在分析VS/NAT 的缺陷和网络效力的非对称性的根底上,我们提出经过的缺陷和网络效力的非对称性的根底上,我们提出经过IP 隧道实现虚拟效隧道实

9、现虚拟效力器的方法力器的方法VS/TUN Virtual Server via IP Tunneling,和经过直接路,和经过直接路由实现虚拟效力器的方法由实现虚拟效力器的方法VS/DRVirtual Server via Direct Routing,它们可以极大地提高系统的伸缩性。所以,它们可以极大地提高系统的伸缩性。所以,IPVS 软件实现了这三种软件实现了这三种IP 负负载平衡技术,它们的大致原理如下:载平衡技术,它们的大致原理如下:LVS 集群的通用体系构造集群的通用体系构造三层主要组成部分为:负载调度器load balancer它是整个集群对外面的前端机,担任将客户的恳求发送到一组

10、效力器上执行,而客户以为效力是来自一个IP 地址我们可称之为虚拟IP 地址上的。效力器池server pool是一组真正执行客户恳求的效力器,执行的效力有WEB、MAIL、FTP 和DNS 等。共享存储shared storage它为效力器池提供一个共享的存储区,这样很容易使得效力器池拥有一样的内容,提供一样的效力。LVS 集群的通用体系构造集群的通用体系构造共享存储区 1Virtual Server via Network Address TranslationVS/NAT经过网络地址转换,调度器重写恳求报文的目的地址,根据预设的调度算法,将恳求分派给后端的真实效力器;真实效力器的呼应报文经

11、过调度器时,报文的源地址被重写,再前往给客户,完成整个负载调度过程。2Virtual Server via IP TunnelingVS/TUN采用NAT 技术时,由于恳求和呼应报文都必需经过调度器地址重写,当客户恳求越来越多时,调度器的处置才干将成为瓶颈。为理处理这个问题,调度器把恳求报文经过IP 隧道转发至真实效力器,而真实效力器将呼应直接前往给客户,所以调度器只处置恳求报文。由于普通网络效力应对比恳求报文大许多,采用 VS/TUN 技术后,集群系统的最大吞吐量可以提高10 倍。3Virtual Server via Direct RoutingVS/DRVS/DR 经过改写恳求报文的MA

12、C 地址,将恳求发送到真实效力器,而真实效力器将呼应直接前往给客户。同VS/TUN 技术一样,VS/DR 技术可极大地提高集群系统的伸缩性。这种方法没有IP 隧道的开销,对集群中的真实效力器也没有必需支持IP 隧道协议的要求,但是要求调度器与真实效力器都有一块网卡连在同一物理网段上。LVS 集群集群-可伸缩可伸缩Web 效力集群效力集群LVS 集群集群-可伸缩可伸缩Web 效力集群效力集群l动态页面如PHP、JSP 和CGI 等:l需求访问的动态数据普通存储在数据库效力器中。l数据库效力运转在独立的效力器上,为一切Web 效力器共享。无论同一Web 效力器上多个动态页面访问同一数据,还是不同W

13、eb 效力器上多个动态页面访问同一数据,数据库效力器有锁机制使得这些访问有序地进展,从而保证数据的一致性。l对于静态的页面和文件如HTML 文档和图片等:l可以存储在网络文件系统或者分布式文件系统中。至于选择哪一种,看系统的规模和需求而定。经过共享的网络文件系统或者分布式文件系统,Webmaster 可以看到一致的文档存储空间,维护和更新页面比较方便,对共享存储中页面的修正对一切的效力器都有效。LVS 集群集群-可伸缩可伸缩Web 效力集群效力集群l构造特点:l在这种构造下,当一切效力器结点超载时,管理员可以很快地参与新的效力器结点来处置恳求。l Cookie ,来同一客户的不同衔接存在相关性

14、,这些衔接必需被发送到同一Web 效力器。lHTTPS ,当客户访问HTTPS 效力时,会先建立一个SSL 衔接,来交换对称公钥加密的证书并协商一个SSL Key,来加密以后的会话。在SSL Key 的生命周期内,后续的一切HTTPS衔接都运用这个SSL Key,所以同一客户的不同HTTPS 衔接也存在相关性。l处理方案:l针对这些需求,IPVS 调度器提供了耐久效力的功能,它可以使得在设定的时间内,来自同一IP 地址的不同衔接会被发送到集群中同一个效力器结点,可以很好地处理客户衔接的相关性问题。LVS 集群集群-可伸缩可伸缩Web 效力集群效力集群VS/TUN 与与VS/DR的例子的例子Ca

15、che:有效的网络:有效的网络Cache 系统可以大大地减少网络流量、降低呼应延时系统可以大大地减少网络流量、降低呼应延时以及效力器的负载。但是,假设以及效力器的负载。但是,假设Cache 效力器超载而不能及时地处置恳求,效力器超载而不能及时地处置恳求,反而会添加呼应延时。所以,反而会添加呼应延时。所以,Cache 效力的可伸缩性很重要,当系统负载效力的可伸缩性很重要,当系统负载不断增长时,整个系统能被扩展来提高不断增长时,整个系统能被扩展来提高Cache 效力的处置才干。尤其,在效力的处置才干。尤其,在主干网上的主干网上的 Cache 效力能够需求几个效力能够需求几个Gbps的吞吐率,单台效

16、力器远不能的吞吐率,单台效力器远不能到达这个吞吐率。可见,经过到达这个吞吐率。可见,经过PC 效力器集群实现可伸缩效力器集群实现可伸缩Cache 效力是很效力是很有效的方法,也是性能价钱比最高的方法。有效的方法,也是性能价钱比最高的方法。VS/TUN 与与VS/DR的例子的例子2IPVS 负载调度器普通运用负载调度器普通运用IP 隧道方法,来架构隧道方法,来架构Cache 集群系统,由于集群系统,由于Cache 效力器能够被放置不同的地方例如在接近主干效力器能够被放置不同的地方例如在接近主干Internet 衔接处,衔接处,而调度器与而调度器与Cache 效力器池能够不在同一个物理网络中。效力

17、器池能够不在同一个物理网络中。采用采用VS/TUN 方法,调度器只调度方法,调度器只调度 Web Cache 恳求,而恳求,而Cache 效力器将效力器将呼应数据直接前往给客户。在恳求对象不能在本地命中的情况下,呼应数据直接前往给客户。在恳求对象不能在本地命中的情况下,Cache 效力器要向源效力器发恳求,将结果取回,最后将结果前往给客户;假设效力器要向源效力器发恳求,将结果取回,最后将结果前往给客户;假设采用采用NAT 技术的商品化调度器,需求四次进出调度器,完成这个恳求。而技术的商品化调度器,需求四次进出调度器,完成这个恳求。而用用VS/TUN 方法或者方法或者VS/DR 方法,调度器只调

18、度一次恳求,其他三次方法,调度器只调度一次恳求,其他三次都由都由Cache 效力器直接访问效力器直接访问Internet 完成。所以,这种方法对完成。所以,这种方法对Cache 集集群系统特别有效。群系统特别有效。让我们看看鲍勃如今的系统构造吧!让我们看看鲍勃如今的系统构造吧!用户需求用户需求高可用性:将停顿效力时间降低到最低甚至是不延续效力可扩展性:随着访问的添加,系统具备良好的伸缩才干可视性:系统、效力的形状处于一个实时的监控之下高性能高可靠性:经过优化的体系构造及合理的备份战略平安性:构造上的平安及主机的平安战略技术分析技术分析对于访问频繁,用户量大的对象bbs,采用某种合理的方式负载到

19、多个效力器上。把数据库独立出来,预备两套mysql数据库,以实现主从复制,即减轻负载,又提高了可靠性。更近一步,运用mysql proxy技术,实现主从效力器的读写分别,大大提高这个系统的性能和负载才干。数据库与外部网络隔离,只允许web效力器bbs,等经过私有地址方式访问。这样就提高了数据库的平安性,同时也节省了珍贵的带宽。部署监控系统,经过监控主机存活、效力、主机资源,实时把系统的安康形状置于可视形状,对系统的运营形状心中有数。备份是想都不用想的事情,运用单独的效力器集中备份,是一个比较不错的主意 拓扑构造拓扑业务逻辑2技术实现技术实现 1负载平衡。2台同样配置的linux效力器,内核支持

20、lvs,配置keepalived工具,即可实现负载转发。一旦其后的真实效力器出现缺点,keepalived会自动把缺点机器从转发队列删除掉,等到缺点修复,它又会自动把真实效力器的地址参与转发列表。由于lvs支持会话坚持,因此对于bbs 这样的运用,一点也不用担忧其登录丧失。mysql主从复制。即保证数据的平安,又提高了访问性能。我们在前端的每个web效力器上参与mysql proxy这个工具,即可等待实现读写的自动分别,让写的操作发生在主数据库,让查询这类读操作发生在从数据库。技术实现技术实现 2监控。nagios是一个开源的,受广泛欢迎的监控平台。它可对主机的存活、系统资源磁盘空间、负载等、

21、网络效力进展实时监控。一旦探测到缺点,将自动发送邮件短信通知缺点。备份。包括web数据和数据库效力器的备份。对于web效力而言,GNU tar即可实现备份的一切愿望。简单的设置一下crontab 就可以让系统在我们做梦的时辰老老实实的帮我们备份了。但是,由于空间的限制,不能够不断备份下去,所以要做一个适宜的战略,以不断的用新的备份去交换陈旧的备份数据;多少天适宜?看磁盘容量吧。对于数据库,先mysqldump一下,再tar.完成这些任务后把备份文件传输到备份效力器集中。一个比较省事的方法是把备份效力器以NFS方式挂接到web效力器及数据库效力器。技术实现技术实现 3web效力器。至少包括apa

22、che和mysql proxy这两个组件。Apache做bbs和的容器,以虚拟机方式把用户的恳求转发到bbs目录或目录。平安措施。包含两层平安,一层是主机本身,另一层是构造mysql从外部网络隔离。实际证明,iptables是一个非常值得信任的防火墙工具。在实践运用中,采取先关门后开窗的战略,大大加强系统的平安性。系统软硬件构成分析系统软硬件构成分析硬件负载平衡2台(dell 1950)web效力器2-3台(dell1950),数据库2台(dell 2950)存储NAS(5T格式化后容量),备份4u效力器(带磁盘阵列5T容量),监控效力器1台(dell1850).软件操作系统centos 5(定制安装)负载平衡ipvsadm、keepalived,监控nagios,web效力apache+php等数据库mysql数据库代理mysql proxy工程进度控制工程进度控制lvs负载平衡配置及测试:2-3天web效力器配置:2-3天mysql主从效力器配置:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论