网络通信 频道

服务器集群技术及其在视频网络中的应用

  一、前言

  视频网络的搭建和应用给电视台带来的是技术上的变革、节目制作理念的转变、工作效率的提高。同时,由于网络自身的原因,也给整个节目制作过程带了一些不稳定因素,比如网络瘫痪、带宽堵塞、素材丢失等。可用性成为评定视频网络好坏的重要标准,而服务器的可用性在很大程度上又决定了视频网络的可用性,因为服务器是整个网络的心脏,它担当着素材、数据库和硬件设备的管理工作。

  当然,随着许多先进技术的应用,充分保证了服务器的可用性,其中,比较经济、有效的一种技术就是服务器集群技术。

  二、服务器集群技术

  1、服务器集群概述

  服务器集群是由一组独立的服务器,并像单个系统一样运作,通过将运行着Windows2000AdvancedServer的服务器编组,组成集群服务器,从而对资源和应用程序提供了高可用性、可扩展性和可管理性。

  采用服务器集群的目的是,在出现故障或断电的情况下,保证客户对应用程序和资源的访问。如果集群里的某服务器由于故障或维护的缘故,不可用,资源和应用程序将转移到其它可用的集群节点上。

  而提起集群,人们容易将双机热备份与集群混为一谈,其实它们有本质上的区别:即能否实现并行处理和服务器失效后的任务平滑接管。双机或多机热备份的原理是一台主机做服务器,其他主机做备份机,服务器失效时,备份机接管。

  2、使用服务器集群的优点

  高可用性。集群技术可以用来避免单台服务器的资源或应用程序出现故障。使用集群技术,资源的所有权,如磁盘驱动器和IP地址将自动地从有故障的服务器上转移到可用的服务器上。当集群中的系统或应用程序出现故障时,集群软件将在可用的服务器上重启失效的应用程序,或将失效服务器的工作分配到剩余的服务器上,结果是,用户只是觉得服务器暂时停顿了一下。

  可扩展性。可以很方便地通过添加更多的服务器,来提高集群的计算能力和网络的可用性。

  可管理性。可以使用集群管理器来管理集群,并管理应用程序。可以通过拖放集群对象,在集群里的不同服务器之间移动应用程序,也可以通过同样的方式移动数据。可以通过这种方式来手工平衡服务器的负荷,卸载服务器,从而方便地进行维护。可以从网络的任意地方的客户端和资源处,监视集群的状态。

  3、服务器集群模式

  根据使用服务器集群的目的不同,服务器集群有三种主要的集群模式:一种是使用静态负载平衡的高可用性集群模式;另一种是具有最大可用性的“热备份”集群模式;第三种是混合型集群模式。

  模式A:使用静态负载平衡的高可用性集群模式

  在这种模式下,两台服务器都处在联机状态,每台服务器都以虚拟服务器的形式向整个网络提供自己的资源组,而客户端可以检测并访问到这种虚拟服务器。每台服务器容量的选择应该使每台服务器中的资源在最优性能下运行。但是在发生故障转移时,每台服务器又可以暂时承担其他服务器上资源的运行。根据指定的资源和服务器容量配置,所有的客户服务在故障转移时仍保持有效,但性能要受到影响响。

  假定某公司内部网络依赖一台运行了两个大型数据库应用程序的服务器。这两个数据库对全天反复连接进来的大量客户来说都是非常关键的。但在高峰连接时间,出现服务器不能满足需求和保持性能的问题。

  要缓解这个问题,必须将另一台服务器连接到过载的服务器上,形成集群以平衡负载,如图1所示。系统中有两台服务器,每台运行一个数据库应用程序。如果一台服务器出现故障,系统将回到性能降低的初始状态,但这是暂时的。在故障服务器恢复正常后,它运行的应用程序就会执行故障恢复,同时操作恢复正常。

  模式B:具有最大可用性的“热备份”集群模式

  在这种模式下,两台服务器只有一台是处于联机状态,它会支持所有的客户请求和操作。而另一台服务器却空闲着,它只是一个专用的“热备份”。。如果联机服务器出现故障,“热备份”服务器就以接近或等于联机服务器的性能接管全部操作并继续为客户提供服务。

  集群

  图2Web集群服务器模式

  这种模式最适用于单位中的重要应用程序和资源。例如,某公司主要通过网络渠道来销售其产品,就可以采用这种模式为所有专门支持Web访问的服务器提供“热备份”,如图2所示,例如运行IIS的服务器。在这一领域加倍投入硬件所需的费用,可以通过为客户提供高效稳定的访问得到回报。如果一台Web服务器出现故障,第二台服务器就会被完全配置以接管该服务器的全部操作。

  模式C:混合型集群模式

  混合型集群模式是上面两种模式的结合,它只针对关键应用进行故障转移,这样可以对这些应用实现可用性的同时让非关键的应用在正常运作时也可以在服务器上运行。当出现故障时,出现故障的服务器上的不太关键的应用就不可用了,但是那些关键应用会转移到另一台可用的服务器上,从而达到性能和容错两方

  面的平衡。

  4、电视台视频网络集群模式的选择

  从以上集群模式的分类可以看出三种集群模式各有自己的特点和用途,理想的集群模式应该是模式A,即集群中的两台服务器都同时处于联机状态,也就是在两台服务器上同时运行应用程序,当一台服务器出现故障时,运行在出现故障的服务器上的应用程序就会转移到另外的没有出现故障的服务器上,这样一来,由于两台服务器的工作现在由一台服务器来承担,自然会影响服务器的性能。对于电视台来说,应用程序都不是运算量很大的程序,单台服务器的处理能力足以满足需要,负载平衡也就起不到有效的作用,而电视台考虑最多的是网络的可用性,所以通常采用的是模式B,即在正常操作时,另一台服务器处于备用状态,只有当联机的服务器出现故障时该备用服务器才会接管工作,并且不会有任何性能上的影响。但这并不是一个很经济的方案,因为你不得不买两台服务器来做一台服务器的工作,虽然当出现故障时不会对性能产生任何影响,但是在正常运行时的性能价格比并不太好。

  5、服务器集群组件及实现过程

  集群是由许多组件组成,这些组件相互协作来管理集群对象,下面就对集群组件如何在单一集群服务器内相互作用关系进行阐述。

  集群组件之间的相互作用关系如图3所示,从图3可以看出集群主要有以下组件构成:(1)集群服务;(2)资源监视器;(3)资源;(4)集群管理器;(5)集群数据库;(6)集群网络驱动程序。

  集群服务是集群的核心组件,它管理所有集群指定的活动。在集群中的每台服务器上都运行着集群服务的一个实例。集群服务主要管理集群对象和配置、与集群中集群服务的其他实例协调、促进其他软件组件之间的通讯和执行故障转移操作。

  资源监视器是担当集群服务和资源之间媒介的集群组件。当集群服务请求资源时,资源监视器将它的请求传输给相应的资源。每台集群服务器都运行着一个或多个资源监视器。默认情况下,集群服务只启动一个资源监视器与此服务器中的资源交互作用。

  集群资源是具有如下特征的所有物理或逻辑组件:(1)能够联机和脱机;(2)能够在服务器集群上进行管理;(3)每次只能属于一台服务器。Windows2000AdvancedServer定义了几种资源类型,主要有物理磁盘资源类型、网际协议资源类型、文件共享资源类型等。一些资源可以组成一个资源组,一个资源组存在于一个上,但同时只能在一个服务器上,组是集群可以进行故障转移的最小单元。

  管理员使用集群管理器管理应用程序的配置、控制和监视集群。集群管理器是一个图形界面(如图4)来管理集群对象、建立组、进行故障转移、处理维护工作和监视集群行为。

  集群数据库常驻在每台集群服务器上的Windows2000注册表中。它包含集群的所有物理和逻辑元素的信息,包括集群对象、对象属性和配置数据。

  集群中的每个服务器都运行集群网络驱动程序的一个实例。集群网络驱动程序负责:监视节点之间所有网络路径的状态、路由消息、检测通讯问题。每台服务器的集群网络驱动程序都要和其他服务器上的集群网络驱动程序定期交换消息,称为“信跳”。如果没有成功地响应这种“信跳”消息,则此服务器上负责故障检测的集群网络驱动程序会通知启动故障转移的集群服务。

  从以上对集群组件的分析可以看出,服务器集群的实现过程是:首先,资源监视器根据管理员通过集群管理器设定的时间间隔对资源进行LookAlive和IsAlive两种级别的检查,一旦发现某一个资源不可用,就会试图重新启动该资源。根据阀值的设定,如果在某一时间段内,资源不可用的情况达到了设定的阀值时,就会发生故障转移。经过故障转移的过程,对应的资源组在另外一台服务器上重新启动了,继续为客户机提供服务,对客户来说,工作没有影响,这就完成了一次故障转移。当出现故障的服务器恢复正常以后,如果事先对该资源组设定了首选服务器,就会把该资源组移回该首选服务器。

  6、故障转移和故障回复

  (1)故障转移

  如果服务器集群上的个别应用程序执行失败(但是服务器没有问题),集群服务会尝试重新启动同一服务器上的应用程序。如果失败了,集群服务会移动此应用程序的资源并且在服务器集群的其他服务器上重新启动它们。这个过程称为故障转移。负责监视资源的资源监视器一旦发现资源出现故障,它就会通知集群服务,集群服务会根据事先定义好的策略触发对应的事件。虽然发现的是个别资源的故障,但是,集群还是会把整个资源组进行故障转移。

  故障转移会在三种不同的情况下发生:人工(一般是因为管理员的请求),自动,或者在特定的时间(由集群管理软件设定)。自动故障转移又包含了三个阶段:1、故障发现;2、资源重新定位;3、重新启动应用程序。当达到资源组的故障转移阀值时,自动的故障转移才会发生,阀值是可以设定的,一般又管理员来完成。

  故障转移包括如下步骤:

  ①集群服务使组中的所有资源按组的从属关系级别所决定的顺序脱机;首先是依存资源,紧随其后的是它们所依存的资源。例如,如果某个应用程序依赖于一个物理磁盘资源,则集群服务首先使此应用程序脱机,允许应用程序在磁盘脱机前将更改写入磁盘。集群服务通过资源监视器调用管理此资源,从而使该资源脱机。如果这个资源没有在指定的时间期限内关闭,则集群服务将强行中断此资源。

  ②当所有资源脱机后,集群服务会尝试将组转换到列在首选服务器的组列表下面的服务器中。

  ③如果集群服务成功地将组转移到其他服务器,则它会尝试将所有的组资源联机。当所有的组资源在新服务器上联机后,故障转移便告结束。

  (2)故障恢复

  当服务器由

  于某种原因转变为非活动状态时,集群服务将故障转移到由此服务器控制的任何组。当该服务器重新转变为活动状态时,集群服务能够对最初由此服务器控制的组进行故障恢复。

  集群服务使用同故障转移中一样的过程对某个组进行故障恢复,首先集群服务使组中的所有资源脱机,然后移动这个组,最后使组中的所有资源联机。

  三、服务器集群技术在视频网络中的应用

  1、项目概述

  河南电视台都市频道节目制作网是一个具有信号收录、演播室上载、节目资料共享、视音频制作的全数字环境的智能化、自动化的数据化制作网络系统,它能支持河南电视台都市频道节目制作业务的运转,并承担大部分节目的生产任务。

  在节目制作网搭建之前,河南电视台都市频道曾建立了一套基于M_JEPG格式的新闻网,新闻网服务器系统只有一台服务器构成,素材管理、管理网络程序、数据库应用程序都在一台服务器上完成。成本虽然很低,但安全性不能得到保障。服务器出现一点小小的故障就会影响到系统的使用。为了避免这种劣势,新搭建的节目制作网在可靠性上有了很大的改进,充分考虑到了节目素材、文稿、管理数据的安全问题。可靠性主要体现在服务器的建设方面,节目制作网采用了大量的服务器,关键服务器还配置了双机容错的机制,系统中一共配置了5台服务器,2台作为管理/数据库服务器,通过集群方式达到自动冗余的功能,1台MDC(MetaDataController)服务器,1台网络管理服务器,1台日志管理服务器。服务器系统结构图如图所示。

  2、服务器集群的拓扑结构

  集群技术在服务器中应用是河南电视台都市频道节目制作网的一个重要的技术特色。其服务器集群拓扑结构如图6所示。

  从图中可以看出,此集群是由两台名称为DataServer-01和DataServer-02的服务器组成的集群系统,集群名称叫DSPDCLUSTER,集群系统管理着网络的域控制器和登录帐号、节目制作网的高压缩比素材、SQL数据库应用程序。其中DataServer-01是主服务器,一直处于联机状态,而DataServer-02是备份服务器,平时处于空闲状态,只有在DataServer-01出现故障,集群发生故障转移时,DataServer-02才把资源控制权接管过来。

  3、服务器集群的创建

  (1)软硬件的配置要求

  软件要求:

  ?安装集群的一个首要条件是配置集群的每台服务器必须是安装了微软的Windows2000AdvancedServer或Windows2000DataCenterServer。

  ?有某种名称解析手段,如域名系统(DNS),Windows互连网命名系统(WINS),HOSTS等。

  硬件要求:

  ?集群服务器的硬件,必须满足Windows2000AdvancedServer或Windows2000DataCenterServer的硬件要求。

  ?共享的磁盘有独立的PCI存储适配器(SCSI或光纤)。

  ?集群里的每台服务器有两块PCI网络适配器。

  ?有外部存储单元,它跟所有的服务器相连,它被作为集群磁盘使用。

  (2)集群网络的建立

  每台集群服务器至少需要两个网络适配器,一个连接公共网络,一个连接私有网络。如图6,DataServer-01安装有编号为NIC11、NIC12两个网络适配器,NIC11用于私有网络连接,NIC12用于公共网络连接,DataServer-02安装有编号为NIC21、NIC22,NIC21用于私有网络连接,NIC22用于公共网络连接。并且每个网卡必须设置不同的静态IP地址,公共网与私有网必须不在同一网段内。网卡信息设置如表1。私有网通常是采用点对点进行通信,有人也形象地把私有网的连线成为“信跳线”,其功能在前面已经提到。每台集群服务器的公共网络适配器连接集群到公共网上,并在此驻留客户。

  (3)共享磁盘的创建

  DataServer-01和DataServer-02共享一个SCSI磁盘阵列,又根据集群和网络的不同需要把SCSI磁盘阵列分成F盘、G盘和I盘。

  F盘是集群的定额磁盘,是用来存储集群配置集群数据库的检测点和日志文件等集群信息,这些信息是用来维护集群的完整性以及使两台服务器保持同步,F盘在某一时刻只能被一台服务器所拥有,并用来决定由哪台服务器来拥有集群的所有资源。需要注意的是定额磁盘必须位于共享的磁盘子系统中,一般都是使用外接的作过RAID的磁盘阵列。因为定额磁盘的故障,将导致整个集群失效,容量至少有50MB,建议配置容量是500MB。G盘是用来存储SQLServer数据库应用程序和数据的。I盘是用来存储节目的高压缩低质量的素材。

  (4)集群软件的安装

  ?安装主服务器集群软件,首先安装DataServr-01的集群软件,在安装过程中,所有其它服务器都要关闭,必须提供所有的初始配置信息,以创建集群,集群名称为DSPDCLUSTER。

  ?安装备服务器集群软件,DataServer-01的集群软件安装完毕后,就可以安装DataServer-02的集群软件。

  ?安装SQLServer2000Cluster,设定虚拟SQLServer名称为SQL2000。

  (5)组的创建

  集群软件安装成功后,就要通过集群管理器来创建集群组,在DSPDCLUSTER集群中,除了集群自己默认的一个组ClusterGroup外,又根据需要创建了两个组,即DiskGroup1、DiskGroup2。组的配置如表2所示。

  四、结论

  服务器集群不能算得上是最好的高可用性技术,但可以说它是一种提供高可用性、改善性能和增强电视台视频网络应用软件可管理性的有效途径。电视台可以根据自己的需求来选择容错级别,用好它,也会收到意想不到的效益。

0
相关文章