收藏 分享(赏)

负载均衡技术与方案选择.doc

上传人:kpmy5893 文档编号:9235494 上传时间:2019-07-30 格式:DOC 页数:10 大小:45.34KB
下载 相关 举报
负载均衡技术与方案选择.doc_第1页
第1页 / 共10页
负载均衡技术与方案选择.doc_第2页
第2页 / 共10页
负载均衡技术与方案选择.doc_第3页
第3页 / 共10页
负载均衡技术与方案选择.doc_第4页
第4页 / 共10页
负载均衡技术与方案选择.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、负载均衡技术与方案选择当前,无论在企业网、园区网还是在广域网如 Internet 上,业务量的发展都超出了过去最乐观的估计,上网热潮风起云涌,新的应用层出不穷,即使按照当时最优配置建设的网络,也很快会感到吃不消。尤其是各个网络的核心部分,其数据流量和计算强度之大,使得单一设备根本无法承担,而如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不致于出现一台设备过忙、而别的设备却未充分发挥处理能力的情况,就成了一个问题,负载均衡机制也因此应运而生。负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。它主要

2、完成以下任务:解决网络拥塞问题,服务就近提供,实现地理位置无关性;为用户提供更好的访问质量;提高服务器响应速度;提高服务器及其他资源的利用效率;避免了网络关键部位出现单点失效。对一个网络的负载均衡应用,可以从网络的不同层次入阿手,具体情况要看对网络瓶颈所在之处的具体分析,大体上不外乎从传输链路聚合、采用更高层网络交换技术和设置服务器集群策略三个角度实现。一、负载均衡技术类型1、传输链路聚合为了支持与日俱增的高带宽应用,越来越多的 PC 机使用更加快速的链路连入网络。而网络中的业务量分布是不平衡的,核心高、边缘低,关键部门高、一般部门低。伴随计算机处理能力的大幅度提高,人们对多工作组局域网的处理

3、能力有了更高的要求。当企业内部对高带宽应用需求不断增大时(例如 Web 访问、文档传输及内部网连接),局域网核心部位的数据接口将产生瓶颈问题,瓶颈延长了客户应用请求的响应时间。并且局域网具有分散特性,网络本身并没有针对服务器的保护措施,一个无意的动作(像一脚踢掉网线的插头)就会让服务器与网络断开。通常,解决瓶颈问题采用的对策是提高服务器链路的容量,使其超出目前的需求。例如可以由快速以太网升级到千兆以太网。对于大型企业来说,采用升级技术是一种长远的、有前景的解决方案。然而对于许多企业,当需求还没有大到非得花费大量的金钱和时间进行升级时,使用升级技术就显得大材小用了。在这种情况下,链路聚合技术为消

4、除传输链路上的瓶颈与不安全因素提供了成本低廉的解决方案,链路聚合技术,将多个线路的传输容量融合成一个单一的逻辑连接。当原有的线路满足不了需求,而单一线路的升级又太昂贵或难以实现时,就要采用多线路的解决方案了。目前有 4 种链路聚合技术可以将多条线路“捆绑”起来。同步IMUX 系统工作在 T1/E1 的比特层,利用多个同步的 DS1 信道传输数据,来实现负载均衡。IMA 是另外一种多线路的反向多路复用技术,工作在信元级,能够运行在使用 ATM 路由器的平台上。用路由器来实现多线路是一种流行的链路聚合技术,路由器可以根据已知的目的地址的缓冲(cache)大小,将分组分配给各个平行的链路,也可以采用

5、循环分配的方法来向线路分发分组。多重链路 PPP,又称 MP 或 MLP,是应用于使用 PPP 封装数据链路的路由器负载平衡技术。MP 可以将大的 PPP 数据包分解成小的数据段,再将其分发给平行的多个线路,还可以根据当前的链路利用率来动态地分配拨号线路。这样做尽管速度很慢,因为数据包分段和附加的缓冲都增加时延,但可以在低速的线路上运行得很好。链路聚合系统增加了网络的复杂性,但也提高了网络的可靠性,使人们可以在服务器等关键 LAN 段的线路上采用冗余路由。对于 IP 系统,可以考虑采用 VRRP(虚拟路由冗余协议)。VRRP 可以生成一个虚拟缺省的网关地址,当主路由器无法接通时,备用路由器就会

6、采用这个地址,使 LAN 通信得以继续。总之,当主要线路的性能必需提高而单条线路的升级又不可行时,可以采用链路聚合技术。2、更高层交换大型的网络一般都是由大量专用技术设备组成的,如包括防火墙、路由器、第 2 层/3 层交换机、负载均衡设备、缓冲服务器和 Web 服务器等。如何将这些技术设备有机地组合在一起,是一个直接影响到网络性能的关键性问题。现在许多交换机提供第四层交换功能,可以将一个外部 IP 地址映射为多个内部 IP 地址,对每次 TCP 连接请求动态使用其中一个内部地址,达到负载均衡的目的。有的协议内部支持与负载均衡相关的功能,例如 HTTP 协议中的重定向能力。Web 内容交换技术,

7、即 URL 交换或七层交换技术,提供了一种对访问流量的高层控制方式。Web 内容交换技术检查所有的 HTTP 报头,根据报头内的信息来执行负载均衡的决策,并可以根据这些信息来确定如何为个人主页和图像数据等内容提供服务。它不是根据 TCP 端口号来进行控制的,所以不会造成访问流量的滞留。如果 Web 服务器已经为图像服务、SSL 对话、数据库事务服务之类的特殊功能进行了优化,那么,采用这个层次的流量控制将可以提高网络的性能。目前,采用第七层交换技术的产品与方案,有黎明网络的 iSwitch、交换机,Cisco的 CDN(内容交换网络系统)等。3、服务器群集解决方案在某些情况下,例如,某网站内部职

8、员和外部客户同时使用网站,而公司要将内部职员的服务请求连接到一个较慢的服务器来为外部客户提供更多的资源,这时就可以使用 Web 内容交换技术。Web 主机访问控制设备也可以使用这种技术来降低硬件成本,因为它可以轻易地将访问多个主机的用户流量转移给同一个 Web 服务器。如果用户访问量增加到一定程度,这些流量还可以被转移到专用的 Web 服务器设备,虽然这种专用设备的成本较高,但是由于使用的是相同的 Web内容交换技术来控制流量,所以网络的结构框架就不用再进行改变了。但是,使用 Web 内容交换技术的负载均衡设备所能支持的标准和规则的数目有限,其采用的标准和规则的灵活性也有限。另外,负载均衡设备

9、所能监测到 HTTP 报头的深度也是限制内容交换能力的一个因素。如果所要找的信息在负载均衡设备所不能监测的字段内,那内容交换的作用就无法发挥。而且,内容交换还受到能够同时开启的 TCP 连接数量以及 TCP 连接的建立和断开比率的限制。另外,Web 内容交换技术还会占用大量的系统资源(包括内存占用和处理器占用)。对 Web 内容交换技术进行的测试表明,操纵 Web 内容的吞吐量是很费力的,有时只能得到很小的性能改进。所以,网络管理员必须认真考虑投入与回报的问题。如今,服务器必须具备提供大量并发访问服务的能力,其处理能力和 I/O 能力已经成为提供服务的瓶颈。如果客户的增多导致通信量超出了服务器

10、能承受的范围,那么其结果必然是宕机。显然,单台服务器有限的性能不可能解决这个问题,一台普通服务器的处理能力只能达到每秒几万个到几十万个请求,无法在一秒钟内处理上百万个甚至更多的请求。但若能将 10 台这样的服务器组成一个系统,并通过软件技术将所有请求平均分配给所有服务器,那么这个系统就完全拥有每秒钟处理几百万个甚至更多请求的能力。这就是利用服务器群集实现负载均衡的最初基本设计思想。早期的服务器群集通常以光纤镜像卡进行主从方式备份。令服务运营商头疼的是关键性服务器或应用较多、数据流量较大的服务器一般档次不会太低,而服务运营商花了两台服务器的钱却常常只得到一台服务器的性能。新的解决方案见图,通过

11、LSANT(LoadSharingNetworkAddressTransfer)将多台服务器网卡的不同 IP 地址翻译成一个 VIP(VirtualIP)地址,使得每台服务器均时时处于工作状态。原来需要用小型机来完成的工作改由多台 PC 服务器完成,这种弹性解决方案对投资保护的作用是相当明显的既避免了小型机刚性升级所带来的巨大设备投资,又避免了人员培训的重复投资。同时,服务运营商可以依据业务的需要随时调整服务器的数量。网络负载均衡提高了诸如 Web 服务器、FTP 服务器和其他关键任务服务器上的因特网服务器程序的可用性和可伸缩性。单一计算机可以提供有限级别的服务器可靠性和可伸缩性。但是,通过将

12、两个或两个以上高级服务器的主机连成群集,网络负载均衡就能够提供关键任务服务器所需的可靠性和性能。为了建立一个高负载的 Web 站点,必须使用多服务器的分布式结构。上面提到的使用代理服务器和 Web 服务器相结合,或者两台 Web 服务器相互协作的方式也属于多服务器的结构,但在这些多服务器的结构中,每台服务器所起到的作用是不同的,属于非对称的体系结构。非对称的服务器结构中每个服务器起到的作用是不同的,例如一台服务器用于提供静态网页,而另一台用于提供动态网页等等。这样就使得网页设计时就需要考虑不同服务器之间的关系,一旦要改变服务器之间的关系,就会使得某些网页出现连接错误,不利于维护,可扩展性也较差

13、。能进行负载均衡的网络设计结构为对称结构,在对称结构中每台服务器都具备等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。然后,可以通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。在这种结构中,由于建立内容完全一致的 Web 服务器并不困难,因此负载均衡技术就成为建立一个高负载 Web 站点的关键性技术。总之,负载均衡是一种策略,它能让多台服务器或多条链路共同承担一些繁重的计算或 I/O 任务,从而以较低成本消除网络瓶颈,提高网络的灵活性和可靠性。二、负载均衡技术分类目前有许多不同的负载均衡技术用以满足不同的应用需求,下面从

14、负载均衡所采用的设备对象、应用的网络层次(指 OSI 参考模型)及应用的地理结构等来分类。1、软/硬件负载均衡软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如 DNSLoadBalance,CheckPointFirewall-1ConnectControl 等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。软件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好

15、,受到操作系统的限制;由于操作系统本身的 Bug,往往会引起安全问题。硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为负载均衡器,由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求。负载均衡器有多种多样的形式,除了作为独立意义上的负载均衡器外,有些负载均衡器集成在交换设备中,置于服务器与 Internet 链接之间,有些则以两块网络适配器将这一功能集成到 PC 中,一块连接到 Internet 上,一块连接到后端服务器群的内部网络上。一般而言,硬件负载均衡在功能、性能上优

16、于软件方式,不过成本昂贵。2、本地/全局负载均衡负载均衡从其应用的地理结构上分为本地负载均衡(LocalLoadBalance)和全局负载均衡(GlobalLoadBalance,也叫地域负载均衡),本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指对分别放置在不同的地理位置、有不同网络结构的服务器群间作负载均衡。本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,充分利用现有设备,避免服务器单点故障造成数据流量的损失。其有灵活多样的均衡策略把数据流量合理地分配给服务器群内的服务器共同负担。即使是再给现有服务器扩充升级,也只是简单地增加

17、一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。全局负载均衡主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个 IP 地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度,也可用于子公司分散站点分布广的大公司通过 Intranet(企业内部互联网)来达到资源统一合理分配的目的。全局负载均衡有以下的特点:实现地理位置无关性,能够远距离为用户提供完全的透明服务。除了能避免服务器、数据中心等的单点失效,也能避免由于 ISP 专线故障引起的单点失效。解决网络拥塞问题,提高服务器响应速度,服务就近提供,达到更好的访问质量。3、网络层次上的负载均衡针对网络上负载过

18、重的不同瓶颈所在,从网络的不同层次入手,我们可以采用相应的负载均衡技术来解决现有问题。随着带宽增加,数据流量不断增大,网络核心部分的数据接口将面临瓶颈问题,原有的单一线路将很难满足需求,而且线路的升级又过于昂贵甚至难以实现,这时就可以考虑采用链路聚合(Trunking)技术。链路聚合技术(第二层负载均衡)将多条物理链路当作一条单一的聚合逻辑链路使用,网络数据流量由聚合逻辑链路中所有物理链路共同承担,由此在逻辑上增大了链路的容量,使其能满足带宽增加的需求。现代负载均衡技术通常操作于网络的第四层或第七层。第四层负载均衡将一个 Internet 上合法注册的 IP 地址映射为多个内部服务器的 IP

19、地址,对每次 TCP 连接请求动态使用其中一个内部 IP 地址,达到负载均衡的目的。在第四层交换机中,此种均衡技术得到广泛的应用,一个目标地址是服务器群 VIP(虚拟 IP,VirtualIPaddress)连接请求的数据包流经交换机,交换机根据源端和目的 IP 地址、TCP 或 UDP 端口号和一定的负载均衡策略,在服务器 IP 和 VIP 间进行映射,选取服务器群中最好的服务器来处理连接请求。第七层负载均衡控制应用层服务的内容,提供了一种对访问流量的高层控制方式,适合对 HTTP 服务器群的应用。第七层负载均衡技术通过检查流经的 HTTP报头,根据报头内的信息来执行负载均衡任务。第七层负载

20、均衡优点表现在如下几个方面:通过对 HTTP 报头的检查,可以检测出 HTTP400、500 和 600 系列的错误信息,因而能透明地将连接请求重新定向到另一台服务器,避免应用层故障。可根据流经的数据类型(如判断数据包是图像文件、压缩文件或多媒体文件格式等),把数据流量引向相应内容的服务器来处理,增加系统性能。能根据连接请求的类型,如是普通文本、图象等静态文档请求,还是 asp、cgi 等的动态文档请求,把相应的请求引向相应的服务器来处理,提高系统的性能及安全性。第七层负载均衡受到其所支持的协议限制(一般只有 HTTP),这样就限制了它应用的广泛性,并且检查 HTTP 报头会占用大量的系统资源

21、,势必会影响到系统的性能,在大量连接请求的情况下,负载均衡设备自身容易成为网络整体性能的瓶颈。三、Web 服务器和应用服务器的负载均衡在负载均衡的思路下,多台服务器为对称方式,每台服务器都具有同等的地位,可以单独对外提供服务而无须其他服务器的辅助。通过负载分担技术,将外部发送来的请求按一定规则分配到对称结构中的某一台服务器上,而接收到请求的服务器都独立回应客户机的请求。提供服务的一组服务器组成了一个应用服务器集群(cluster),并对外提供一个统一的地址。当一个服务请求被发至该集群时,根据一定规则选择一台服务器,并将服务转定向给该服务器承担,即将负载进行均衡分摊。通过应用负载均衡技术,使应用

22、服务超过了一台服务器只能为有限用户提供服务的限制,可以利用多台服务器同时为大量用户提供服务。当某台服务器出现故障时,负载均衡服务器会自动进行检测并停止将服务请求分发至该服务器,而由其他工作正常的服务器继续提供服务,从而保证了服务的可靠性。上述的集群技术一般都用于 Web 服务器、应用服务器等,而不是用于数据库服务器,即不是用于有共享的存储的服务。数据库服务器将涉及到加锁、回滚等一系列问题,要复杂的多。一般数据库服务器只是使用双机,其中一台工作,另一台备份。数据库的双机并行只用于大型数据库中。可参见:系统高可用性与双机备份常见问题与方案选择 http:/ DNS,但只能实现简单的轮流分配,也不能

23、处理故障2.如果是基于 MSIIS,Windows2003Server 本身就带了负载均衡服务,不需另外购买。但这一服务也只是轮流分配。3.硬件方式,通过交换机的功能或专门的负载均衡设备可以实现。对于流量的分配可以有多种方式,但基本上都是应用无关的,与服务器的实现负载关系也不大。另外,设备的价格较贵(优点是能支持很多台服务器)。这种方式往往适合大流量、简单应用。4.软件方式,通过一台负载均衡服务器进行,上面安装软件。这种方式比较灵活,成本相对也较低。另外一个很大的优点就是可以根据应用的情况和服务器的情况采取一些策略。关于负载均衡中比较高级的功能是 FailOver,即一台出现故障时,在这台服务

24、器上正在进行中的进程也会被其他服务器接过去。相应的成本也很高,一般是要象 WebLogic、WebSphere 软件的群集版本才支持。四、负载均衡器简介负载均衡器可以根据实际的响应时间制定优先级交付决策,从而实现高性能、智能化流量管理,达到最佳的服务器群性能。采用第七层应用控制还可以减少通信高峰期的错误讯息,因为差错控制和流量管理技术可以侦测到一些错误信息,并透明地将会话重定向到另一个服务器,使用户顺利地进行使用。例如,服务器 A 不可用或者数据库出现错误,错误信息将会返回到负载均衡器上,然后会将客户的访问指向服务器 B 或者将消息重放到其他数据库中去,整个过程对用户是透明的。目前,许多厂商推

25、出了专用于平衡服务器负载的负载均衡器。目前负载均衡器生产商有:Intel、AlteonWeb、ArrowPoint(已被思科并购)、CoyotePoint、F5Networks、FoundryNetworks、HydraWeb 以及 RADWare 等。负载均衡器的形式多种多样,作为启动器,它以各种形式和大小出现。一些厂商,如 Alteon、ArrowPoint,将负载均衡器集成到交换设备中,置于服务器与 Internet 链接之间;而另外一些厂商,如 CoyotePoint、F5Networks 以及 HydraWeb,则运用两块网络适配器将这一功能集成到 PC 中,其中一块连接到前端止于

26、Web 服务器的 Hub上,另一块通过路由器或其他设备连接到 Internet 上。一旦负载均衡设备检测到所管理的每台服务器承载的负荷量,它会按照一定的算法来分配通信。ArrowPoint 公司的 CS-100、F5 的 Big/ip、以及 CoyotePoint 公司的均衡器都支持循环均衡功能。其处理方法是,均衡器同时向所有可用服务器以命令序列方式发送相同数量的请求。Alteon 的 AceSwitch180、CoyotePoint 的均衡器、F5Networks的 Big/ip 以及 RADWare 的 Web 服务定向器支持这样一种均衡方法:它能以最小的 TCP 链接将请求发送到服务器。

27、ArrowPoint 的 CS-100 还支持静态负荷均衡选项,这就是说,为服务器分配请求是建立在事先已指定负荷量的基础之上的。举个简单例子,使用 Pentium300 的机器应比 Pentium200 承载更多的请求。由于采用了负载均衡技术,自动故障恢复得以实现,服务的时间可以延长,247 可靠性和持续运行成为可能。另外,负载均衡器一般也支持路径外返回模式,即绕过流量分配器,为那些焦急等待大量数据文件请求响应的客户提供更快的响应时间。总之,如果负载均衡需求简单,也就是说,只是接近于通过所有服务器的“共享”级水平,并且网络环境也只是由低速 LAN 组成,则不需要太高级的均衡产品。同样的,若是静

28、态内容传输,则只要具备循环分配功能的负载均衡器也就可以了。在最新的负载均衡产品中,智能化越来越明显。一些智能化的负载均衡器能够侦测到像数据库错误、服务器不可用等信息,从而采取措施使会话恢复和重定向服务器,使电子商务能够得以顺利进行。多址负载均衡器可以对客户发来的访问请求进行解析,计算出最佳地址,然后将该地址返回客户,使客户自动连接到对其请求来说最佳的数据中心。典型产品:Intel 网擎负载均衡器负载均衡服务具体分为本地负载均衡服务和远程负载均衡服务。英特尔公司的网擎(IntelNetStructure)7170 网络应用负载均衡器,可应用于本地负载均衡服务。该设备能够平衡服务器群中所有的服务器

29、和应用之间的通信负载,根据实时响应时间进行判断,将任务交由负载最轻的服务器来处理,以实现真正的智能通信管理和优秀的服务器群性能。服务器故障切换和多重冗余特性可以让通信绕过故障点,从而使用户站点始终保持运行和可访问性。并且,每次提供负载均衡服务后,7170 网络应用负载均衡器都有记录,每天都会自动生成一个报告,客户通过这一报告还能了解流量的分布情况。英特尔网擎系列中的 7190 多址负载均衡器可用于远程负载均衡服务。这一设备针对拥有多个网站地址的企业进行专门设计,能够根据单个 URL 地址将通信路由到方便可用的站点,从而实现广域网范围的负载平衡。为了提高响应速度,7190 采用“快速响应模式”,使所有的站点都能对同一用户的访问请求作出响应,响应最快的站点将接受并完成这一访问任务,而不是在发生用户请求时计算“最快”的路由因而产生额外的延迟时间。管理员可以采用这种模式确保很短的服务器响应时间,也可以选择对用户满意度产生更大影响的其他算法。系统在后台收集多站点状态信息,如服务器响应时间、通信量、本地系统状态,从而使 7190 能够立即确定每个数据中心的状态,并将访问导向最佳站点。(资料来源 http:/

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报