- 相关推荐
服务器备份问题的探讨及在视频领域内的应用
服务器备份问题的探讨及在视频领域内的应用
2001中南地区广播电视技术讨论会技术论文一等奖计算机及其相关技术进入视频领域已经成为了一个不争的事实。以电视台为例,非线性节目制作网络和硬盘播出系统已经开始全面占领节目的制作和播出部分。数字化和网络化也被公认为是视频领域的未来。
无论是在非线性节目制作网络或是在硬盘播出网络中,服务器都是整个工作系统的核心。服务器不能正常的工作将会导致网络系统的功能紊乱甚至导致整个网络的崩溃。能否长时间安全稳定的工作是衡量一个视频网络是否具有实用性的重要指标。尤其在硬盘播出系统中,任何类型的服务器故障引发的系统失效都会导致播出事故,这是绝对不能允许的。所以,对服务器进行备份工作,在主服务器出现故障时自动接替工作,并且使这个过程相对于用户"透明",以保证任何情况下系统功能都不会失效就显得非常重要了。
我们可以以下面的制作播出一体化网络(图-1)来说明对服务器备份的重要性:
在图-1所示网络中,服务器管理资源的共享和分配。在播出系统中,视频播出服务器更是直接进行播出的工作,所以一定要保证服务器所谓的"零故障率"。因此,要对服务器部分进行备份,使得任何情况下服务器部分都能够正常的工作。我们可以将服务器单元分为两个部分:
1. 主服务器
正常时提供系统服务的主机。运行包括与网络相关联的管理和应用等所有的服务。
2. 备份服务器
当运行服务器提供的服务已不可用时,自动接替运行服务器的工作而不用重新起动系统,而当运行服务器恢复正常后,按照使用者的设定以自动或手动方式将服务切换到运行服务上运行。
我们可以将图-1所示网络改造如下(图-2):
在图-2所示的网络结构中,当视频服务器或播出服务器出现故障时,其备份服务器都可以自动接替其正在进行的工作,从而保证系统的正常运行。
我们可以通过以下方式实现服务器的备份工作:
服务器备份的工作模式
在讨论服务器备份的工作模式之前,我们必须明白所谓的服务器备份究竟意味着什么。我们以下图说明一下备份的含义。
假设我们有一项应用任务A正在主服务器上运行,同时设有一个备份服务器,在主服务器出现故障时接替主服务器的工作。我们定时保存任务A的运行状态,包括保存任务A的指令状态和数据状态,我们将定时保存纪录的现场称为现场1,现场2……现场n,现场n+1…..,如图所示
我们保存的这些现场是为了当应用任务A所工作的服务器出现故障,或者当任务A本身出现错误时使备份服务器可以接替主服务器正在进行的工作。
我们假设主服务器系统在现场n已被保存,现场n+1尚未被保存的时候发生故障。如图
当故障发生,系统探测到主服务器已经不能够正常工作后即通知备份服务器接替主服务器的工作。备份服务器调出保存的现场n,使得我们可以在备份系统上启动应用任务A并接替主服务器继续进行工作。
但是必须注意的是,我们不可能从错误发生的那一点上开始使用备份系统恢复工作。我们必须回到状态n,并从状态n开始继续进行应用任务A的工作。
基于上面所述的情况,不同类型的用户所使用的备份系统在对保存的现场n和现场n+1之间的时间间隔的要求也有所不同。例如对于非线性节目制作网络系统,我们看重的是编辑现场和数据的保存,以便在网络出现故障后可以对编辑现场进行恢复,待故障排除后继续进行尚未完成的编辑工作并保证数据的完整性。在这种情况下,我们设定的保存现场n和n+1之间的间隔就不需要很短,我们即使以秒为单位进行现场的保存,每隔一秒或几秒对现场进行一次保存,也是用户完全可以容忍的。而对于硬盘播出系统,我们要求从备份服务器对主服务器系统故障的检测到接替主服务器进行工作的时间周期不能大于人眼所能察觉的范围,即最佳状态应是不超过一帧。这样就要求在设计硬盘播出服务器方案时保存现场n与n+1之间的间隔必须以满足上面所述的要求作为设计依据。实际上更安全的办法是令整个备份系统运行在Active/Active工作模式下,并且主服务器和备份服务器同时运行同一个任务,一但备份服务器检测到主服务器出现故障便接替主服务器在整个系统中的地位。我们将在后面的部分详细讨论这种工作模式。
不同类型及要求的备份服务器系统可以分为以下的几种工作模式:
1. Active/Standby工作模式
Active/Standby 即激活/备用工作模式。它的特点是两台服务器处于不同的工作状态。主服务器处于处理状态,备份服务器处于备用状态,以防主服务器上发生故障影响整个网络运行。备用服务器可以是规模较小、性能稍低的服务器,但是,当主服务器出现故障时,它必须具有保证网络功能的处理能力。例如,假设服务器一是主"激活"节点,服务器二是次"备用"节点。如果服务器一节点发生故障了,它的被保护资源由服务器二节点来恢复。当服务器一节点恢复后, 资源可以被服务器一节点重新获得。然而,当服务器二节点出现故障时,服务器二节点上并没有需要被服务器一节点恢复的资源。
如图-3所示,应用A在处于Active状态的服务器一上运行,当服务器一出现故障时,处于Standby状态的服务器二接替服务器一运行应用A。
2. Active/Active工作模式
Active/Active工作模式即激活/备用工作模式。它的特点是两台服务器节点均同时处于工作状态,同时处理不同的应用。这就要求两台服务器应该具有相等或相近的处理能力。
如图-4所示,当系统正常工作时,两个服务器节点都处于激活状态,但是它们也可分别作为其对应节点上的资源和资源层次的从属节点。
我们可以假设在系统中有两个应用:应用A和应用B在同时运行。我们可以令应用A在服务器一上运行,处于激活状态,可以令应用B在服务器二上运行,也处于激活状态。应用A从硬盘阵列的区域a读取所需的数据,应用B从硬盘阵列的区域b读取所需的数据,同时为系统提供服务。当服务器一节点出现故障时,服务器二节点启动应用B以接替服务器一的工作,同时从硬盘阵列中的区域b中读取所需的数据。这样的工作方式可以使两台服务器都可以得到充分的利用,我们甚至可以
利用两台服务器节点分别为两个不同性质的工作单元进行服务。当其中的一个工作单元的服务器出现故障的时候,另一个工作单元可以分配出一些系统资源以承担出现故障服务器的处理工作,直到出现故障被排除。如我们可以将图-2所示网络结构中的备份视频服务器设置成为流媒体播出服务器。在网络系统正常工作的状态下,备份视频服务器运行Internet 视频流播放功能,并且可以为作为代理服务器为网络提供Web服务等Internet服务。当主视频服务器出现故障时,备用视频服务器便分出一些或让出全部的系统资源,运行主服务器上所提供的服务,保证网络系统的正常工作。我们也可以采用另外一种工作方式,即上面所说过的主服务器和备份服务器同时运行同一任务。在像硬盘播出这种可预置的、并执行针对同一任务的事先设定程序,并且在程序运行过程中可保证其过程不会发生不同变化的任务就非常适合这种工作方式。
除了以上两种服务器备份工作模式外,我们还可以采用超过两个服务器的服务器集群工作模式和服务器各自拥有独立硬盘阵列镜像工作方式。我们下面将分别讨论。
3 . N-Way(N=3,N=4…… N=16)工作模式
N-Way工作模式即集群工作模式是配置Active/Active工作模式或Active/Standby工作模式的一个有三到十六个服务器的扩展。服务器三被配置为服务器一和服务器二的备份。而且,服务器三可以被配置为除了服务器一和服务器二的其他服务器做备份。当任何一个服务器发生故障时,被保护的应用程序被从该服务器上转到备用的服务器上。如图-5所示。
在N-WAY工作模式中,可以配置Cascading Recovery (层叠恢复)工作模式。当主节点发生故障时,层叠恢复允许多个从属节点被按照一定的优先级次序恢复一个资源或层次。对于在一对节点上的资源恢复,如果节点服务器一发生故障了,资源将会失效切换到节点服务器二上;如果节点服务器二再发生故障而服务器一仍然不可用,资源将会失效切换到节点服务器三上。多个从属节点被指定一个恢复优先级序列。在上面的例子中,节点服务器一有最高的优先级,节点服务器二有第二优先级,而节点服务器三有最低优先级。系统可以按优先级次序测验节点来决定在失效切换时哪一个服务器将进行工作。
4. 镜像工作方式
镜像工作方式的特点是每个服务器都有独自的硬盘阵列,且指定特定的卷互为镜像,如图6所示。一个服务器被指定为主服务器,另一个为从服务器。当主服务器或所属于主服务器的硬盘阵列出现故障后,从服务器自动接替主服务器的工作。
在这种工作方式下,客户只能对主服务器上的镜像卷进行读或写。从服务器上相应的卷被锁定以防对数据的存取,除非在主服务器上检测到故障状态。这是镜像工作方式要考虑到的一个重要问题,因为数据的完整性是一个非常重要的因素。
在卷镜像建立后,主服务器和从服务器上的驱动器已经同步,并且两个服务器都已启动运行,就必须注意以下机制:
最初的镜像建立后,系统禁止所有用户存取从镜像卷,不允许对从服务器上的镜像卷读和写。主服务器镜像则可以进行读和写操作。
无论何时主服务器收到一个写请求,系统首先决定这个请求是否针对某个镜像卷。如果不是,写操作可以完全正常的完成。如果主服务器写请求是针对镜像卷的,那么请求首先被送到从镜像卷去。从系统在自己的镜像卷上执行写请求后,向主系统发送写回状态。主服务器在收到这个写回状态前不做任何写操作。
当从系统返回一个成功状态时,主系统在自己的镜像卷执行写操作,并返回到请求方。如果从系统执行镜像卷写操作时发生错误,那么从系统上的写操作将被中止,主系统结束自己的镜像卷写请求,镜像状态从正常变为中止。
在这种工作模式下,也可以将主从服务器设置为Active/Active的方式,即在不同服务器各自的硬盘阵列上设置不同的镜像卷。并根据工作的需要将服务器一节点设置为某些应用的主服务器,将服务器二节点设置为这些应用的从服务器,同时将服务器二节点设置为其余应用的主服务器,服务器一设置为从服务器,并且在硬盘阵列上设置不同的镜像卷。根据不同的应用区别主从服务器,运行镜像服务器的机制,就可以实现Active/Active的工作方式。我们也可以在硬盘播出上采用这种方式,将需要播出的节目素材镜像倒备份服务器的硬盘阵列上,在主服务器进行播出的同时备份服务器进行同样的工作,当主服务器出现故障试立刻可以接替主服务器的工作。事实上现在国内厂商开发出来的硬盘播出系统很多都采用这种工作模式。但需要指出的时,这是一种造价昂贵的配置方式,用户必须考虑到对安全的要求及经济忍受能力的平衡。
服务器备份的具体实现方法
上面我们了解了服务器被份的几种工作模式,下面我们将讨论实现服务器备份的具体的要求和方法。
一个完善的服务器备份系统应该具备以下几点要求:
1. 系统设置应该做到真正的数据与硬件无关。
2. 全自动的备份数据,包括系统控制数据和应用数据。
3. 对被损坏数据的自动恢复,包括业务人员可容易地自动恢复文件的误删除
维护人员可以自动恢复损坏的整个系统。
4. 系统切换时间短,即在主服务器出现故障时,备份服务器能够迅速的接替其工作。
5. 系统切换时应对应用程序无影响,用户应该察觉不到系统的切换,即所谓的"热备份"。
6. 对历史数据进行完整的归档管理。
7. 拥有高效率,一个完善的系统不应该因为备份服务器的引入而影响其工作性能。
以上是对一个完善的服务器备份系统的基本要求。当然每个用户都有着自己的工作环境,对备份系统的工作要求也各不相同,如在视频领域内应用的服务器,就对系统的切换时间和对应用程序的影响要求的高一些,而在某些其它的领域(如证券交易系统)则将保证数据的完整性放在第一位。有些用户需要与主服务器配置完全一样的服务器做系统备份,以保证整个系统的高效率运行,而有些用户为了提高性能价格比只需要配置稍低或过时闲置的服务器做备份。
无论那种服务器备份方案,其工作原理都是一样的,我们下面将详细讨论。
首先,服务器被份体系不受操作系统的限制。有些厂商开发的视频服务器使用UNIX服务器,有些厂商使用的是Windows NT 服务器,还有一些采用其它服务器如使用Novell服务器或Linux服务器的厂商。在这些服务器体系上都可以建立备份系统。
备份系统的基本原理是在两台或多台服务器之间建立连接,利用软件控制服务器的主从关系,因此在不同的操作平台上可以安装不同的控制软件。例如Vinca公司提供的服务器备份解决方案Co-standby Server就是一个纯软件产品,可以分别建立基于Novell、Windows NT、OS/2等服务器平台上的备份解决方案。而其它很多厂商开发的解决方案如LifeKeeper、Cluster也有基于系统平台的多种版本。
在服务器之间建立连接的手段有很多种,一般可以采用RS-232 通信端口(Communications port )或者TCP/IP的连接。我们以运行在Active/Standby工作模式下的备份服务器系统进行说明。
如图-7所示。服务器一为主服务器,处于Active状态,服务器二位备份服务器,处于Standby状态。两个服务器都通过铜缆或者SCSI接口与大容量硬盘阵列连接,服务器之间通过RS232和TCP/IP进行连接。
在系统正常工作状态下,应用A运行于服务器一上,从硬盘阵列的区域a读取或写入数据。服务器二通过连接向服务器一发送周期性的检测信号并从服务器一接收应答信号。
服务器二如果能够接收到服务器一正常工作的响应信号,则认为服务器一工作正常,则服务器二仍处于Standby状态。
如果服务器二不能从服务器一收到应答信号或者收到错误的应答信号,则服务器二认为服务器一已经失去正常工作的能力。服务器二从Standby状态转为Active状态,从硬盘阵列中的区域a读取应用A的状态数据并开始运行应用A,同时禁止服务器一访问区域a。从而接替服务器一在系统中的主服务器地位。当服务器一恢复正常工作时,服务器二将工作交还给服务器一并恢复Standby状态。
交还应用的方法有两种:一种是手动交还,即管理员排除服务器一的故障后,手动将工作切换给主服务器,并将备份服务器恢复到Standby状态。另一种是自动恢复,即在备份服务器接替主服务器工作后继续向主服务器发送检测信号,一旦收到表示主服务器已经正常的应答信号,就采用与接替主服务器工作的相同方式将工作交还给主服务器并恢复为Standby状态。
在实际工作过程中,必须注意以下几个问题:
1. 检测的准确性
由于检测信号的出错或者服务器之间连接的故障可能会导致备份服务器接收不到主服务器发回的正常响应信号,从而备份服务器认为主服务器已经无法正常运行,就会导致系统进行不必要的切换。
为了防止这种情况的发生,我们可以采用两种手段:设置多种检测应答信号和服务器间的多路连接。我们可以设定不同的检测及应答信号,当所有的检测信号均无正常应答时,备份服务器才认定主服务器已经无法正常工作,从而接手主服务器的工作。我们也可以在服务器之间建立不同的硬件连接,如同时建立基于RS232和TCP/IP的连接,同时发送检测信号,当所有的通路都得不到正常的应答信号后,备份服务器才认为主服务器已经无法进行正常的工作,接替主服务器的工作。当然最合理的方式是同时采用这两种方法,在多路连接上同时传送不同的检测应答信号。不过采用这种方法时必须要考虑的系统的资源开销问题。
2. 检测信号的发送周期
检测信号发送周期的长短取决于用户对备份系统的启动响应速度的要求。如果用户认为数据完整的重要性要远大于备份系统开始运行的响应速度的重要性,那么就可以令检测信号的发送周期适当的长一些,从而保证备份系统启动时数据可以被完整的保存。如果用户认为整个系统的工作不能中断甚至不能出现一定量的延时,那么检测信号的发射周期及和从确认主服务器无法正常工作到启动备份服务器接替主服务器工作的响应周期一定要小于系统所能够忍受的最大时间。硬盘播出系统就是一个最简单的例子。硬盘播出服务器的备份启动时间一定要小于人眼的可察觉的最小范围,并由此确定检测信号的发送周期。
3. 检测主服务器系统失效的方法
利用检测应答信号来确定主服务器系统是否失效的方法有很多,大致可分为检测系统硬件和检测数据两种。我们可以通过发送检测信号检测主服务器的系统硬件,如总线或CPU的工作状态,从而确定主服务器是否正常工作。我们也可以通过检测主服务器内存的数据状态,I/O端口的数据流动情况来判断主服务器系统是否出现数据错误。我们可以在主服务器上安装检测软件,把检测结果直接发给备份服务器,也可以利用主服务器自身的系统检测来确定主服务器的工作状态是否正常。
4. 主从服务器的设置
主从服务器的设置是否一致也取决于用户对具体工作的不同要求。如果用户侧重于数据的保存,如在办公网络系统中,我们可以采用一个配置稍低的服务器作为主服务器的备份。在主服务器出现故障后,启动备用服务器接替其工作,保存数据并降低整个网络的性能,直到主服务器的故障被排除。但是有些系统是不能降低其性能的,例如硬盘播出服务器,就应该采用相同配置的主服务器和备份服务器。我们建议在硬盘播出系统中才用镜像的Active/Active工作模式,采用两个互为镜像的硬盘存储阵列,在两个服务器上同时运行节目播出的应用以保证节目的安全播出。
无论主从服务器的设置是否一致,处于实际工作的考虑,都应该采用相同的操作系统。
以上我们介绍的采用共用硬盘阵列的Active/Standby工作模式下的备份服务器系统的工作原理、实现手段和一些需要注意得问题,这些方面也同样适用于采用其它存储方式和其它工作模式的服务器备份系统。
总结
服务器备份系统是整个网络安全的一个组成部分,同时也是极重要的一个组成部分,只有在服务器能够正常稳定工作的前提下,网络才有安全和效率可言。随着视频领域全面数字化和网络化时代的到来,每个电视工程技术人员在依然紧密的依托在传统电视技术的同时,全新到几乎近似陌生的,在不久前尚属于IT领域的各种新技术新观点纷至沓来。是否能做到不至于眼花缭乱,正是本文希望与各位同行共勉的愿望。
【服务器备份问题的探讨及在视频领域内的应用】相关文章:
转码技术在视频领域内的应用分析08-06
服务器集群技术及其在视频网络中的应用08-06
探讨重复数据删除技术在中央电台媒资备份存储系统中应用08-17
对“债转股”有关问题的探讨08-07
“留置盘问”问题探讨08-05
影响农村稳定问题的探讨08-12
探讨税收筹划相关问题08-18
农民与农民问题的探讨与思索08-17