一 双机容错方案的比较 在诸多备份手段中双机容错系统能够提供在线数据备份在线容错在线修复适时数据恢复等功能能够保证关键业务的不间断运行在 Windows NT Server的双机热备份软件的选择中目前比较常见的有以下几种CA公司的SurviveIT (即ARCServeIT Replication For Windows NT的升级版)NCR公司的LifeKeepOctopus For Windows NTStandby 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 TNGCA JasmineLotus NotesMicrosoft ExchangeMicrosoft SQL ServerMicrosoft Proxy ServerMicrosoft IISNetscape EnterpriseOracleSybase等应用程序在主从服务器接管/恢复时这些应用也能够被自动接管/恢复从而保证了终端用户对关键数据的不间断存取 三 SurviveIT双机容错方案的设计 网络服务器的现状如下台NF服务器(NT+Oracle i)是MIS系统的心髒台NF服务器(NT+ARCserverIT)是的数据备份中心为了满足客户端业务对 Oracle数据库的高可用性需求用NF作为SurviveIT的从服务器来保护 NF(作为SurviveIT的主服务器) 下图说明了使用从服务器NF保护单一主服务器 NF的配置(实际上一台从服务器可以保护多台主服务器) 要建立这样的安装结构系统管理员应在主从服务器上分别安装SurviveIT(根据输入的 licence number来确定 primary server/secondary server 的身份)并在网络中任意一台工作站上(最好就在主/从服务器上)安装 SurviveIT控制台组件虽然要求主从服务器的处理器内存和硬盘容量应大致相当但无需完全一致 显然从服务器除在发生失效后接管主服务器的工作之外还必须具有足够的能力运行其自身工作 本方案中 使用一根交叉双绞线进行备份数据的传输 不会影响到系统的网络速度同时用一根串口线(null modem cable)做为检测线检查主用服务器是否正常工作在主用服务器出现故障时备用服务器在完成其自身任务的同时可以全面接管主用服务器的工作在主用服务器故障排除后可以方便的恢复主服务器的正常工作 四 SurviveIT的安装 根据主从服务器各自独立的功能需求分别安装NF(NT+Oracle i)和NF(NT+ARCserverIT)服务器 为了保护主服务器的Oracle(是被保护的关键应用)从服务器NF 必须有足够的硬盘空间同时用与主服务器相同的安装路径和相关设置在从服务器上安装Oracle i以便从服务器具有与主服务器Oracle一致的oracle servicesregistry和文件目录结构 在从服务器上把所有的oracle services的startup type都改为manual在主服务器上修改listenerora文件把其中主机名(如NF)改为相应的IP地址(如)主从服务器上要正确设置WINS名字解析 在主从服务器上分别安装 SurviveIT 的所有组件 包括Server componentConsole componentAlert componentUnicenter TNG Framework component注意输入登录服务器的用户名和口令必须具有本地服务器管理员权限如果该服务器位于NT 域必须输入同时具有登录本地服务器和NT域的管理员权限的帐号 接下来还需要安装从CA网站下载的SurviveIT SP升级补丁安装步骤同上 五 SurviveIT的设置与使用 创建复制任务 完成安装后系统管理员便可设置SurviveIT使用复制任务向导(SurviveIT控制台程序的一部分)创建复制任务复制任务将定义主从服务器失效条件各种复制设置和一项或多项工作(要复制到从服务器的主服务器文件系统的一部分) 打开SurviveIT Console主窗口点击新复制任务按钮 根据提示选择Primary server(被保护服务器)即DA 单击下一步选择Secondary server即NF 选择被保护服务器保护级别 Full Protection 当 SurviveIT 检测到主服务器失效时从服务器将接管失效主服务器的地位Data Protection Only 如果SurviveIT检测到通信故障或主服务器的磁盘失效仅仅停止数据复制主服务器将不被接管选择Full Protection 选择主从服务器之间网络连接速度 选择包含需要被复制文件的文件夹选择C:\Oracle(注意被保护的文件夹在主服务器上必须设置共享有些系统文件和动态链接库文件(如c:\oracle\ora\jdbc\libc:\oracle\ora\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地址即并确定 对于Oracle数据库的应用保护还需要设置被复制文件的目的位置为主服务器提供备用的IP地址添加使主服务器停止Oracle服务和从服务器开始Oracle服务的script 设置被复制文件的目的位置因为Netfinity所安装的Oralce数据库程序文件在C:\oracle用户数据文件存放在D:\Oralce和D:\data因此还需要增加个workload对Workload选择Destination→Select Alternate Destination→C\Transactional Integrity→对Workload选择Destination→Select Alternate Destination→D\Transactional Integrity→对Workload选择Destination→Select Alternate Destination→D\Transactional Integrity→ 为主服务器提供备用的IP地址当从服务器接管主服务器的应用后也同时接管主服务器的网络信息(如主机名IP地址等)而此时主服务器使用备用的IP地址和加_fail后缀的主机名直到主服务器被恢复目的是为了避免IP地址从突 在复制任务编辑树窗口选择Failover Action→PrimaryDA→Server Identification在此窗口中Server Name使用缺省的DA_FAIL同时在Server IP Address窗口中双击主服务器IP地址以允许IP接管输入主服务器备用的IP地址 添加使主服务器停止Oracle服务和从服务器开始Oracle服务的script共有处(pre_failover_primarypost_failover_pri |