多台服务器负载均衡的实现方法_第1页
多台服务器负载均衡的实现方法_第2页
多台服务器负载均衡的实现方法_第3页
多台服务器负载均衡的实现方法_第4页
多台服务器负载均衡的实现方法_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

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

2、速响应;第二,网络负载均衡对外只需提供一个IP地址(或域名);第三,当网络负载均衡中的一台或几台服务器不可用时,服务不会中断。网络负载 均衡自动检测到服务器不可用时,能够迅速在剩余的服务器中重新指派客户机通讯。这项保 护措施能够帮助你为关键的业务程序提供不中断的服务,并可以根据网络访问量的增加来相 应地增加网络负载均衡服务器的数量;第四,网络负载均衡可在普通的计算机上实现。网络负载均衡的实现过程在Windows Server 2003中,网络负载均衡的应用程序包括Internet信息服务(IIS)、 ISA Server 2000防火墙与代理服务器、VPN虚拟专用网、终端服务器、Windows

3、 Media Services(Windows视频点播、视频广播)等服务。同时,网络负载均衡有助于改善服务器的 性能和可伸缩性,以满足不断增长的基于Internet客户端的需求。网络负载均衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地 址)访问群集,同时保留每台计算机各自的名称。下面,我们将在两台安装Windows Server 2003的普通计算机上,介绍网络负载均衡的实现及应用。这两台计算机中,一台计算机名称为A,IP地址为192.168.0.7;另一台名为B,IP 地址为192.168.0.8。规划网络负载均衡专用虚拟IP地址为192.168.0.9。当正式应

4、用时,客 户机只需要使用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.

5、0;第二步,分别进入A机和B机的“Internet协议(TCP/IP)”属性设置界面,点击“高级” 按钮后,在弹出的“高级TCP/IP设置”界面中添加IP地址192.168.0.9和子网掩码设置为 255.255.255.0。第三步,退出两台计算机的“本地连接属性”窗口,耐心等一会儿让系统完成设置。以后,如果这两台服务器不能满足需求,可以按以上步骤添加第三台、第四台计算 机到网络负载均衡系统中以满足要求。用IIS服务验证网络负载均衡网络负载均衡配置好后,为了实现某项具体的服务,需要在网络负载均衡的计算机 上安装相应的服务。例如,为了实现IIS网站的负载均衡,需要在相应的网络负载均衡服务 器上安

6、装IIS服务。为了让每个用户在通过网络负载均衡访问到不同的计算机时,能够访问 到一致的数据,需要在网络负载均衡的每台计算机上保持数据的一致性。举例来说,实现了 两个节点的IIS的网络负载均衡,为了保证两个网站内容的一致性,除了这两个IIS服务器 的配置相同外,相应的网站数据必须一致。为了检验网络负载均衡,我们可以通过IIS来进行验证,其他的一些应用如终端服 务、Windows Media服务与IIS的应用与之相类似。在其他计算机上的IE浏览器中键入 192.168.0.9,根据网络的负载,网络负载均衡会自动转发到A机或B机。为了验证效果, 你可以在浏览的时候,拔掉第一台计算机的网线或拔掉第二台

7、机器的网线,将会发现浏览到 的将是不同内容。当然,我们在测试的时候,为了验证网络负载均衡的效果,把两个网站设 置成不一致的内容,而在正式应用的时候,网络负载均衡群集的每个节点计算机的内容将是 一致的,这样不管使用哪一个节点响应,都能保证访问的内容是一致的。负载均衡在校园网中的应用校园网的应用除了用于教学、科研、管理、图书情报资料检索外,还承担任着校内 外信息交流、电子邮件、公告、新闻发布,以及各种公共网络口的访问等任务。由于在网络 上传输的信息不只是数字、文字和图形,还会随应用水平的提高,逐步增加语音、活动图像 及视频图像等高带宽的应用。因此,网络的建设,尤其是主干网要求高带宽与高速度,在校

8、园网的服务器中应用负载均衡技术不失为一种廉价的解决方案。为了提高服务器的性能和工作负载能力,企业通常会使用DNS服务器、网络地址转换 等技术来实现多服务器负载均衡,特别是目前企业对外的互联网Web网站,许多都是通过 几台服务器来完成服务器访问的负载均衡。目前企业使用的所谓“负载均衡服务器”,实际上它是应用系统的一种控制服务器, 所有用户的请求都首先到此服务器,然后由此服务器根据各个实际处理服务器状态将请求具 体分配到某个实际处理服务器中,对外公开的域名与IP地址都是这台服务器。负载均衡控 制与管理软件安装在这台服务器上,这台服务器一般只做负载均衡任务分配,但不是实际对 网络请求进行处理的服务器

9、。一、企业实现Web服务器负载均衡为了将负载均匀的分配给内部的多个服务器上,就需要应用一定的负载均衡策略。 通过服务器负载均衡设备实现各服务器群的流量动态负载均衡,并互为冗余备份。并要求新 系统应有一定的扩展性,如数据访问量继续增大,可再添加新的服务器加入负载均衡系统。对于WEB服务应用,同时有几台机器提供服务,每台机器的状态可以设为 regular(正常工作)或backup(备份状态),或者同时设定为regular状态。负载均衡设备根据管 理员事先设定的负载算法和当前网络的实际的动态的负载情况决定下一个用户的请求将被 重定向到的服务器。而这一切对于用户来说是完全透明的,用户完成了对WEB服务

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

11、,在一定硬件条件下具有一定的带宽限制,但 可以通过改善算法和提高运行负载均衡程序的硬件性能,来提高这个带宽限制。不同的服务 类型对不同的服务器资源进行占用,我们使用的负载衡量策略是使用同一个负载进行评估, 这对于大多数条件是适合的,然而最好的办法是针对不同的资源,如CPU、磁盘I/O或网络 I/O等,分别监视服务器负载,由中心控制器选择最合适的服务器分发客户请求。三、使用DNS服务器实现负载均衡访问企业网服务器的用户急剧增加,一台服务器难以满足用户的访问需要,那么如 何才能保证用户的正常访问呢?解决方法有很多,如使用Windows 2000或Windows Server 2003提供网络负载均

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

13、器实现了网络负载均衡功能,把客户的访问分担到每个Web服务器上,并且还 减少了跨子网的网络通信流量,大大降低了企业网的通信负担。四、企业实现SQL Server数据库服务器负载均衡MS SQL Server数据库服务器可以说是应用范围最广的数据库产品,并且越来越多 地在大型和比较关键的应用系统中提供服务。当企业应用越来越复杂、数据量越来越大的时 候,SQL Server数据库要不停的进行处理、存储、查询的工作,这个时候企业就要考虑SQL Server数据库服务器的性能和速度及安全性了。然而,长期以来,SQL SERVER数据库服务 器都只有“热备”的解决方案,而没有“负载均衡”和“集群”的解决

14、方案。随着数据库路由器软件ICX的出现,为基于MS SQL Server的数据库系统提供了 一种更优秀的集群解决方案。它可以真正的实现SQL Server数据库服务器的动态负载均衡, 提高性能和速度;它可以真正的保证SQL Server数据库服务器不间断的提供服务,在服务器 发生故障的时候实时切换到其他服务器上继续提供服务,切换时间为“零”。数据库路由器是 实时并发数据库事务处理同步复制器和负载平衡器。所有的数据库客户都通过ICX访问数据库。当访问、查询SQL Server数据库的时 候ICX可以根据实际情况分配服务器来提供服务,大大提高服务速度和优化性能,完成负 载均衡。ICX可以同时连接多

15、台数据库,这若干台数据库的内容在任何时刻由ICX保证是 完全一致的。也就是说,ICX采用了全新的并发事务处理的方式,向连接的N台数据库同 步复制事务处理,使得系统在任何时刻具有多个一致的最新逻辑数据库数据集。当其中一台 数据库服务器发生故障的时候,ICX可以实时的、第一时间切换到其他服务器上来继续提供 服务。真正的实现零时间的服务器切换,大大提高安全性,真正意义的实现服务器不间断服 务。SQL Server 2005实现负载均衡作者:天津工业大学计算机技术与自动化学院李哲杨连贺Internet的规模每一百天就会增长一倍,客户希望获得7天x24小时的不间断可用性及 较快的系统反应时间,而不愿屡次

16、看到某个站点“Server Too Busy-及频繁的系统故障。随着业务量的提高,以及访问量和数据流量的快速增长,网络各个核心部分的处理性能 和计算强度也相应增大,使得单一设备根本无法承担。在此情况下,如果扔掉现有设备去做 大量的硬件升级,必将造成现有资源的浪费,而且下一次业务量的提升,又将导致再一次硬 件升级的高额成本投入。于是,负载均衡机制应运而生。对于负载均衡,笔者经常接触的当属Oracle的负载均衡机制。下面,我们先简单了解 Oracle的负载均衡的实现方案。Real Application Clusters 是双机并行服务器(8i 及以前版本称作 Oracle Parallel Se

17、rver, OPS),用来在集群环境下实现多机共享数据库,以保证应用的高可用性,同时可以自动实 现并行处理及均分负载,还能实现数据库在故障时的排错和无断点恢复。它可以自动进行负 载平衡、故障修复和规划停机时间,以支持高可用性应用程序。若并行服务器中某节点失效, 透明的应用程序容错能够把用户自动转接到另一节点上继续运行,应用程序在用户没有察觉 的情况下继续执行。这使周期性和非周期性发生故障的系统增大了连续可用性。进程的失效 可以完全透明地转移到另一节点上去,通过适当地配置,可以指定所有查询都在客户端进行 缓存,这样它们便可以在转移后的节点上重新设置。下面我们重点介绍Sql Server 2005

18、是如何实现负载均衡的。Sql Server 2005 的新特性端到端拓扑的事务性复制SQL Server 2005对端到端(P2P)拓扑结构上事务性的复制加强了支持。P2P的拓扑结构 支持无限的发布服务器,它们彼此之间可以互相交换事务。P2P拓扑是SQL Server的一个巨大进步。现在,多端点服务器可以更改数据,并且向 其他的发布者复制事务。这就是说,订阅服务器不再被限制在主要的报告环境中,可以通过 事务性负载全球共享的方式将服务器分布开来。当用户的数量增加的时候,只要简单地向这 个群体中添加服务器即可。除了将负载分布之外,这个拓扑结构还增加了可用性。如果任何一个点的服务器不可达,则 池中其

19、他服务器就会共享这个负载,因为每个服务器都有其他所有服务器上可获得的全部数 据集合。数据库镜像和快照SQL Server 2005引入了数据库镜像的概念,来帮助获得高可用性。特别提醒的是,只 要它正式发布了,数据库镜像就可以在SQL Server 2005上使用。然而,只有到SQL Server 2005 Service Pack 1才会支持镜像。数据库快照是SQL Server 2005中引入的另一项特性。快照是某一个时间点上的数据库 的克隆。只要对镜像数据库进行了快照,就可以让用户查询快照。快照的生成通常只需要几 秒钟,因为它实际上在这个过程中并没有拷贝任何数据。因此,要把负载分布到主服务

20、器和 备用服务器上,就可以将数据库做镜像,然后阶段性地对备份服务器进行快照。而且还可以 使用快照在主服务器上进行报告。软件实现SQL Server 2005的负载均衡中间层实现数据库的负载均衡技术,首先要有一个可以控制连接数据库的控制端。在这里,它 截断了数据库和程序的直接连接,由所有的程序来访问这个中间层,然后再由中间层来访问 数据库。这样,我们就可以具体控制访问某个数据库了,然后还可以根据数据库的当前负载 来调整每次连接到哪个数据库。好处在两个方面:首先,它成功地将数据库放到了内网之中, 更好地保护了数据库的安全性。如果数据库也在公网上,1433端口是很容易被攻击的,所 以要保护数据库与之

21、的连接,就用到了中间层。它可以将数据库更加好地保护在内网。其次, 连接数据库的所有连接都可以控制,更方便DBA对数据的管理,看哪些连接更耗费数据库 资源,以便更好地优化代码。但是,也有两点要注意:第一,必须要做成Windows的服务程序。Windows发展到今天, 如果以一个集成的大系统来讲,做成服务程序更加稳定,也更加安全,这样做即使用户不登 录机器,也可以使用。第二,必须要使用多个中间层。从中间层的作用可以看出,它承接了 数据库的所有连接,所以,一旦出了问题,就会导致整个系统瘫痪。所以做多个中间层是必 要的,这样,如果一个坏了可以登录到另一个。实现多据库数据同步中间层有了,下一步的工作是设

22、置构建数据库集群。对于负载均衡,最重要的就是所有 服务器的数据都是同步的。这是一个集群所必需的,因为,如果数据不同步,那么用户从一 台服务器读出的数据,就有别于从另一台服务器读出的数据,这是不能允许的。所以必须实 现一个数据库的数据同步。这里设置一个用于写入的数据库,设置两个用于读出的数据库, 因为据统计,一般来讲,70%的数据库操作为读操作。首先,在写入数据库上做一个发布服务器,主要基于SQL Server 2005的复制技术,将 即将用到的表都选上。注意,在连接上要选用模拟用户,然后共享时选择sa用户,这样就 可以将数据共享了。其次,在两个读服务器上做订阅服务,要注意同样的事项,这样一个一写两读”的数据 库集群就完成了。数据库的安全备份在一个大的系统中,系统的无故障性是很重要的,但是在刚才的系统下,如果用于写的 服务器突然坏了,整个系统就会出现问题,所以,再做个备份是必要的。数据库镜像是SQL Server 2005大力推出的,它就是要实现数据库的安全转移,所以需 要再单独拿出一台机器来做备份服务器,将完全镜像写入该服务器,这样,即使写入服务器 坏了,它也可以自动转移到备份服务器上来,保证不影响用户。这实际上就相当于

温馨提示

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

评论

0/150

提交评论