一、 双机容错方案的比较
在诸多备份手段中,双机容错系统能够提供在线数据备份、在线容错、在线修复、适时数据恢复等功能,能够保证关键业务的不间断运行。在 Windows NT Server的双机热备份软件的选择中,目前比较常见的有以下几种:CA公司的SurviveIT (即ARCServeIT Replication For Windows NT的升级版)、NCR公司的LifeKeep,Octopus For Windows NT、Standby Server For Windows NT和NT自带的Cluster技术。以上产品分析比较如下:
系统名称 优 点 缺 点
SurviveIT - 对打开文件的备份最为完善和安全,基本上能够做到实时备份;可以备份整个操作系统,也可以备份单个文件或文件夹;对网络负荷影响较小;操作简单,误警率低。
- 不需要磁盘阵列等额外的投资。 - 重新启动服务器后,软件会重做数据复制,时间较长。
LifeKeep - 系统可靠性高,不会对操作系统产生影响。
- 误警率最低。 - 系统对Windows NT操作系统的支持较弱,不能备份Windows NT的操作系统。
- 只能备份硬盘卷。
Octopus - 系统对Windows NT操作系统的支持强。
- 对打开文件备份较完善和安全
- 切换速度快。 - 网络负荷大;稳定性差;误警率高;操作复杂。
Standby - 对网络负荷影响较小。 - 服务器的CPU利用率高。
Cluster - 与NT系统紧密集成。 - 对备份机的要求较高,要求使用磁盘阵列。
二、 SurviveIT容错软件的介绍
SurviveIT是Micrsoft Windows NT平台的服务器高可用性解决方案, 它针对服务器和应用的故障提供第一级的保护,使用字节级的复制技术,实时地将选中的驱动器、卷和/或目录复制到一台从服务器上。在关键服务器发生故障,或者失去网络连接时,SurviveIT能在最短的延迟内,立即将用户转移到指定的从服务器, 使关键业务在主服务器故障恢复过程中仍可以继续进行。SurviveIT最大限度地提供了数据的可用性, 从而大大减少了因服务器宕机引起的不便。
SurviveIT的工作原理:一旦定义了某项任务,SurviveIT 会将您需要保护的服务器(主服务器)和用于备用的服务器(从服务器)之间选中的驱动器、卷和/或目录同步,此后的文件改动将在改动发生的同时进行复制。如果主服务器出现故障,不论由于何种原因,SurviveIT将把客户访问转移到从服务器的文件系统上。 当故障排除后,SurviveIT 用这些数据来恢复主服务器,重新同步两台服务器, 继续执行对主服务器的保护。
SurviveIT的优点:SurviveIT 不是复制磁盘扇区,而是文件和文件夹,这使得同步和复制更加迅速和灵活,使 SurviveIT 得以提供基于文件的事务完整性;在线同步对用户是透明的,在建立服务器同步时,通常的业务可以不受干扰地继续进行;提供对共享的透明的接管; 不需要磁盘阵列等专用硬件设备;SurviveIT还能够极为迅速地同步服务器,允许从服务器(在接管操作之前或之后)处理其他工作,允许用单个服务器接管多台主服务器,并且为装有SurviveIT的整个网络提供直观的单点管理。
SurviveIT全面支持CA Unicenter TNG、CA Jasmine、Lotus Notes、Microsoft Exchange、Microsoft SQL Server、Microsoft Proxy Server、Microsoft IIS、Netscape Enterprise、Oracle、Sybase等应用程序,在主、从服务器接管/恢复时,这些应用也能够被自动接管/恢复,从而保证了终端用户对关键数据的不间断存取。
三、 SurviveIT双机容错方案的设计
网络服务器的现状如下:1台NF5500服务器(NT+Oracle 8i)是MIS系统的心脏,1台NF5000服务器(NT+ARCserverIT)是的数据备份中心。为了满足客户端业务对 Oracle数据库的高可用性需求,用NF5000作为SurviveIT的从服务器来保护 NF5500(作为SurviveIT的主服务器)。
下图说明了使用从服务器NF5000保护单一主服务器 NF5500的配置(实际上,一台从服务器可以保护多台主服务器)。 要建立这样的安装结构,系统管理员应在主、从服务器上分别安装SurviveIT(根据输入的 licence number来确定 primary server/secondary server 的身份),并在网络中任意一台工作站上(最好就在主/从服务器上)安装 SurviveIT控制台组件。虽然要求主从服务器的处理器、内存和硬盘容量应大致相当,但无需完全一致。 显然,从服务器除在发生失效后接管主服务器的工作之外,还必须具有足够的能力运行其自身工作。
本方案中, 使用一根交叉双绞线进行备份数据的传输, 不会影响到系统的网络速度;同时,用一根串口线(null modem cable)做为检测线,检查主用服务器是否正常工作。在主用服务器出现故障时,备用服务器在完成其自身任务的同时,可以全面接管主用服务器的工作;在主用服务器故障排除后,可以方便的恢复主服务器的正常工作。
四、 SurviveIT的安装
1、 根据主、从服务器各自独立的功能需求,分别安装NF5500(NT+Oracle 8i)和NF5000(NT+ARCserverIT)服务器。
2、 为了保护主服务器的Oracle(是被保护的关键应用),从服务器NF5000 必须有足够的硬盘空间。同时,用与主服务器相同的安装路径和相关设置在从服务器上安装Oracle 8i,以便从服务器具有与主服务器Oracle一致的oracle services、registry和文件目录结构。
3、 在从服务器上把所有的oracle services的startup type都改为manual;在主服务器上修改listener.ora文件,把其中主机名(如NF5500)改为相应的IP地址(如10.42.0.1);主、从服务器上要正确设置WINS名字解析。
4、 在主、从服务器上分别安装 SurviveIT 的所有组件, 包括:Server component、Console component、Alert component、Unicenter TNG Framework component。注意:输入登录服务器的用户名和口令必须具有本地服务器管理员权限,如果该服务器位于NT 域,必须输入同时具有登录本地服务器和NT域的管理员权限的帐号。
5、 接下来,还需要安装从CA网站下载的SurviveIT SP1升级补丁,安装步骤同上。
五、 SurviveIT的设置与使用
1、 创建复制任务:
完成安装后,系统管理员便可设置SurviveIT,使用复制任务向导(SurviveIT控制台程序的一部分)创建复制任务,复制任务将定义主从服务器、失效条件、各种复制设置和一项或多项工作(要复制到从服务器的主服务器文件系统的一部分)。
打开SurviveIT Console主窗口,点击"新复制任务"按钮;
根据提示,选择Primary server(被保护服务器),即DA420000;
单击下一步,选择Secondary server,即NF5000;
选择被保护服务器保护级别: Full Protection-- 当 SurviveIT 检测到主服务器失效时,从服务器将接管失效主服务器的地位;Data Protection Only-- 如果SurviveIT检测到通信故障或主服务器的磁盘失效,仅仅停止数据复制,主服务器将不被接管。选择Full Protection;
选择主从服务器之间网络连接速度;
选择包含需要被复制文件的文件夹,选择C:\Oracle(注意:被保护的文件夹在主服务器上必须设置共享;有些系统文件和动态链接库文件(如c:\oracle\ora81\jdbc\lib、c:\oracle\ora81\dbs和所有的dll文件)由于在主、从服务器上都存在,并且是自安装后始终不变的文件,所以没有必要加入复制任务;
选择上一步所选择的C:\Oracle的共享名;
当任务设置一览表界面出现后,还需要通过高级选项设置当网络通信失败后执行"完全保护",因此单击"高级"按钮;在任务编辑树窗口,展开Failure Detection图标,单击Communication Failure图标;
在Communication Failure窗口,需要指明SurviveIT如何确定主服务器失效。比较好的办法是让主从服务器去ping 一系列附加的设备或计算机,这里选择 "Obtain Failure Confirmation via alternate route" 选项,在"Confirmation"选框中选择 "Use list of Machines/Devices to confirm server failure", 在"Machines/Devices" 选框单击增加按钮显示 confirmation Machines/Devices 对话框, 输入缺省网关的IP地址即10.42.0.247并确定;
对于Oracle数据库的应用保护,还需要设置被复制文件的目的位置,为主服务器提供备用的IP地址,添加使主服务器停止Oracle服务和从服务器开始Oracle服务的script。
设置被复制文件的目的位置:因为Netfinity5500所安装的Oralce数据库程序文件在C:\oracle,用户数据文件存放在D:\Oralce和D:\data,因此还需要增加2个workload。对Workload1,选择"Destination"→"Select Alternate Destination"→"C:\","Transactional Integrity"→0;对Workload2,选择"Destination"→"Select Alternate Destination"→"D:\","Transactional Integrity"→0;对Workload3,选择"Destination"→"Select Alternate Destination"→"D:\","Transactional Integrity"→0;
为主服务器提供备用的IP地址:当从服务器接管主服务器的应用后,也同时接管主服务器的网络信息(如主机名、IP地址等),而此时主服务器使用备用的IP地址和加_fail后缀的主机名,直到主服务器被恢复,目的是为了避免IP地址从突。 在复制任务编辑树窗口,选择"Failover Action"→"Primary-DA420000"→"Server Identification",在此窗口中,"Server Name"使用缺省的DA420000_FAIL,同时在"Server IP Address"窗口中双击主服务器IP地址以允许IP接管,输入主服务器备用的IP地址:10.42.0.4;
添加使主服务器停止Oracle服务和从服务器开始Oracle服务的script,共有8处(pre_failover_primary、post_failover_pri