
双机热备系统
双机热备系统是集群的最小组成单位,就是将中心伺服器安装成互为备份的两台伺服器,并且在同一时间内只有一台伺服器运行。当其中运行着的一台伺服器出现故障无法启动时,另一台备份伺服器会迅速的自动启动并运行(一般为数分钟左右),从而保证整个网路系统的正常运行!双机热备的工作机制实际上是为整个网路系统的中心伺服器提供了一种故障自动恢复能力。
基本介绍
- 中文名:双机热备系统
- 基 于:高可用系统中的两台伺服器的热备
- 複製方式:保证主备伺服器的数据一致性
- 方 式:共享存储(磁碟阵列)的方式
双机热备概念
双机热备定义
双机热备包括广义与狭义两种。
从广义上讲,就是对于重要的服务,使用两台伺服器,互相备份,共同执行同一服务。当一台伺服器出现故障时,可以由另一台伺服器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。
从狭义上讲,双机热备特指基于active/standby方式的伺服器热备。伺服器数据包括资料库数据同时往两台或多台伺服器写,或者使用一个共享的存储设备。在同一时间内只有一台伺服器运行。当其中运行着的一台伺服器出现故障无法启动时,另一台备份伺服器会通过软体诊测(一般是通过心跳诊断)将standby机器激活,保证套用在短时间内完全恢复正常使用。
双机热备针对的是伺服器的故障。伺服器的故障可能由各种原因引起,如设备故障、作业系统故障、软体系统故障等等。一般地讲,在技术人员在现场的情况下,恢复伺服器正常可能需要10分钟、几小时甚至几天。从实际经验上看,除非是简单地重启伺服器(可能隐患仍然存在),否则往往需要几个小时以上。而如果技术人员不在现场,则恢复服务的时间就更长了。
而对于一些重要系统而言,用户是很难忍受这样长时间的服务中断的。因此,就需要通过双机热备,来避免长时间的服务中断,保证系统长期、可靠的服务。
决定是否使用双机热备,正确的方法是要分析一下系统的重要性以及对服务中断的容忍程度,以此决定是否使用双机热备。即,你的用户能容忍多长时间恢复服务,如果服务不能恢复会造成多大的影响。
我们可以通过典型的双机热备软体PCL HA来看一下双机热备的典型模式:
-Active/Active模式
-Active/Standby模式
而实际上,双机热备可能会扩展为多机的集群:多机集群模式
双机热备一般都是用于有资料库或其他数据的套用。而对于数据之前的套用伺服器(或其他没有写数据操作的服务),则应该归入负载均衡领域。
基于共享存储与纯软体方式
双机热备有两种实现模式,一种是基于共享的存储设备的方式,另一种是没有共享的存储设备的方式,一般称为纯软体方式。
基于存储共享的双机热备是双机热备的最标準方案。
对于这种方式,採用两台伺服器,使用共享的存储设备(磁碟阵列柜或存储区域网SAN)。两台伺服器可以採用互备、主从、并行等不同的方式。在工作过程中,两台伺服器将以一个虚拟的IP位址对外提供服务,依工作方式的不同,将服务请求传送给其中一台伺服器承担。同时,伺服器通过心跳线(往往採用建立私有网路的方式)侦测另一台伺服器的工作状况。当一台伺服器出现故障时,另一台伺服器根据心跳侦测的情况做出判断,并进行切换,接管服务。对于用户而言,这一过程是全自动的,在很短时间内完成,从而对业务不会造成影响。由于使用共享的存储设备,因此两台伺服器使用的实际上是一样的数据,由双机或集群软体对其进行管理。
对于纯软体的方式,则是通过支持镜像的双机软体,将数据可以实时複製到另一台伺服器上,这样同样的数据就在两台伺服器上各存在一份,如果一台伺服器出现故障,可以及时切换到另一台伺服器。
纯软体方式还有另外一种情况,即伺服器只是提供套用服务,而并不保存数据(比如只进行某些计算,做为套用伺服器使用)。这种情况下同样也不需要使用共享的存储设备,这种情况应该纳入负载均衡领域,
【纯软体方式的双机热备方案深入分析】
资料库双机热备有两种典型的方式,一种是比较标準的,两台伺服器通过一个共享的存储设备(一般是共享的磁碟阵列或存储区域网SAN),并且安装双机软体,实现双机热备,称为共享方式。另一种方式是通过纯软体的方式,一般称为纯软体方式或镜像方式(Mirror)。
对于共享方式,资料库放在共享的存储设备上。当一台伺服器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台伺服器也同样读取该存储设备上的数据。
纯软体方式可以在一定程度上降低成本,但它也有非常明显的缺点:
1.可靠性相对较差,两伺服器间的数据实时複製是一个比较脆弱的环节。
2.一旦某台伺服器出现中断,恢复后还要进行比较複杂的数据同步恢复。并且,这个时段系统处于无保护状态。
3.没有事务机制,由于其複製是在档案和磁碟层进行的,複製是否成功不会影响资料库事务操作,因此有出现数据不完整变化的情况,这个存在着相当的风险。
因此,建议除非不得已,不要选择纯软体方案。
但另一方面,有一种资料库并行的解决方案,它不是在档案或磁碟层进行複製,而是直接对资料库操作在前端进行路由分发,并行地以事务机制完成资料库的更新,同时还可以提供资料库的并行服务。这种方式针对SQL SERVER套用非常成功,明显优于共享存储+双机软体的方式。
【双机热备、双机互备与双机双工的区别】
双机热备即是通常所说的active/standby方式,当active伺服器出现故障的时候,通过软体诊测(一般是通过心跳诊断)将standby机器激活,保证套用在短时间内完全恢复正常使用。
双机互备,在双机热备的基础上,两个相对独立的套用在两台机器同时运行,但彼此均设为备机,当某一台伺服器出现故障时,另一台伺服器可以在短时间内将故障伺服器的套用接管过来,从而保证了套用的持续性。这种方式实际上是双机热备的一种套用。它避免了两个套用使用四台伺服器分别实现双机热备。
双机双工,两台或多台伺服器均为活动,同时运行相同的套用,保证整体的性能,也实现了负载均衡和互为备份。需要利用磁碟柜存储技术(最好採用san)。对于资料库服务而言,它同时需要资料库软体的支持,是比较複杂的。而WEB伺服器或套用伺服器就比较简单了。
相关问题
一些用户在规划双机热备或双机备份时,会有这样的问题:我已经有了RAID,以及磁带备份,还有必要做双机吗?或者,如果我做了双机备份,还有必要做磁带备份吗?
应该说RAID和数据备份都是很重要的。但是,RAID技术只能解决硬碟的问题,备份只能解决系统出现问题后的恢复。而一旦伺服器本身出现问题,不论是设备的硬体问题还是软体系统的问题,都会造成服务的中断。因此,RAID及数据备份技术不能解决避免服务中断的问题。对于需要持续可靠地提供套用服务的系统,双机还是非常重要的。只要想一想,如果你的伺服器坏了,你要用多少时间将其恢复到能正常工作,你的用户能容忍多长的恢复时间就能理解双机的重要性了。
从另外一个方面,RAID以及磁带备份也是非常需要的。对于RAID而言,可以以很低的成本大大提高系统的可靠性,而且其複杂程度远远低于双机。因为毕竟硬碟是系统中机械操作最频繁、易损率最高的部件,如果採用RAID,就可以使出现故障的系统很容易修复,也减少伺服器停机进行切换的次数。
数据备份更是必不可少的措施。因为不论RAID还是双机,都是一种实时的备份。任何软体错误、病毒影响、误操作等等,都会同步地在多份数据中发生影响。因此,一定要进行数据的备份(不论採取什幺介质,都建议用户至少要有一份脱机的备份),以便能在数据损坏、丢失时进行恢复。
容错技术
主流套用的伺服器容错技术有三类,它们分别是:伺服器群集技术、双机热备份技术和单机容错技术。它们各自所对应的容错级别是从低到高的,也就是说伺服器群集技术容错级别最低,而单机容错技术级别最高。由此可知它们各自套用的行业容错级别需求也是从低到高的。本文主要介绍后两种容错技术,先来看一下双机热备份容错技术。
一、双机热备份技术
双机热备份技术是一种软硬体结合的较高容错套用方案。该方案是由两台伺服器系统和一个外接共享磁碟阵列柜(也可没有,而是在各自的伺服器中採取RAID卡)及相应的双机热备份软体组成。
在这个容错方案中,作业系统和应用程式安装在两台伺服器的本地系统盘上,整个网路系统的数据是通过磁碟阵列集中管理和数据备份的。数据集中管理是通过双机热备份系统,将所有站点的数据直接从中央存储设备读取和存储,并由专业人员进行管理,极大地保护了数据的安全性和保密性。用户的数据存放在外接共享磁碟阵列中,在一台伺服器出现故障时,备机主动替代主机工作,保证网路服务不间断。
双机热备份系统採用“心跳”方法保证主系统与备用系统的联繫。所谓“心跳”,指的是主从系统之间相互按照一定的时间间隔传送通讯信号,表明各自系统当前的运行状态。一旦“心跳”信号表明主机系统发生故障,或者备用系统无法收到主机系统的“心跳” 信号,则系统的高可用性管理软体认为主机系统发生故障,主机停止工作,并将系统资源转移到备用系统上,备用系统将替代主机发挥作用,以保证网路服务运行不间断。
双机热备份方案中,根据两台伺服器的工作方式可以有三种不同的工作模式,即:双机热备模式、双机互备模式和双机双工模式。下面分别予以简单介绍。
双机热备模式即通常所说的active/standby 方式,active伺服器处于工作状态;而standby 伺服器处于监控準备状态,伺服器数据包括资料库数据同时往两台或多台伺服器写入(通常各伺服器採用RAID磁碟阵列卡),保证数据的即时同步。当 active伺服器出现故障的时候,通过软体诊测或手工方式将standby机器激活,保证套用在短时间内完全恢复正常使用。典型套用在证券资金伺服器或行情伺服器,这是採用较多的一种模式,但由于另外一台伺服器长期处于后备的状态,从计算资源方面考量,就存在一定的浪费。
二、单机容错技术
从上面的分析我们知道,双机热备份技术所採用的是两台配置完全一样的伺服器系统,其实伺服器群集方案中的容错技术也是一种多伺服器容错技术。而本节所要介绍的单机容错技术则是在一台伺服器实现高性能容错的,它的容错能力要远比伺服器群集和双机热备份中容错能力要高,所以更加适合那些如证券、电信、金融、医疗等对容错能力特别苛刻的行业。
以往的集群系统在出现故障的情况下,需要中断伺服器的运行,然后用一定的时间切换至备用的伺服器上面进行运行,才能进行维修和恢复,这其中所付出的成本和带来的损失是用户最不愿意看到的。具有容错技术的容错伺服器,最大的优势就在于它能够自动分离故障模组,在不中断运行的情况下,进行模组调换,对损坏的部件进行维护,并且在一切物理故障消除后,系统会自动重新同步运行,从而有效的解决了客户的后顾之忧。正因如此,具有容错技术的容错伺服器,正在冲击前几年兴起的双机热备份和集群技术,越来越被人们所关注。同时,更为难得的是它可以在採用符合工业标準部件的伺服器中实现(IA架构伺服器),极具竞争力的成本优势,更使得容错伺服器令人刮目相看。
容错伺服器是通过CPU时钟锁频,通过对系统中所有硬体的备份,包括CPU、记忆体和I/O汇流排等的冗余备份;通过系统内所有冗余部件的同步运行,实现真正意义上的容错。系统任何部件的故障都不会造成系统停顿和数据丢失。很多容错系统是基于IA架构的伺服器,与 Windows 2000完全兼容,实现以前只有在RISC系统上才能实现的容错。这种容错技术在IA伺服器上的实现,将IA伺服器的可靠性提高到了99.999%,同时伺服器的运行是不间断的。
双机热备份和容错伺服器的定位稍微有些不同,这是由两者实现的可用性差别决定的。双机热备份一般可以实现99.9%的可用性,容错伺服器却可以实现 99.999%的可用性。这样,双机热备份大多套用在业务连续性不是很严格的行业,比如说公安系统、部队系统或者个别的製造企业,这些行业的套用允许数据有一小段时间的中断。而如电信、金融、证券和医疗等要求高的行业则是容错伺服器的天下。还要注意的一点是双机热备份与伺服器群集并不一样,双机热备份通常要求两对路伺服器的配置完全一样,而伺服器群集则没有这方面的严格要求,这也是许多读者容易混淆的。
另外,双机热备份方式由于需要至少2台伺服器,导致在软体採购(作业系统、中间件、双机备份软体等)、软体维护升级、系统硬体升级都需要比单机容错方式多1倍的额外投入,而且在双机备份软体出现故障后,其维修的难度较高,对客户会带来较大困难。因此虽然单机容错伺服器的硬体成本高于双机备份方式的硬体投入,而其总成本(TCO)却远远低于双机备份方式的成本。但是就其灵活配置方面,双机热备份方案更具优势,许多热备份方案都是由一些系统集成商组合不同厂家伺服器产品进行的,可以满足不同客户需求。但总体来说,容错伺服器是未来发展的趋势。