微型机与应用
MICROCOMPUTER & ITS APPLICATIONS
2000 Vol.19 No.3 P.6-7,52



NCR LifeKeeper技术及其应用简介共享磁盘阵列柜方式
北京创统科技有限公司(100081)
1 NCR LifeKeeper原理
　　1.NCR LifeKeeper定义、特性、资源保护
　　LifeKeeper For Windows NT提供了一个完全容错的软件解决方案,并提供数据、应用程序和通信资源的高度可用性。LifeKeeper不需要任何特别的容错硬件。你可以集合使用2～16个NT结点。并访问特定地点的配置数据。然后,LifeKeeper会自动地提供错误检测和多层现场恢复。
在出现故障的情况下,LifeKeeper会将保护资源自动转换到一个根据优先权而设定的系统。在实际进行切换用户时,会经历一个十分短暂的休眠,但是,当系统完成了切换操作后,LifeKeeper会在所选择的系统上自动地恢复操作。
　　可以被LifeKeeper2.0保护起来的资源是:卷（Volume）、IP地址、共享文件、LAN（局域网）管理器服务器名称、应用程序、定义的用户、MSCS应用程序
　　2.心跳故障检测Heartbeat
　　LifeKeeper在集群节点间保持着间歇的通信信号,也叫做心跳信号,是一个错误检测机制,即通过每一个通信路径,在2个对等系统之间进行周期性的握手。如果连续没有收到的心跳信号到了一定的数目,LifeKeeper就把这条路径标示为失效（红色）。
如果你只定义了一条通信路径,当LifeKeeper把这唯一的1条通信路径标为失效时,LifeKeeper便立即开始恢复过程。然而,如是你有冗余路径,LifeKeeper能够通过第2条路径确定是系统故障还是只是通信路径有问题。如果LifeKeeper开启优先级第二的通信路径并收到了心跳信号,它就不开始failover恢复,只需要把第一条通信路径标成红色（失效）,作为信号告诉你需要修理一下有故障的路径。
　　一般情况下LifeKeeper只在下列事件发生时,启动系统恢复功能:
　　（1）所有的通信路径故障。如果所有节点都没能收到心跳信号,把所有通信路径都标为失效,LifeKeeper开始安全检查。
　　（2）安全检查失败。当所有通信路径故障时,LifeKeeper向整个网络发出安全检查信号。如果信号指出配对系统还“活”着,则LifeKeeper不启动Failover。如果安全检查没从配对节点返回信号,LifeKeeper就开始Failover。
　　因而,为了减少由于潜在的通信错误所引起的不必要的系统切换,建议您使用不同介质的多条通信路径。
　　3.通信路径
　　LifeKeeper支持在节点之间和心跳通信中,使用如下通信路径:
　　（1）socket,即套接字。无论使用哪种网络硬件接口,只要它能够支持TCP/IP的通信协议即可。这样的硬件包括:以太网、快速以网、令牌环网以及FDDI或CDDI。
　　（2）串行口在LifeKeeper配置中,应当配置有一个串行口通信路径。串口通信路径需要利用RS232的拟调解线路来与LifeKeeper系统相连接。
　　（3）共享磁盘。可以定义1个共享磁盘分区来作为LifeKeeper的通信中介。可以只使用小至1MB的分区,当然,也可以使用更大的空间。
　　LifeKeeper假定,当通过心跳信号检测其它服务器失败时,则认为此服务器是关闭的,因此,为了避免不必要的失效切换,最好建立二种以上独立的物理路径,使用至少二种心跳信号。
　　例如,如果2个服务器被1个串口连接起来,并且由从属服务器来的心跳信号无法被主服务器所检测到,则下面之一是可能引起这一现象的原因:（1）服务器的RS-232卡或者端口失败;（2）电缆失效;（3）主服务器暂时挂起;（4）主服务器失败。
　　失效切换只可能在最后一种情况下才发生。因此,节点间的多种通信路径可以帮助避免不必要的失效切换。
2 NCR LifeKeeper配置示范
　　NCR LifeKeeper配置示范如图1所示。

注释: 支持的数据库系统:NT SQL Server、Sybase、Oracle等;支持的
软件:lotus Notes、Exchange server等;其它:SAP R/3。NCR除
了提供以上的恢复工具包外,还提供了一个用户自定义接口,
使您的应用也能处于LifeKeeper的保护之下。
图1 NCR LifeKeeper配置示范
　　1.软件、硬件配置
　　软件:NCR LifeKeeper 2.0及Recovery Kit
　　硬件:服务器可以是任何Intel基础上的平台,Server的型号、配置不必一致,只要硬件平台能保证NT运行,磁盘阵列即可正常使用。
　　2.NCR LifeKeeper运行机制
　　（1）共享的SCSI和LifeKeeper软件锁定
　　LifeKeeper For Windows NT软件锁定:LifeKeeper管理共享磁盘上的数据,以防止多个服务器在同一时间访问数据。LifeKeeper在逻辑设备级（卷）上控制对数据的访问,并让Windows NT软件或硬件RAID Controllers管理物理级。有了Lifekeeper For Windows NT来管理对共享数据的访问,用户就可以不必担心群中的其它服务器访问数据时,可能会带来的数据访问冲突。LifeKeeper自动在被应用程序定义为共享资源的磁盘卷上设置锁定。当被保护的应用程序由一个服务器被移动/转换到另一个服务器时,LifeKeeper控制这些锁定,只保证激活服务器对共享卷的访问。
　　在主系统发生故障的情况下,次节点系统将能够在磁盘上建立SCSI锁定,并在备份的系统上将资源投入使用。
　　（2）Local Recovery（局部恢复）
　　LifeKeeper 2.0在快速检查（Quickcheck）和深入检查（deepcheck）的时间间隔执行预先定义的行为,以察看资源本身是否失效。如果快速检查和深入检查均局部告失败,系统将尝试局部恢复资源。如果尝试成功,资源将不会向下一优先级的节点进行失效切换（failover）。如果局部恢复尝试失败,系统将向下一优先级的节点进行失效切换。
　　例如,你可以在LifeKeeper服务器上配置多块NIC卡,当定义的NIC发生故障时,就可以配置将IP资源切转到另一个NIC上,从而避免不必要的失效切换。
　　（3）Failover（失效切换）
　　指定主要的节点或资源失败时,重新恢复资源的过程。一个失效切换通常是没有事先计划的,它将发生在被从属系统所检测到并确定为失败的情况下。
　　（4）ACS（管理员可配置的迁回）
　　Administrator Configurable Switchback（ACS）允许LifeKeeper管理员通过命令行或GUI界面来指定资源,其所在LK节点发生故障而后又恢复正常,该资源将被自动地切换回到原来节点上。可能的值是Intelligent（智能的）和Automatic（自动的）。如果选择Automatic,那么,一旦发生故障的节点回到服务状态时,被配置失效切换的层次都将被切换回到该节点上。如果策略是Intelligent,即使当发生故障的节点回到服务状态时,被配置失效切换的层次也会留在它们被失效切换到的节点上,等待由管理员决定合适的时候进行切换。
　　（5）Switchover（正常切换）
　　指用一个有顺序的方式关闭资源,然后将它们恢复到一个备用系统的过程。在通常发生在当你处于维护或者测试模式中的情况下,这时,没有任何东西失败。
　　3.工作方式
　　（1）Active/Standby
　　如图2所示,在1个激活/备用对中,主节点处于处理状态,从属节点处于备用状态,以防主节点上发生失败。备用系统可以是一个小一点、性能低一点的系统。但是,当主节点失败时,它必须有保证资源可用性的处理能力。例如,假设NT Server1是主“激活”节点,NT Server2是次“备用”节点。如果NT Server1发生了故障,它的被保护资源由NT Server2节点来恢复。当节点NT Server1恢复后,资源可以从NT Server1重新获得。然而,当NT Server2节点失败时,NT Server2节点上并没有需要被NT Server1节点恢复的资源。

图2 Active/Standby工作方式示意图
　　（2）Active/Active
　　如图3所示,在1个激活/激活对中,2个节点都是激活的处理器,但是它们也可分别作为其对应节点上的资源和资源层次的从属节点。

图3 Active/Active工作方式示意图
　　在激活/激活的图表中,有2个主要应用:APPA处于Volume W:,并且在NT Server1上激活。APPB存储在Volume M上,并且在NT Server2上激活。在这一配置中,NT Server1应该是Volume W：\资源的主节点。NT Server2应该是Volume M：\资源的主节点。
        当NT Server2失败时,LifeKeeper应该将Volume M：\转换到NT Server1上去。如果系统资源是足够的,这一转换不会影响到已在NT Server1上运行的APPA,转换只是简单地将NT Server2上需保护应用程序（APPB）加到NT Server1的运行负载上去。
　　（3）N-Way （N=3,N=4……N=16）
　　如图4所示,N-Way配置是激活/激活或激活/备用的1个有3～16个服务器的扩展。服务器A被配置为服务器B和服务器C的备份。而且,服务器A可以被配置为除了服务器B和服务器C的其它服务器的备份。当任何一个服务器发生故障时,被保护的应用程序被从该服务器上转到备用的服务器上。

图4 N-Way工作方式示意图
　　在N-Way配置中,可以配置Cascading Recovery（层叠恢复）。当主节点发生故障时,层叠恢复允许多个从属节点被按照一定的优先级次序恢复一个资源或层次。
3 NCR LifeKeeper的关键特点
　　1.不用增加任何额外硬件投资,纯软件方式实现双机容错,且对备份机无硬件配置要求。
　　2.可支持Notes、Exchange、SQL Server、Sybase、Informix、Oracle、SAP等多种系统的应用层热恢复。
　　3.是同时支持NT操作系统和UNIX平台的容错软件。支持远程灾难备份。
　　4.支持共享磁盘阵列柜和扩展镜像二种方式,给用户提供了选择上的灵活性,同时也能适应各种机型、网络结构、软件平台及应用系统。
　　5.LifeKeeper在扩展镜像或共享磁盘阵列任意方式下,均能实现二台NT服务器各自运行不同应用且相互热备份,即实现双Active运转模式。
　　6.使用共享磁盘阵列柜方式时,最多可以支持16个节点,远远大于其它类似系统所支持的2个节点数。
　　7.最大限度地保护用户端的应用连续性。用户的硬件资源（如网卡）及软件资源（如NT操作系统、数据库管理系统、数据库应用系统、电子邮件系统等）均能处于LifeKeeper的保护之下,当这些被保护资源出现技术故障时,LifeKeeper可随时实施系统资源切换。如此,LifeKeeper真正实现了用户硬件或是软件资源发生故障时系统及应用层上的在线热切换。
　　8.LifeKeeper占用系统资源极少,不增加网络负荷,且不打扰任何具体应用系统的任何操作。
　　9.LifeKeeper真正实现无人值守,全自动地实现应用资源切换,且图形界面操作,简单方便。
　　10.自投入使用以来,已经历了大量交易高峰的实际考验,其执行效率很高且运行十分稳定可靠。
收稿日期：1999-12-25
