什么是双机热备?
所谓双机热备,就是将中心服务器安装成互为备份的两台服务器,并且在同一时间内只有一台服务器运行。当其中运行着的一台服务器出现故障无法启动时,另一台备份服务器会迅速的自动启动并运行(一般为2分钟左右),从而保证整个网络系统的正常运行!双机热备的工作机制实际上是为整个网络系统的中心服务器提供了一种故障自动恢复能力。
什么时候需要双机热备?
这个问题其实比较简单,一般服务器要长年累月的工作,其备份工作就绝对少不了。所以,决定是否使用双机热备,笔者觉得应首先对系统的重要性,以及终端用户对服务中断的容忍程度进行考虑,然后再来决定是否使用双机热备。比如网络中的用户最多能容忍多长时间恢复服务?如果服务不能很快恢复会造成什么样的后果等等。
什么是集群系统?
现在的计算机社会中,持续的提供不停止的服务已经成为通往成功的关键。例如仅由于 1台机器故障或超负荷而宕机就导致对客户的服务全面停止。这样的话,不但会带来莫大的损失,还会失去客户的信任。
存储软件:一是有超过两个应用,本身就需要部署三台或更多的服务器。二是只有两个应用,但每个应用的负载均较大,不宜采用双机互备的方式,而是需要由第三台服务器来作为这两个应用的备机。
一般地讲,集群存储软件具有更多的技术含量,具备更高的可靠性。同时,往往价格(平均到每台服务器)也高于双机软件。
在选择产品时,应根据应用的实际情况来确定。最理想的方式,则是在应用数量少、负载不是很大时先使用双机软件,然后在应用数量增多、负载增大时平滑过渡到集群存储软件。
双机备份和集群的原理与比较
双机热备原理
双机热备用户可以根据系统的重要性以及终端用户对服务中断的容忍程度决定是否使用双机热备。比如网络中的用户最多能容忍多长时间恢复服务?如果服务不能很快恢复会造成什么样的后果等。对于承担企业关键业务应用的服务器需要极高的稳定性和可用性,需要7×24不间断服务,推荐使用双机热备。
我已经有了RAID,以及磁带备份,还有必要做双机吗?或者,如果我做了双机备份,还有必要做磁带备份吗?
RAID和数据备份都是很重要的。但RAID技术只能解决硬盘的问题,备份只能解决系统出现问题后的恢复。而一旦服务器本身出现问题,不论是设备的硬件问题还是软件系统的问题,都会造成服务的中断。因此,RAID及数据备份技术不能避免服务中断出现,对于需要持续可靠地提供应用服务的系统,双机还是非常必要的。数据备份是保障数据安全性的必不可少的措施。因为不论RAID还是双机,都是一种实时的备份。任何软件错误、病毒影响、误操作等等,都会同步地在多份数据中发生影响。因此,对于关键业务即使采用了双机方案也还是一定要进行数据的备份,以便能在数据损坏、丢失时进行恢复。 如何选择与实施双机热备的配置方案?
以应用为主导,以高可用性为宗旨,分析需求的必要性; 2. 选择确定具体的设备、软件的型号等。需要注意的是: 不同的软件或是硬盘等存储设备,他们之间存在兼容性的问题,因此在购买之前应咨询专业人员,避免出现采购了双机软件后对相关的存储设备存在不兼容等现象。 3.在实施完成后,一定要进行测试,以确保工作正常,而且应注意在运行过程中定期的对系统是否能够正常切换进行测试。 集群的概念
集群是oracle高可用性产品设计的核心,使得oracle在出现问题时可以从一个节点切换到另外一个节点。RAC采用了共享磁盘类型的集群,允许所有群集中节点同时访问数据。任何时刻都有一组数据文件可以供所有节点访问。RAC的最终目标是提供高度的可管理性,和同单个计算机上运行单个oracle数据库实例。Oracle能自动在集群的多个节点之间平衡负载。
双机热备方案与集群的区别?
答:从概念上来讲,双机热备属于集群中的一种。集群一般包括两类:一类是纯应用服务器的集群,即各个应用服务器都访问统一的数据库服务器,但彼些并不需要文件共享存储等,这种集群是比较简单的。另一类是数据库服务器的双机热备,这种双机热备实现,一般是两台服务器同时使用共享的存储设备,并且在普遍的情况下,均采取主、备的方式(也有高端的系统采用并行的方式,即两台服务器同时提供服务)。 常见问题与方案选择
对于企业重要的应用系统而言,保证系统能持续、可靠地提供服务是非常重要的,因此就出现了对高可用性的需求和高可用性的解决方案。
双机热备与数据备份的关系
一些用户在规划双机热备或双机备份时,会有这样的问题:我已经有了RAID,以及磁带备份,还有必须做双机吗?或者,如果我做了双机备份,还有必要做磁带备份吗?
应该说RAID和数据备份都是很重要的。但是,RAID技术只能解决硬盘的问题,备份只能解决系统出现问题后的恢复。而一旦服务器本身出现问题,不论是设备的硬件问题还是软件系统的问题,都会造成服务的中断。因此,RAID及数据备份技术不能解决避免服务中断的问题。对于需要持续可靠地提供应用服务的系统,双机还是非常重要的。只要想一想,如果你的服务器坏了,你要用多少时间将其恢复到能正常工作,你的用户能容忍多长的恢复时间就能理解双机的重要性了。
从另外一个方面,RAID以及磁带备份也是非常需要的。对于RAID而言,可以以很低的成本大大提高系统的可靠性,而且其复杂程度远远低于双机。因为毕竟硬盘是系统中机械操作最频繁、易损率最高的部件,如果采用RAID,就可以使出现故障的系统很容易修复,也减少服务器停机进行切换的次数。
数据备份更是必不可少的措施。因为不论RAID还是双机,都是一种实时的备份。任何软件错误、病毒影响、误操作等等,都会同步地在多份数据中发生影响。因此,一定要进行数据的备份(不论采取什么介质,都建议用户至少要有一份脱机的备份),以便能在数据损坏、丢失时进行恢复。
双机热备、双机互备与双机双工的区别
双机热备即是目前通常所说的active/standby方式,服务器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备。当 active服务器出现故障的时候,通过软件诊测(一般是通过心跳诊断)将standby机器激活,保证应用在短时间内完全恢复正常使用。 双机互备,在双机热备的基础上,两个相对独立的应用在两台机器同时运行,但彼此均设为备机,当某一台服务器出现故障时,另一台服务器可以在短时间内将故障服务器的应用接管过来,从而保证了应用的持续性。这种方式实际上是双机热备的一种应用。它避免了两个应用使用四台服务器分别实现双机热备。
双机双工,两台或多台服务器均为活动,同时运行相同的应用,保证整体的性能,也实现了负载均衡和互为备份。需要利用磁盘柜存储技术(最好采用san)。对于数据库服务而言,它同时需要数据库软件的支持,是比较复杂的。而WEB服务器或应用服务器就比较简单了,可参见:谈Web服务器和应用服务器的负载均衡。 双机软件与集群软件的异同
在双机热备应用方面,有两大类软件产品。一类是双机软件(HA),另一类则称作集群软件(Cluster)。这两类软件的异同在什么地方呢?
它们都是为实现系统的高可用性服务的,都解决了一台服务器出现故障时,由其他服务器接管应用,从而持续可靠地提供服务的问题。 它们都是通过心跳技术在进行系统检测
但是,双机软件只能支持两台服务器以主从方式或互备方式工作。而集群软件除了支持双机工作外,还可以支持多台服务器(Multi Node)工作,同时部署多个应用,并在多个服务器间灵活地设置接管策略。
在两种情况下需要使用集群软件:一是有超过两个应用,本身就需要部署三台或更多的服务器。二是只有两个应用,但每个应用的负载均较大,不宜采用双机互备的方式,而是需要由第三台服务器来作为这两个应用的备机。
一般地讲,集群软件具有更多的技术含量,具备更高的可靠性。同时,往往价格(平均到每台服务器)也高于双机软件。
在选择产品时,应根据应用的实际情况来确定。最理想的方式,则是在应用数量少、负载不是很大时先使用双机软件,然后在应用数量增多、负载增大时平滑过渡到集群软件。
讨论关于双机热备、集群软件选择的基本方法
一、双机、集群软件选择的基本方法
先处理可选项少的情况,再处理可选项多的情况,这样便于快速对号入座。 1、SCO UNIX:只有LanderCluster支持
2、Windows + SQL Server:需要考虑并行、负载均衡、实时切换等问题:只有ICX支持。 3、无磁盘阵列柜的情况:从性价比、可靠性等方面考虑,LanderCluster具有明显优势。 4、已经购买磁盘阵列柜:采取主/备方式(一台工作另一台不工作)。 5、Windows/Linux,已经购买了磁盘阵列柜: IBM EXP系列磁盘阵列,
- Windows 目前能可靠支持的是LanderCluster,- Linux目前能可靠支持的是NEC Express Cluster。 6、 Windows/Linux,无磁盘阵列柜(即纯软件方式):Windows + SQL Server:从性价比、可靠性等方面考虑,ICX具有明显优势。 7、其他磁盘阵列柜:
1)多台服务器 可供选择的包括:LanderCluster, NEC ExpressCluster, LifeKeeper其中LanderCluster和NEC ExpressCluster支持远程监控,具有良好的本地支持,LanderCluster的性价比有明显优势,NEC则因与纯软件方式价格无差别;
2)当前两台,以后可能升到多服务器,多数据库,多平台集群,SAN及Iscsi环境:LanderCluster具有明显优势;
3)仅两台服务器:几乎所有产品均可支持;
4)数据库小于50G:从无柜纯软方面考虑,NEC ExpressCluster是主要的选择;
二、数据库双机热备方式
数据库双机热备有两种典型的方式,一种是比较标准的,两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网SAN),并且安装双机软件,实现双机热备,称为共享方式。另一种方式是通过纯软件的方式,一般称为纯软件方式或镜像方式(Mirror)。
对于共享方式,数据库放在共享的存储设备上。当一台服务器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台服务器也同样读取该存储设备上的数据。
对于纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。
三、纯软件方式优点
1、避免了磁盘阵列的单点故障:对于双机热备,本身即是防范由于单个设备的故障导致服务中断,但磁盘阵列恰恰又形成了一个新的单点。(比如,服务器的可靠系数是99.9%, 磁盘阵列的可靠系数是99.95%,则纯软双机的可靠系数是1-99.9%x99.9%=99.99%,而基于磁盘阵列的双机热备系统的可靠系数则会是略低于99.95%
2、节约投资:不需购买昂贵的磁盘阵列。
3、不受距离的限制:两台服务器不需受SCSI电缆的长度限制(光纤通道的磁盘阵列也不受距离限制,但投资会大得多)。这样,可以更灵活地部署服务器,包括通过物理位置的距离来提高安全性。
纯软件方式以前应用得较少,一方面是由于当时市场上比较流行的双机软件不支持纯软件方式,另一方面是由于少数支持纯软件方式的产品其可靠性不太令人放心。但随着NEC,LanderSoft这样的大牌厂商的产品进入市场,应该说纯软件方式将逐渐成为一种方向。
从方案选择的角度,建议在进行双机热备时,如果投资充裕、数据量大(1T以上),可以采用共享的存储设备(如磁盘阵列)的方式,但应尽量选择高可靠性(如著名品牌的)设备,并且考虑选择双控制器的方案。否则,则更好的选择是纯软件方式。当然,这时就一定要选择成熟的、大厂商的经过考验的产品。 四、双机热备、集群软件产品选择
1、明确应用的方式与要求:
是双机方式还是多点集群?或者是目前使用双机、以后可能升级到集群? 如果是双机,是采用共享的存储设备,还是采用基于镜像的纯软件方式?
2、了解清楚应用环境: 使用什么操作系统?
运行什么应用(比如,数据库的版本)? 使用什么服务器? 使用什么存储设备?
如果考虑纯软件方式,则还有了解清楚。数据量的大小、数据写入的频率、应用的关键性与重要性(相关内容:纯软件方式的双机热备方案深入分析 ) 。
3、在此基础上,考虑以下因素,选择相应的软件产品:
产品是否能支持所要求的应用方式? 产品是否能支持所使用的应用环境?
产品的其他特性:是否支持远程监控(可以使你不用非要经常跑到机房,才知道是否一台服务器宕机了)?界面语言(对双机软件,中文界面并不是非常重要,但也是一个因素。同时,是否有中文手册等则可能非常重要)。安装的难易程度。
4、常见产品:
1)LanderCluster集群软件:支持多点集群及双机,远程监控,支持Unix,支持ISCSI,支持多数据库;
2)NEC ExpressCluster集群软件:支持纯软件方式(镜像),多点集群及双机,远程监控;
3)LifeKeeper集群软件:支持多点集群及双机;
4)RoseHA双机软件:双机热备、互备;
五、双机、集群软件差别
在双机热备应用方面,有两大类软件产品。一类是双机软件(HA),另一类则称作集群软件(Cluster),这两类软件是有差异的。
它们都是为实现系统的高可用性服务的,都解决了一台服务器出现故障时,由其他服务器接管应用,从而持续可靠地提供服务的问题
它们都是通过心跳技术在进行系统检测。
但是,双机软件只能支持两台服务器以主从方式或互备方式工作。而集群软件除了支持双机工作外,还可以支持多台服务器(Multi Node)工作,同时部署多个应用,并在多个服务器间灵活地设置接管策略。 在两种情况下需要使用集群软件:一是有超过两个应用,本身就需要部署三台或更多的服务器。二是只有两个应用,但每个应用的负载均较大,不宜采用双机互备的方式,而是需要由第三台服务器来作为这两个应用的备机。
一般地讲,集群软件具有更多的技术含量,具备更高的可靠性。同时,往往价格(平均到每台服务器)也高于双机软件。
在选择产品时,应根据应用的实际情况来确定。最理想的方式,则是在应用数量少、负载不是很大时先使用双机软件,然后在应用数量增多、负载增大时平滑过渡到集群软件。
评论
查看更多