通过Windows平台实现双机热备
目前双机热备方案可以在UNIX、Linux和Windows三种常用的操作系统下实施。Windows 平台下能实现双机热备软件很多,例如微软的群集软件MSCS,MSCS的主要用途是通过自身提供的容错能力提高应用程序可用性。容错能力是指将相关处理过程从某个节点上的故障应用程序(由于硬件设备故障或软件错误等原因所导致)移植到群集中其它健康节点上的群集功能。
当故障应用程序得到恢复后,群集应当能够对原先的群集节点实现“故障返回”。MSCS能够在不丢失任何与故障应用程序相关数据的前提下对群集上所运行的应用程序进行故障恢复与故障返回管理,并且能够在故障恢复过程中维护用户及应用程序状态。对于诸如电子邮件服务器、数据库应用程序之类的应用程序,MSCS是一种良好的运行方式。
ROSE HA (High Availability)为提供主机当机时可以在最短的时间内回复正常作业的高可靠性软件。它提供防止主机因意外当机造成长时间停机,以最低之成本提供用户近乎不停顿之计算机作业环境当一部工作主机(active server)当机或无法使用时,ROSE HA 将自动侦测出故障并激活备援主机(backup server)内预先设定之程序依序进行接替(take over)。源系统的任何数据更新将通过LANs和WANs镜像到用户指定的目标系统上,当源系统发生数据丢失或硬盘损坏时在目标系统上能够得到一份镜像文件。
ROSE HA可以实现一对一、一对多、多对一及多对多的数据镜像而不需要任何附加的硬件设备,ROSE HA 在两部主机上执行,提供相互备援保护监测程序(HA Daemon),如果任何一部主机上之作业处理被不正常中止, ROSE HA 将自动重新激活该被中止之作业.此过程不需要人为操作介入,此种防错功能可确保重要的服务不被中断。在正常的运作情形之下,主机之间透过冗余侦测线路互相侦测,当任一主机有错误产生时,ROSE HA提供严谨的判断与分析,确认主机出错之后,才完全启动备援接管动作。
UNIX下的双机热备
以IBM、HP和SUN为代表的UNIX环境下都有双机热备解决方案,如IBM Hacmp(High Availability Cluster Multi-Processing)双机热备份软件的主要功能是提高企业客户计算机系统及其应用的可靠性,而不是单台主机的可靠性。
HACMP是利用LAN来监控主机及网络、网卡的状态。在一个HACMP环境中有TCP/IP网络和非TCP/IP网络。TCP/IP网络即应用客户端访问的公共网,该网可以是大多数AIX所支持的网络,如Ethernet,T.R.,FDDI,ATM,SOCC,SLIP,等等。非TCP/IP网络用来为HACMP对HA环境(Cluster)中的各节点进行监控而提供的一个替代TCP/IP的通讯路径,它可以是用RS232串口线将各节点连接起来,也可以是将各节点的SCSI卡或SSA卡设置成Target Mode方式。
作为双机系统的两台服务器(主机A和B)同时运行Hacmp软件;服务器除正常运行自机的应用外,同时又作为对方的备份主机;两台主机系统(A和B)在整个运行过程中,通过 “心跳线”相互监测对方的运行情况(包括系统的软硬件运行、网络通讯和应用运行情况等);一旦发现对方主机的运行不正常(出故障)时,故障机上的应用就会立即停止运行,本机(故障机的备份机)就会立即在自己的机器上启动故障机上的应用,把故障机的应用及其资源(包括用到的IP地址和磁盘空间等)接管过来,使故障机上的应用在本机继续运行;应用和资源的接管过程由HA软件自动完成,无需人工干预;当两台主机正常工作时,也可以根据需要将其中一台机上的应用人为切换到另一台机(备份机)上运行。另外HP 的ServiceGuard、SUN的suncluster都可以实现双机热备功能。
Linux环境下实现双机热备
Linux环境下双机热备软件可以采用Steeleye的Lifekeeper for Linux ,LifeKeeper 提供直观的基于Java的图形接口,方便实现跨平台配置、管理和状态监控; 同时也包括一个完整的命令行接口。SteelEye公司的LifeKeeper for Linux 一个通过保持系统正常运行而确保应用具有持续可用性的软件应用。LifeKeeper 实现以双机热备方式连接在一起的linux系统的高可用性,这是通过监控系统及应用健康状态,保持客户连接性并为任何客户,无论位于互联网、内联网还是外联网提高不间断的数据存取。为了使系统及应用能在宕机是自动恢复,LifeKeeper允许将在应用在发生错误时切换到双机中的另一台服务器上。这有助于LifeKeeper将单点失败的风险降低到最低,从而在Linux系统上创建一种抗错环境以满足关键任务操作的严格可用性要求。
Redhat Linux系统下的双机热备份系统的实现,使用的双机控制软件是Linux-HA heartbeat。因此,除了安装操作系统及相关的应用服务程序之外,还需要安装heartbeat控制软件。通过对heartbeat软件的配置,可以把两台服务器分别指定为主节点和从节点,指定心跳信号的时间间隔,指定cluster IP、子网掩码、广播地址、鉴权方式,还可以设置heartbeat启动的服务,该服务最终由双机系统通过cluster IP对外提供。Heartbeat可以最大限度地保护用户端的应用连续性。用户的硬件资源(如网卡),软件资源(如操作系统、数据库管理系统、数据库应用系统、电子邮件系统等)均能处于heartbeat容错软件的保护之下,当这些被保护的资源出现技术故障时, heartbeat容错软件可以随时实施系统资源的切换。因此,heartbeat真正实现了用户硬件或是软件资源发生故障时系统及应用层上的在线热切换。
因此无论是大中小企业,根据业务应用的重要性不同,都可以采用双机热备解决方案,特别是电信、政府、税务、银行等行业重要应用系统,需要7X24X365永远运行的业务,一般都会使用双机热备或者集群方式来保证企业应用“万无一失”。当然使用双机热备需要有资金支持的,无论是从硬件和软件上我们必须要全盘考虑好,特别是UNIX环境下,配置HA是非常麻烦的事等,这些问题是我们企业在实施双机热备过程中必须要重视的。