行业资讯
您的位置:首页 > 新闻中心 > 行业资讯

多台服务器如何实现负载均衡及其意义

发布制作:admin  发布日期:2013/12/25

负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。均衡负载能够平均分配客户请求到服务器列阵,籍此提供快速获取重要数据,解决大量并发访问服务问题。这种群集技术可以用最少的投资获得接近于大型主机的性能。

网络负载均衡的优点

第一,网络负载均衡能将传入的请求传播到多达32台服务器上,即可以使用最多32台服务器共同分担对外的网络请求服务。网络负载均衡技术保证即使是在负载很重的情况下,服务器也能做出快速响应;

第二,网络负载均衡对外只需提供一个IP地址(或域名);

第三,当网络负载均衡中的一台或几台服务器不可用时,服务不会中断。网络负载均衡自动检测到服务器不可用时,能够迅速在剩余的服务器中重新指派客户机通讯。这项保护措施能够帮助你为关键的业务程序提供不中断的服务,并可以根据网络访问量的增加来相应地增加网络负载均衡服务器的数量;

第四,网络负载均衡可在普通的计算机上实现。

网络负载均衡的实现过程

在Windows Server2003中,网络负载均衡的应用程序包括Internet信息服务(IIS)、ISA Server2000防火墙与代理服务器、VPN虚拟专用网、终端服务器、Windows Media Services(Windows视频点播、视频广播)等服务。同时,网络负载均衡有助于改善服务器的性能和可伸缩性,以满足不断增长的基于Internet客户端的需求。

网络负载均衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地址)访问群集,同时保留每台计算机各自的名称。下面,我们将在两台安装Windows Server2003的普通计算机上,介绍网络负载均衡的实现及应用。

这两台计算机中,一台计算机名称为A,IP地址为192.168.0.7;另一台名为B,IP地址为192.168.0.8。规划网络负载均衡专用虚拟IP地址为192.168.0.9。当正式应用时,客户机只需要使用IP地址192.168.0.9来访问服务器,网络服务均衡会根据每台服务器的负载情况自动选择192.168.0.7或者192.168.0.8对外提供服务。具体实现过程如下:

在实现网络负载均衡的每一台计算机上,只能安装TCP/IP协议,不要安装任何其他的协议(如IPX协议或者NetBEUI协议),这可以从“网络连接属性”中查看。

第一步,分别以管理员身份登录A机和B机,打开两台机的“本地连接”属性界面,勾选“此连接使用下列项目”中的“负载均衡”项并进入“属性”对话框,将IP地址都设为192.168.0.9(即负载均衡专用IP),将子网掩码设置为255.255.255.0;

第二步,分别进入A机和B机的“Internet协议(TCP/IP)”属性设置界面,点击“高级”按钮后,在弹出的“高级TCP/IP设置”界面中添加IP地址192.168.0.9和子网掩码设置为255.255.255.0。

第三步,退出两台计算机的“本地连接属性”窗口,耐心等一会儿让系统完成设置。以后,如果这两台服务器不能满足需求,可以按以上步骤添加第三台、第四台计算机到网络负载均衡系统中以满足要求。

用IIS服务验证网络负载均衡

网络负载均衡配置好后,为了实现某项具体的服务,需要在网络负载均衡的计算机上安装相应的服务。例如,为了实现IIS网站的负载均衡,需要在相应的网络负载均衡服务器上安装IIS服务。为了让每个用户在通过网络负载均衡访问到不同的计算机时,能够访问到一致的数据,需要在网络负载均衡的每台计算机上保持数据的一致性。举例来说,实现了两个节点的IIS的网络负载均衡,为了保证两个网站内容的一致性,除了这两个IIS服务器的配置相同外,相应的网站数据必须一致。

为了检验网络负载均衡,我们可以通过IIS来进行验证,其他的一些应用如终端服务、Windows Media服务与IIS的应用与之相类似。在其他计算机上的IE浏览器中键入192.168.0.9,根据网络的负载,网络负载均衡会自动转发到A机或B机。为了验证效果,你可以在浏览的时候,拔掉第一台计算机的网线或拔掉第二台机器的网线,将会发现浏览到的将是不同内容。当然,我们在测试的时候,为了验证网络负载均衡的效果,把两个网站设置成不一致的内容,而在正式应用的时候,网络负载均衡群集的每个节点计算机的内容将是一致的,这样不管使用哪一个节点响应,都能保证访问的内容是一致的。

负载均衡在校园网中的应用

校园网的应用除了用于教学、科研、管理、图书情报资料检索外,还承担任着校内外信息交流、电子邮件、公告、新闻发布,以及各种公共网络口的访问等任务。由于在网络上传输的信息不只是数字、文字和图形,还会随应用水平的提高,逐步增加语音、活动图像及视频图像等高带宽的应用。因此,网络的建设,尤其是主干网要求高带宽与高速度,在校园网的服务器中应用负载均衡技术不失为一种廉价的解决方案。为了提高服务器的性能和工作负载能力,企业通常会使用DNS服务器、网络地址转换等技术来实现多服务器负载均衡,特别是目前企业对外的互联网Web网站,许多都是通过几台服务器来完成服务器访问的负载均衡。

目前企业使用的所谓“负载均衡服务器”,实际上它是应用系统的一种控制服务器,所有用户的请求都首先到此服务器,然后由此服务器根据各个实际处理服务器状态将请求具体分配到某个实际处理服务器中,对外公开的域名与IP地址都是这台服务器。负载均衡控制与管理软件安装在这台服务器上,这台服务器一般只做负载均衡任务分配,但不是实际对网络请求进行处理的服务器。

一、企业实现Web服务器负载均衡

为了将负载均匀的分配给内部的多个服务器上,就需要应用一定的负载均衡策略。通过服务器负载均衡设备实现各服务器群的流量动态负载均衡,并互为冗余备份。并要求新系统应有一定的扩展性,如数据访问量继续增大,可再添加新的服务器加入负载均衡系统。

对于WEB服务应用,同时有几台机器提供服务,每台机器的状态可以设为regular(正常工作)或backup(备份状态),或者同时设定为regular状态。负载均衡设备根据管理员事先设定的负载算法和当前网络的实际的动态的负载情况决定下一个用户的请求将被重定向到的服务器。而这一切对于用户来说是完全透明的,用户完成了对WEB服务的请求,并不用关心具体是哪台服务器完成的。

二、使用网络地址转换实现多服务器负载均衡

支持负载均衡的地址转换网关中可以将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。很多硬件厂商将这种技术集成在他们的交换机中,作为他们第四层交换的一种功能来实现,一般采用随机选择、根据服务器的连接数量或者响应时间进行选择的负载均衡策略来分配负载。然而硬件实现的负载控制器灵活性不强,不能支持更优化的负载均衡策略和更复杂的应用协议。

基于网络地址转换的负载均衡器可以有效的解决服务器端的CPU和磁盘I/O负载,然而负载均衡器本身的性能受网络I/O的限制,在一定硬件条件下具有一定的带宽限制,但可以通过改善算法和提高运行负载均衡程序的硬件性能,来提高这个带宽限制。不同的服务类型对不同的服务器资源进行占用,我们使用的负载衡量策略是使用同一个负载进行评估,这对于大多数条件是适合的,然而最好的办法是针对不同的资源,如CPU、磁盘I/O或网络I/O等,分别监视服务器负载,由中心控制器选择最合适的服务器分发客户请求。

三、使用DNS服务器实现负载均衡

访问企业网服务器的用户急剧增加,一台服务器难以满足用户的访问需要,那么如何才能保证用户的正常访问呢?解决方法有很多,如使用Windows2000或Windows Server2003提供网络负载均衡服务,但该服务的设置非常复杂。而通过DNS服务器实现网络负载均衡则是一种比较简单的方法。

企业网通常由很多子网构成,为了降低网络中的数据流量,客户机最好能访问处于同一子网内的Web服务器。虽然实现了网络负载均衡功能,但并不能保证客户访问的是本子网的Web服务器。其实这个问题也很好解决,只要启用DNS服务器的“启用网络掩码排序”功能即可。在DNS管理器窗口中,右键点击DNS服务器,在弹出的菜单中选择“属性”,然后在属性对话框中切换到“高级”选项卡,勾选“服务器选项”列表框中的“启用网络掩码排序”选项即可。这样客户机每次都能访问到本子网内的Web服务器了。完成以上设置后,就使DNS服务器实现了网络负载均衡功能,把客户的访问分担到每个Web服务器上,并且还减少了跨子网的网络通信流量,大大降低了企业网的通信负担。

四、企业实现SQL Server数据库服务器负载均衡

MS SQL Server数据库服务器可以说是应用范围最广的数据库产品,并且越来越多地在大型和比较关键的应用系统中提供服务。当企业应用越来越复杂、数据量越来越大的时候,SQL Server数据库要不停的进行处理、存储、查询的工作,这个时候企业就要考虑SQL Server数据库服务器的性能和速度及安全性了。然而,长期以来,SQL SERVER数据库服务器都只有“热备”的解决方案,而没有“负载均衡”和“集群”的解决方案。

随着数据库路由器软件ICX的出现,为基于MS SQL Server的数据库系统提供了一种更优秀的集群解决方案。它可以真正的实现SQL Server数据库服务器的动态负载均衡,提高性能和速度它可以真正的保证SQL Server数据库服务器不间断的提供服务,在服务器发生故障的时候实时切换到其他服务器上继续提供服务,切换时间为“零”。数据库路由器是实时并发数据库事务处理同步复制器和负载平衡器。

所有的数据库客户都通过ICX访问数据库。当访问、查询SQL Server数据库的时候ICX可以根据实际情况分配服务器来提供服务,大大提高服务速度和优化性能,完成负载均衡。ICX可以同时连接多台数据库,这若干台数据库的内容在任何时刻由ICX保证是完全一致的。也就是说,ICX采用了全新的并发事务处理的方式,向连接的N台数据库同步复制事务处理,使得系统在任何时刻具有多个一致的最新逻辑数据库数据集。当其中一台数据库服务器发生故障的时候,ICX可以实时的、第一时间切换到其他服务器上来继续提供服务。真正的实现零时间的服务器切换,大大提高安全性,真正意义的实现服务器不间断服务。