网站地图
双机热备份

所谓双机热备份,概况地说,就是用网络把两台服务器连接起来,平时互相备份,共同执行同一服务。

当一台服务器停机时,可以由双机中的另一台服务器自动将停机服务器的业务接管,从而在不需要人工干预的情况下,保证系统能持续提供服务。

在双机热备应用中,根据两台服务器的工作方式不同可以有三种工作模式,即:主从、互备、并行。下面分别予以简单介绍:主从模式即目前通常所说的active/standby方式,active服务器处于工作状态,而standby服务器处于监控准备状态,服务器数据包括数据库数据,同时写入两台服务器或共享数据的磁盘阵列存储系统,保证数据的即时同步。当active服务器出现故障的时候,通过软件诊测或手工方式将standby机器激活,保证应用在短时间内完全恢复正常。

双机互备模式,这种方式对服务器的性能要求比较高,配置相对要更好。

并行模式也叫双工模式,般用于网络大规模应用,如Oracle数据库的RAC(Orade RealApplication Cluster),两台服务器均为活动的,同时提供相同的服务,保证整体的性能,也实现了负载均衡和互为备份,需要利用磁盘阵列存储技术。

这三种模式中,主从模式是中小规模网络最常用的双机热备技术,下面具体介绍该模式的技术实现方式。

数据信息是当今社会进步、发展的关键。面对日益庞大的计算机网络,用户的要求是网络能够可靠、高速、稳定地运行。当前大部分网络服务都是采用中心服务器的模式,服务器的高可靠性、高可用性是网络安全运行的关键,一旦服务器出现故障,所提供的服务就会被中断,影响正常工作,并可能丢失关键数据,从而造成严重后果。如何在故障情况下尽快恢复使用并保证数据的安全,已经成为一个日渐突出的问题。服务器双机热备份技术正是解决由软硬件故障引起可靠性降低的有效措施,该技术较为成熟,成本相对较低,具有安装维护简单、稳定可靠、监测直观等优点,在网络保障中获得了广泛的应用。

双机热备份技术是一种软硬件结合的较高容错应用方案。该方案是由两台服务器系统和一个外接共享磁盘阵列柜(也可没有,而是在各自的服务器中采取RAID卡)及相应的双机热备份软件组成。

在这个容错方案中,操作系统和应用程序安装在两台服务器的本地系统盘上,整个网络系统的数据是通过磁盘阵列集中管理和数据备份的。数据集中管理是通过双机热备份系统,将所有站点的数据直接从中央存储设备读取和存储,并由专业人员进行管理,极大地保护了数据的安全性和保密性。用户的数据存放在外接共享磁盘阵列中,在一台服务器出现故障时,备机主动替代主机工作,保证网络服务不间断。

双机热备份系统采用“心跳”方法保证主系统与备用系统的联系。所谓“心跳”,指的是主从系统之间相互按照一定的时间间隔发送通讯信号,表明各自系统当前的运行状态。一旦“心跳”信号停止表明主机系统发生故障,或者备用系统无法收到主机系统的“心跳” 信号,则系统的高可用性管理软件认为主机系统发生故障,主机停止工作,并将系统资源转移到备用系统上,备用系统将替代主机发挥作用,以保证网络服务运行不间断。

双机热备份方案中,根据两台服务器的工作方式可以有三种不同的工作模式,即:双机热备模式、双机互备模式和双机双工模式。

双机热备有两种实现方式,一种是两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网SAN),通过安装双机软件实现双机热备,称为共享方式。另一种方式是没有共享的存储设备,数据同时存放于各自服务器中,称为纯软件方式或软件同步数据方式。基于存储共享的实现方式是双机热备的最标准的方案,在主从模式工作中,两台服务器以一个虚拟的IP地址对外提供服务,服务请求发送给主服务器(active server)承担。同时,两台服务器通过心跳线(heartbeat line)侦测另一台服务器的工作状况。一旦主服务器出现故障,备服务器(standby server)根据心跳侦测的情况做出判断,在较短时间内完成切换,接管主机上的所有资源,成为新的主服务器。由于使用共享的存储设备,因此两台服务器使用的实际上是一样的数据,由双机或集群软件对其进行管理。

心跳线是主备服务器之间联系的纽带,所谓“心跳”,是一个错误检测机制,指主从系统之间相互按照一定的时间间隔发送通讯信号,周期性地检测各个节点的状态(包括系统的状态和应用的状态)。如果连续没有收到的心跳信号到了一定的数目,双机热备软件就认为相应的系统已经出现故障,并进行主备切换。传统上心跳故障检测使用串口通讯的方式,但目前已经普遍使用基于TCP/IP的方式。两台服务器之间,可以使用直连网线,也可以将两台服务器用于心跳诊断的网卡通过交换机连接。

双机热备份技术需要通过双机或集群软件来实现。双机软件采用结构化设计,一般来说包含以下几个模块:

(1)双机状态的管理模块,负责检测双机的工作状态,以及对故障状态进行判断。

(2)双机功能的执行模块,负责执行管理模块发出的双机调整切换命令等。

(3)双机系统的客户端配置管理工具,通过该模块实现对双机系统的远程配置、管理及维护等功能。

双机软件工作流程大致如下:软件启动时,首先读取双机系统的配置文件,该文件描述了双机系统中各节点的网络信息、硬件描述以及任务的定义等参数。软件的核心程序根据配置信息,进行双机系统的状态重组,建立双机的初始状态。在节点初始状态建立起来后,管理模块根据当前网络状态的信息对双机进行调整并分配网络资源,使双机中的主节点获得对外提供网络服务的资源,同时启动节点监控功能,对所启动任务的关键进程进行监控,保障对外提供服务的资源健康。当以上资源建立起来后,双机系统进入正常运行状态。

当系统中有节点故障时,双机管理模块根据双机当前的状态和该故障节点在双机中的角色做出双机系统是否切换的选择。当该节点为主服务器时,双机系统会自动将属于该节点的资源和任务移交到备服务器上,保证网络的正常运行。如果发生故障的节点为备服务器,双机软件提出报警后,将任务的移交进行封锁,直到备服务器故障修复,重新进入双机系统,管理模块检查到该故障修复后,对当前的任务进行解锁操作,系统重新进入正常运行状态。

即目前通常所说的active/standby 方式,active服务器处于工作状态;而standby 服务器处于监控准备状态,服务器数据包括数据库数据同时往两台或多台服务器写入(通常各服务器采用RAID磁盘阵列卡),保证数据的即时同步。当active服务器出现故障的时候,通过软件诊测或手工方式将standby机器激活,保证应用在短时间内完全恢复正常使用。典型应用在证券资金服务器或行情服务器。这是目前采用较多的一种模式,但由于另外一台服务器长期处于后备的状态,从计算资源方面考量,就存在一定的浪费。

是两个相对独立的应用在两台机器同时运行,但彼此均设为备机,当某一台服务器出现故障时,另一台服务器可以在短时间内将故障服务器的应用接管过来,从而保证了应用的持续性,但对服务器的性能要求比较高。配置相对要好。

是目前cluster(群集:群集包括两种,一种是网络负载平衡,另一种是服务器群集。这里的双机双工模式是属于网络负载平衡群集。)的一种形式,两台服务器均为活动,同时运行相同的应用,保证整体的性能,也实现了负载均衡和互为备份,实现该类方案的典型产品包括国外厂商Oracle的RAC,国内厂商格瑞趋势的Moebius for SQL Server。需要利用磁盘柜存储技术(最好采用San方式)。WEB服务器或FTP服务器等用此种方式比较多。

以上简要分析了服务器双机热备份技术的概念与方法,在实际应用中,根据网络规模或重要性的大小,双机模式可以扩展提升为多机集群模式,两台以上的服务器组成一个集群,根据应用的实际情况在这些服务器上进行部署,灵活地设置接管策略。比如,可以由一台服务器作为其他所有服务器的备机,也可以设置多重的接管关系等。此外,还有更新的技术涌现出来,如容错服务器技术,通过对服务器中所有硬件利用冗余的方法来容错,可以做到自动侦测、自动接管、自动恢复,是一种比双机热备份可用性等级更高的方案,适用于关键业务应用领域。


相关文章推荐:
服务器 | 服务器系统 | 磁盘阵列柜 | 系统盘 | 磁盘阵列 | 主机 | 网络服务 | 主机系统 | 双机互备 | 网络负载平衡 | 服务器群集 | Oracle | RAC | Moebius |
相关词汇词典