双机热备与集群简介

        问:能解释一下什么是双机热备吗?    

        答:所谓双机热备,就是将中心服务器安装成互为备份的两台服务器,并且在同一时间内只有一台服务器运行。当其中运行着的一台服务器出现故障无法启动时,另一台备份服务器会迅速的自动启动并运行(一般为2分钟左右),从而保证整个网络系统的正常运行!双机热备的工作机制实际上是为整个网络系统的中心服务器提供了一种故障自动恢复能力。

        问:什么时候需要双机热备呢?     

答:这个问题其实比较简单,一般服务器要长年累月的工作,其备份工作就绝对少不了。所以,决定是否使用双机热备,笔者觉得应首先对系统的重要性,以及终端用户对服务中断的容忍程度进行考虑,然后再来决定是否使用双机热备。比如网络中的用户最多能容忍多长时间恢复服务?如果服务不能很快恢复会造成什么样的后果等等。

        问:已经采取了RAID技术和数据备份技术,还有必要做双机热备吗?    

        答:这其实没有个明确的区分,RAID和数据备份都同等重要!数据备份只能解决系统出现问题后的恢复;而RAID技术,以笔者的使用经验来看又只能解决硬盘的问题。我们知道,当服务器本身出现问题时,不论是设备的硬件问题还是软件系统的问题,都会造成服务的中断,而RAID及数据备份技术恰恰就不能解决避免服务中断的问题。所以,对于高安全需求、持续可靠的提供应用服务的网络系统来说,双机热备还是非常重要的。其实我们可以这样想:如果你的服务器坏了,你要用多少时间将其恢复到能正常工作?这样你就能理解双机热备的重要性了!

        问:双机热备方案与集群的区别?    

        答:从概念上来讲,双机热备属于集群中的一种。集群一般包括两类:一类是纯应用服务器的集群,即各个应用服务器都访问统一的数据库服务器,但彼些并不需要文件共享存储等,这种集群是比较简单的。另一类是数据库服务器的双机热备,这种双机热备实现,一般是两台服务器同时使用共享的存储设备,并且在普遍的情况下,均采取主、备的方式(也有高端的系统采用并行的方式,即两台服务器同时提供服务)。

        在双机应用方面,有两大类软件产品。一类是双机热备软件(HA),另一类则称作集群软件(Cluster),这两类软件是有差异的。

  它们都是为实现系统的高可用性服务的,都解决了一台服务器出现故障时,由其他服务器接管应用,从而持续可靠地提供服务的问题。

  它们都是通过心跳技术在进行系统检测。

  但是,双机热备软件只能支持两台服务器以主从方式或互备方式工作。而集群软件除了支持双机工作外,还可以支持多台服务器(Multi Node)工作,同时部署多个应用,并在多个服务器间灵活地设置接管策略。

  在两种情况下需要使用集群软件:一是有超过两个应用,本身就需要部署三台或更多的服务器。二是只有两个应用,但每个应用的负载均较大,不宜采用双机互备的方式,而是需要由第三台服务器来作为这两个应用的备机。

  一般地讲,集群软件具有更多的技术含量,具备更高的可靠性。同时,往往价格(平均到每台服务器)也高于双机热备软件。

  在选择产品时,应根据应用的实际情况来确定。最理想的方式,则是在应用数量少、负载不是很大时先使用双机热备软件,然后在应用数量增多、负载增大时平滑过渡到集群软件。

        问:数据库服务如何使用双机热备?    

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

        在这儿提一下标准的解决方法,即基于共享存储设备和双机软件实现双机热备。它可以在无人值守的情况下提供快速的切换,并且不会有数据丢失现象,而购买存储设备等投资也会比较高。

        问:如何选择与实施双机热备的配置方案?    

        答:1. 以应用为主导,进行认真的分析。以高可用性为宗旨。
        2. 考虑是采用数据库双机热备还是应用服务器集群、还是软件备份方式。
        3. 选择确定具体的设备、软件的型号等。笔者在这里提醒大家,不同的软件或是硬盘等存储设备,他们之间存在兼容性的问题,因此在购买之前应咨询专业人员,不要出现采购了双机软件对相关的存储设备存在不兼容等现象。
        4. 在实施完成后,一定要进行测试,以确保工作正常,而且应注意在运行过程中定期的对系统是否能够正常切换进行测试。

 


你可能感兴趣的:(其他)