1.负载均衡的介绍
软/硬件负载均衡
软件负载均衡解决方案,是指在一台或多台服务器相应的操作系统上,安装一个或多个附加软件来实现负载均衡,如DNS 负载均衡等。它的优点是基于特定环境、配置简单、使用灵活、成本低廉,可以满足一般的负载均衡需求。硬件负载均衡解决方案,是直接在服务器和外部网络间安装负载均衡设备,这种设备我们通常称之为负载均衡器。由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求。 一般而言,硬件负载均衡在功能、性能上优于软件方式,不过成本昂贵。 本地/全局负载均衡
负载均衡从其应用的地理结构上,分为本地负载均衡和全局负载均衡。本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指在不同地理位置、有不同网络结构的服务器群间做负载均衡。本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,可充分利用现有设备,避免服务器单点故障造成数据流量的损失。有灵活多样的均衡策略,可把数据流量合理地分配给服务器群内的服务器,来共同负担。即使是再给现有服务器扩充升级,也只是简单地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。全局负载均衡,主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个IP地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度,也可用于子公司分散站点分布广的大公司通过Intranet(企业内部互联网)来达到资源统一合理分配的目的。
更高网络层负载均衡
针对网络上负载过重的不同瓶颈所在,从网络的不同层次入手,我们可以采用相应的负载均衡技术来解决现有问题。 更高网络层负载均衡,通常操作于网络的第四层或第七层。第四层负载均衡将一个Internet上合法注册的IP地址,映射为多个内部服务器的IP地址,对每次TCP连接请求动态使用其中一个内部IP地址,达到负载均衡的目的。第七层负载均衡控制应用层服务的内容,提供了一种对访问流量的高层控制方式,适合对HTTP服务器群的应用。第七层负载均衡技术通过检查流经的HTTP报头,根据报头内的信息来执行负载均衡任务。
网络负载平衡的优点
1、网络负载平衡允许你将传入的请求传播到最多达32台的服务器上,即可以使用最多32台服务器共同分担对外的网络请求服务。网络负载平衡技术保证即使是在负载很重的情况下它们也能作出快速响应。
2、网络负载平衡对外只须提供一个IP地址(或域名)。
3、如果网络负载平衡中的一台或几台服务器不可用时,服务不会中断。网络负载平衡自动检测到服务器不可用时,能够迅速在剩余的服务器中重新指派客户机通讯。此保护措施能够帮助你为关键的业务程序提供不中断的服务。可以根据网络访问量的增多来增加网络负载平衡服务器的数量。
4、网络负载平衡可在普通的计算机上实现。在Windows Server 2003中,网络负载平衡的应用程序包括Internet信息服务(IIS)、ISA Server 2000防火墙与代理服务器、×××虚拟专用网、终端服务器、Windows Media Services(Windows视频点播、视频广播)等服务。同时,网络负载平衡有助于改善你的服务器性能和可伸缩性,以满足不断增长的基于Internet客户端的需求。
网络负载平衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地址)
访问群集,同时保留每台计算机各自的名称。
负载均衡技术实现方法 负载均衡技术的引入
信息系统的各个核心部分随着业务量的提高、访问量和数据流量的快速增长,其处理能力和计算强度也相应增大,使得单一设备根本无法承担,必须采用多台服务器协同工作,提高计算机系统的处理能力和计算强度,以满足当前业务量的需求。而如何在完成同样功能的多个网络设备之间实现合理的业务量分配,使之不会出现一台设备过忙、而其他的设备却没有充分发挥处理能力的情况。要解决这一问题,可以采用负载均衡的方法。 负载均衡有两个方面的含义:首先,把大量的并发访问或数据流量分担到多台节点设备上分别处理,减少用户等待响应的时间;其次,单个重负载的运算分担到多台节点设备上做并行处理,每个节点设备处理结束后,将结果汇总,再返回给用户,使得信息系统处理能力可以得到大幅度提高。
对一个网络的负载均衡应用,可以从网络的不同层次入手,具体情况要看对网络瓶颈所在之处的具体情况进行分析。一般来说,企业信息系统的负载均衡大体上都从传输链路聚合、采用更高层网络交换技术和设置服务器集群策略三个角度实现。 链路聚合 低成本的解决方案
为了支持与日俱增的高带宽应用,越来越多的PC机使用更加快速的方法连入网络。而网络中的业务量分布是不平衡的,一般表现为网络核心的业务量高,而边缘比较低,关键部门的业务量高,而普通部门低。伴随计算机处理能力的大幅度提高,人们对工作组局域网的处理能力有了更高的要求。当企业内部对高带宽应用需求不断增大时(例如Web访问、文档传输及内部网连接),局域网核心部位的数据接口将产生瓶颈问题,因此延长了客户应用请求的响应时间。并且局域网具有分散特性,网络本身并没有针对服务器的保护措施,一个无意的动作,像不小心踢掉网线的插头,就会让服务器与网络断开。
通常,解决瓶颈问题采用的对策是提高服务器链路的容量,使其满足目前的需求。例如可以由快速以太网升级到千兆以太网。对于大型网络来说,采用网络系统升级技术是一种长远的、有前景的解决方案。然而对于许多企业,当需求还没有大到非得花费大量的金钱和时间进行升级时,使用升级的解决方案就显得有些浪费了。对于拥有许多网络教室和多媒体教室的普通中学和职业中学,在某些课程的教学期间(比如上传学生制作的网页等等),将产生大量访问Web服务器或进行大量的文档传输;或在县区级的网络信息网上举行优秀老师示范课教学、定期的教学交流等教学活动时,这种情况尤为突出。然而在需求还没有大到非得花费大量的金钱和时间进行升级时,实施网络的升级就显得大材小用了。在这种情况下,链路聚合技术为消除传输链路上的瓶颈与不安全因素提供了成本低廉的解决方案。链路聚合技术将多个线路的传输容量融合成一个单一的逻辑连接。当原有的线路满足不了需求、而单一线路的升级又太昂贵或难以实现时,就可采用多线路的解决方案。
链路聚合系统增加了网络的复杂性,但也提高了网络的可靠性,使人们可以在服务器等关键局域网段的线路上采用冗余路由。对于计算机局域网系统,可以考虑采用虚拟路由冗余协议(VRRP)。VRRP可以生成一个虚拟缺省的网关地址,当主路由器无法接通时,备用路由器就会采用这个地址,使局域网通信得以继续。总之,当必需提高主要线路的带宽而又无法对网络进行升级的时候,便可以采用链路聚合技术。
高层交换 适合大型网络
大型的网络一般都是由大量专用技术设备组成的,如包括防火墙、路由器、第2层/3层交换机、负载均衡设备、缓冲服务器和Web服务器等。如何将这些技术设备有机地组合在一起,是一个直接影响到网络性能的关键性问题。大型网络的核心交换机一般采用高端的机柜式交换机,现在这类交换机一般都提供第四层交换功能,可以将一个外部IP地址映射
为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。有的协议内部支持与负载均衡相关的功能,例如HTTP协议中的重定向能力。
Web内容交换技术,即URL交换或七层交换技术,提供了一种对访问流量的高层控制方式。Web内容交换技术检查所有的HTTP报头,根据报头内的信息来执行负载均衡的决策,并可以根据这些信息来确定如何为个人主页和图像数据等内容提供服务。它不是根据TCP端口号来进行控制的,所以不会造成访问流量的滞留。如果Web服务器已经为诸如图像服务、SSL对话和数据库事务服务之类的特殊功能进行了优化,那么,采用这个层次的流量控制将可以提高网络的性能。目前,采用高层交换技术的产品与方案,有许多专用的设备,如3Com公司的3ComSuperStack3服务器负载均衡交换机和Cisco系统公司的CSS交换机产品等,国内的服务器厂商如联想和浪潮等也都有专用的负载均衡产品。 带均衡策略的服务器群集 满足需求
随着电子商务和电子政务的开展,网上交易和访问量会明显增加。企业的日常经营和各种办公业务都往上迁移,所传送不仅是一般的文本信息,还有很多视频和语音。如远程教学方兴未艾,不少院校都在全国各地设立网络教学点,进行远程教学和在线辅导,各个站点都必须能够同网络教学中心进行实时交流,在这种情况下,势必也会产生大量并发访问,因此要求网络中心服务器必须具备提供大量并发访问服务的能力。这样,网络中心服务器的处理能力和I/O能力已经成为提供服务的瓶颈。如果客户的增多导致通信量超出了服务器能承受的范围,那么其结果必然是宕机。显然,单台服务器有限的性能不可能解决这个问题,一台普通服务器的处理能力只能达到每秒几万个到几十万个请求,无法在一秒钟内处理上百万个甚至更多的请求。但若能将10台这样的服务器组成一个系统,并通过软件技术将所有请求平均分配给所有服务器,那么这个系统就完全拥有每秒钟处理几百万个甚至更多请求的能力。这就是利用服务器群集实现负载均衡的优点。 早期的服务器群集通常以光纤镜像卡进行主从方式备份。令服务运营商头疼的是关键性服务器或应用较多、数据流量较大的服务器一般档次不会太低,而服务运营商花了2台服务器的钱却常常只得到一台服务器的性能。通过LSANT(LoadSharingNetworkAddressTransfer)将多台服务器网卡的不同IP地址翻译成一个虚拟IP地址,使得每台服务器均时刻处于工作状态。原来需要用小型机来完成的工作改由多台PC服务器完成,这种弹性解决方案对投资保护的作用是相当明显的,既避免了小型机刚性升级所带来的巨大设备投资,又避免了人员培训的重复投资。同时,服务运营商可以依据业务的需要随时调整服务器的数量。
网络负载均衡提高了诸如Web服务器、FTP服务器和其他关键任务服务器上的Internet服务器程序的可用性和可伸缩性。单一服务器可以提供有限级的可靠性和可伸缩性。但是,通过将2个或2个以上高级服务器的主机连成群集,网络负载均衡就能够提供关键任务服务器所需的可靠性和性能。
为了建立一个高负载的Web站点,必须使用多服务器的分布式结构。如使用代理服务器和Web服务器相结合,或者2台Web服务器相互协作,这种方式也属于多服务器的结构。但在这些多服务器的结构中,每台服务器所起到的作用是不同的,属于非对称的体系结构。非对称的服务器结构中每个服务器起到的作用是不同的,例如一台服务器用于提供静态网页,而另一台用于提供动态网页等等。这样就使得网页设计时就需要考虑不同服务器之间的关系。一旦要改变服务器之间的关系,就会使得某些网页出现连接错误,不利于维护,可扩展性也较差。
能进行负载均衡的网络设计结构为对称结构,在对称结构中每台服务器都具备等价的地位,都可以单独对外提供服务,而无须其他服务器的辅助。然后,可以通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。在这种结构中,由于建立内容完全一致的Web服务器并不困难,因此负载
均衡技术就成为建立一个高负载Web站点的关键性技术。
综上所述,在客户端对操作系统进行优化,改善网络环境,虽然可以最大限度地提高客户端的信息传输速率,但是,在网络中,当众多工作站同时向同一服务器发出请求或同时访问同一个文件时,所产生的信息传输阻塞现象却是无能为力的。为此在服务器端采用负载均衡这种策略,它能让多台服务器或多条链路共同承担一些繁重的计算或I/O任务,从而以较低成本消除网络瓶颈,避免了单机拥塞或单机故障造成的不良影响,便于扩展,保证服务需要,提高网络的灵活性和可靠性。而且负载均衡是建立在现有网络结构之上,提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。
2.思科负载均衡的配置实例
3550(config)# ip slb serverfarm sf(群名) 3550(config-slb-sfarm)# real 10.1.1.2 3550(config-slb-sfarm)# inservice 3550(config-slb-sfarm)# real 10.1.1.3 3550(config-slb-sfarm)# inservice 3550(config-slb-sfarm)# real 10.1.1.4 3550(config-slb-sfarm)# inservice
3550(config)# ip slb vserver vs(虚拟服务器名)
3550(config-slb-vserver)# virtual 10.1.1.10(虚拟服务器IP) 3550(config-slb-vserver)# serverfarm sf
转载于:https://blog.51cto.com/perfectfaj/1188716