双机热备原理

来源:互联网 发布:淘宝招聘兼职是真的吗 编辑:程序博客网 时间:2024/05/01 08:47

一、什么是双机热备

双机热备这一概念包括了广义与狭义两种意义。

从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。

双机热备由备用的服务器解决了在主服务器故障时服务不中断的问题。但在实际应用中,可能会出现多台服务器的情况,即服务器集群。

双机热备一般情况下需要有共享的存储设备。但某些情况下也可以使用两台独立的服务器。

实现双机热备,需要通过专业的集群软件或双机软件

从狭义上讲,双机热备特指基于active/standby方式的服务器热备。服务器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备。在同一时间内只有一台服务器运行。当其中运行着的一台服务器出现故障无法启动时,另一台备份服务器会通过软件诊测(一般是通过心跳诊断)将standby机器激活,保证应用在短时间内完全恢复正常使用。

二、为什么要做双机热备

双机热备针对的是服务器的故障。

   服务器的故障可能由各种原因引起,如设备故障、操作系统故障、软件系统故障等等。一般地讲,在技术人员在现场的情况下,恢复服务器正常可能需要10分钟、几小时甚至几天。从实际经验上看,除非是简单地重启服务器(可能隐患仍然存在),否则往往需要几个小时以上。而如果技术人员不在现场,则恢复服务的时间就更长了。

而对于一些重要系统而言,用户是很难忍受这样长时间的服务中断的。因此,就需要通过双机热备,来避免长时间的服务中断,保证系统长期、可靠的服务。

决定是否使用双机热备,正确的方法是要分析一下系统的重要性以及对服务中断的容忍程度,以此决定是否使用双机热备。即,你的用户能容忍多长时间恢复服务,如果服务不能恢复会造成多大的影响。

 在考虑双机热备时,需要注意,一般意义上的双机热备都会有一个切换过程,这个切换过程可能是一分钟左右。在切换过程中,服务是有可能短时间中断的。但是,当切换完成后,服务将正常恢复。因此,双机热备不是无缝、不中断的,但它能够保证在出现系统故障时,能够很快恢复正常的服务,业务不致受到影响。而如果没有双机热备,则一旦出现服务器故障,可能会出现几个小时的服务中断,对业务的影响就可能会很严重。

另有一点需要强调,即服务器的故障与交换机、存储设备的故障不同,其概念要高得多。原因在于服务器是比交换机、存储设备复杂得多的设备,同时也是既包括硬件、也包括操作系统、应用软件系统的复杂系统。不仅设备故障可能引起服务中断,而且软件方面的问题也可能导致服务器不能正常工作。

三、方案设计


 

在方案中主要是两台服务器和一个磁盘阵列,其中两台服务器分别作为主从服务器,然后在操作系统、业务软件及数据库配置方面都是一样的,然后两台服务器后面通过SCIS线同时接磁盘阵列,这样就达到数据的集中存储,统一管理。两台服务器通过一条心跳线连接,然后通过双机软件实现真正意义上的双机热备系统,如果主服务器因软件或是硬件上的问题导致不能正常提供服务的时候,从服务器就会自动识别,并且在几秒之内自动代替主服务器,进行提供服务,保证系统应用的不间断性。

 

数据库服务实现双机热备

1、通过软件方式实现双机热备。即不采用共享的存储设备,而是本机数据可以直接在多台主机间流动。
此种方式最大的优点就是节约了昂贵的存储设备投资,而其缺点也不难发现:会产生数据的前后不一致、或者会影响数据库读取的速度。
我们看看这样一个例子:如果在服务中断时切换到备份服务器,则可能有少量已经在主机完成的事务在备机上尚未实现。而与备份数据的恢复不同,备机启动后,后面的操作已经进行,因此丢失的数据包要找回就相当难。故此种方式适用于对于丢失少量数据不是非常敏感的系统。
2、标准的解决方法:即基于共享存储设备和双机软件实现双机热备。
它可以在无人值守的情况下提供快速的切换,并且不会有数据丢失现象,而购买存储设备等投资也会比较高。

原创粉丝点击