磁盘阵列 和 双机热备(二)

来源:互联网 发布:苹果怎么卸载软件 编辑:程序博客网 时间:2024/05/02 18:51
 

双机热备这一概念包括了广义与狭义两种意义。
 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服务。当一台服务器出现故障时,可以由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续提供服务。
 双机热备由备用的服务器解决了在主服务器故障时服务不中断的问题。但在实际应用中,可能会出现多台服务器的情况,即服务器集群。
 双机热备一般情况下需要有共享的存储设备。但某些情况下也可以使用两台独立的服务器。
 实现双机热备,需要通过专业的集群软件或双机软件。
 从狭义上讲,双机热备特指基于active/standby方式的服务器热备。服务器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备。在同一时间内只有一台服务器运行。当其中运行着的一台服务器出现故障无法启动时,另一台备份服务器会通过软件诊测(一般是通过心跳诊断)将standby机器激活,保证应用在短时间内完全恢复正常使用。
-------------------------------------------------------------------------------------------
双机热备的实现模式 - 基于共享存储与纯软件方式
 双机热备有两种实现模式,一种是基于共享的存储设备的方式,另一种是没有共享的存储设备的方式,一般称为纯软件方式。
 基于存储共享的双机热备是双机热备的最标准方案
 对于这种方式,采用两台(或多台)服务器,使用共享的存储设备(磁盘阵列柜或存储区域网SAN)。两台服务器可以采用互备、主从、并行等不同的方式。在工作过程中,两台服务器将以一个虚拟的IP地址对外提供服务,依工作方式的不同,将服务请求发送给其中一台服务器承担。同时,服务器通过心跳线(目前往往采用建立私有网络的方式)侦测另一台服务器的工作状况。当一台服务器出现故障时,另一台服务器根据心跳侦测的情况做出判断,并进行切换,接管服务。对于用户而言,这一过程是全自动的,在很短时间内完成,从而对业务不会造成影响。由于使用共享的存储设备,因此两台服务器使用的实际上是一样的数据,由双机或集群软件对其进行管理。
 
 对于纯软件的方式,则是通过支持镜像的双机软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。
 对于这种方式的深入分析,请参见:纯软件方式的双机热备方案深入分析
 纯软件方式还有另外一种情况,即服务器只是提供应用服务,而并不保存数据(比如只进行某些计算,做为应用服务器使用)。这种情况下同样也不需要使用共享的存储设备,而可以直接使用双机或集群软件即可。但这种情况其实与镜像无关,只不过是标准的双机热备的一种小的变化。

-------------------------------------------------------------------------------------------
本文将对双机热备的纯软件方式进行深入分析。
 数据库双机热备有两种典型的方式,一种是比较标准的,两台服务器通过一个共享的存储设备(一般是共享的磁盘阵列或存储区域网SAN),并且安装双机软件,实现双机热备,称为共享方式。另一种方式是通过纯软件的方式,一般称为纯软件方式或镜像方式(Mirror)。
 对于共享方式,数据库放在共享的存储设备上。当一台服务器提供服务时,直接在存储设备上进行读写。而当系统切换后,另一台服务器也同样读取该存储设备上的数据。
 对于纯软件的方式,通过镜像软件,将数据可以实时复制到另一台服务器上,这样同样的数据就在两台服务器上各存在一份,如果一台服务器出现故障,可以及时切换到另一台服务器。
 纯软件方式有三大优点:
 1.避免了磁盘阵列的单点故障:对于双机热备,本身即是防范由于单个设备的故障导致服务中断,但磁盘阵列恰恰又形成了一个新的单点。(比如,服务器的可靠系数是99.9%, 磁盘阵列的可靠系数是99.95%,则纯软双机的可靠系数是1-99.9%x99.9%=99.99%,而基于磁盘阵列的双机热备系统的可靠系数则会是略低于99.95%
 2.节约投资:不需购买昂贵的磁盘阵列。
 3.不受距离的限制:两台服务器不需受SCSI电缆的长度限制(光纤通道的磁盘阵列也不受距离限制,但投资会大得多)。这样,可以更灵活地部署服务器,包括通过物理位置的距离来提高安全性。
 纯软件方式以前应用得较少,一方面是由于当时市场上比较流行的双机软件不支持纯软件方式,另一方面是由于少数支持纯软件方式的产品其可靠性不太令人放心。但随着NEC这样的大牌厂商的产品进入市场,应该说纯软件方式将逐渐成为一种方向。
 从方案选择的角度,建议在进行双机热备时,如果投资充裕、数据量大(1T以上),可以采用共享的存储设备(如磁盘阵列)的方式,但应尽量选择高可靠性(如著名品牌的)设备,并且考虑选择双控制器的方案。否则,则更好的选择是纯软件方式。当然,这时就一定要选择成熟的、大厂商的经过考验的产品。
------------------------------------------------------------------------------------------
双机热备针对的是服务器的故障。
 服务器的故障可能由各种原因引起,如设备故障、操作系统故障、软件系统故障等等。一般地讲,在技术人员在现场的情况下,恢复服务器正常可能需要10分钟、几小时甚至几天。从实际经验上看,除非是简单地重启服务器(可能隐患仍然存在),否则往往需要几个小时以上。而如果技术人员不在现场,则恢复服务的时间就更长了。
 而对于一些重要系统而言,用户是很难忍受这样长时间的服务中断的。因此,就需要通过双机热备,来避免长时间的服务中断,保证系统长期、可靠的服务。
 决定是否使用双机热备,正确的方法是要分析一下系统的重要性以及对服务中断的容忍程度,以此决定是否使用双机热备。即,你的用户能容忍多长时间恢复服务,如果服务不能恢复会造成多大的影响。
 在考虑双机热备时,需要注意,一般意义上的双机热备都会有一个切换过程,这个切换过程可能是一分钟左右。在切换过程中,服务是有可能短时间中断的。但是,当切换完成后,服务将正常恢复。因此,双机热备不是无缝、不中断的,但它能够保证在出现系统故障时,能够很快恢复正常的服务,业务不致受到影响。而如果没有双机热备,则一旦出现服务器故障,可能会出现几个小时的服务中断,对业务的影响就可能会很严重。
 另有一点需要强调,即服务器的故障与交换机、存储设备的故障不同,其概念要高得多。原因在于服务器是比交换机、存储设备复杂得多的设备,同时也是既包括硬件、也包括操作系统、应用软件系统的复杂系统。不仅设备故障可能引起服务中断,而且软件方面的问题也可能导致服务器不能正常工作。
 还应指出的是,一些其他的防护措施如磁盘阵列(RAID)、数据备份虽然是非常重要的,但却不能代替双机热备的作用。
-------------------------------------------------------------------------------------------
双机热备与数据备份的关系
 一些用户在规划双机热备或双机备份时,会有这样的问题:我已经有了RAID,以及磁带备份,还有必须做双机吗?或者,如果我做了双机备份,还有必要做磁带备份吗?
 应该说RAID和数据备份都是很重要的。但是,RAID技术只能解决硬盘的问题,备份只能解决系统出现问题后的恢复。而一旦服务器本身出现问题,不论是设备的硬件问题还是软件系统的问题,都会造成服务的中断。因此,RAID及数据备份技术不能解决避免服务中断的问题。对于需要持续可靠地提供应用服务的系统,双机还是非常重要的。只要想一想,如果你的服务器坏了,你要用多少时间将其恢复到能正常工作,你的用户能容忍多长的恢复时间就能理解双机的重要性了。
 从另外一个方面,RAID以及磁带备份也是非常需要的。对于RAID而言,可以以很低的成本大大提高系统的可靠性,而且其复杂程度远远低于双机。因为毕竟硬盘是系统中机械操作最频繁、易损率最高的部件,如果采用RAID,就可以使出现故障的系统很容易修复,也减少服务器停机进行切换的次数。
 数据备份更是必不可少的措施。因为不论RAID还是双机,都是一种实时的备份。任何软件错误、病毒影响、误操作等等,都会同步地在多份数据中发生影响。因此,一定要进行数据的备份(不论采取什么介质,都建议用户至少要有一份脱机的备份),以便能在数据损坏、丢失时进行恢复。


-------------------------------------------------------------------------------------------
双机热备、双机互备与双机双工的区别
 双机热备即是目前通常所说的active/standby方式,服务器数据包括数据库数据同时往两台或多台服务器写,或者使用一个共享的存储设备。当active服务器出现故障的时候,通过软件诊测(一般是通过心跳诊断)将standby机器激活,保证应用在短时间内完全恢复正常使用。
 双机互备,在双机热备的基础上,两个相对独立的应用在两台机器同时运行,但彼此均设为备机,当某一台服务器出现故障时,另一台服务器可以在短时间内将故障服务器的应用接管过来,从而保证了应用的持续性。这种方式实际上是双机热备的一种应用。它避免了两个应用使用四台服务器分别实现双机热备。
 双机双工,两台或多台服务器均为活动,同时运行相同的应用,保证整体的性能,也实现了负载均衡和互为备份。需要利用磁盘柜存储技术(最好采用san)。对于数据库服务而言,它同时需要数据库软件的支持,是比较复杂的。而WEB服务器或应用服务器就比较简单了


-------------------------------------------------------------------------------------------
Web服务器和应用服务器的负载均衡
 本文对Web服务器和应用服务器的负载均衡进行说明。
 在负载均衡的思路下,多台服务器为对称方式,每台服务器都具有同等的地位,可以单独对外提供服务而无须其他服务器的辅助。通过负载分担技术,将外部发送来的请求按一定规则分配到对称结构中的某一台服务器上,而接收到请求的服务器都独立回应客户机的请求。
 提供服务的一组服务器组成了一个应用服务器集群(cluster),并对外提供一个统一的地址。当一个服务请求被发至该集群时,根据一定规则选择一台服务器,并将服务转定向给该服务器承担,即将负载进行均衡分摊。
 通过应用负载均衡技术,使应用服务超过了一台服务器只能为有限用户提供服务的限制,可以利用多台服务器同时为大量用户提供服务。当某台服务器出现故障时,负载均衡服务器会自动进行检测并停止将服务请求分发至该服务器,而由其他工作正常的服务器继续提供服务,从而保证了服务的可靠性。
 上述的集群技术一般都用于Web服务器、应用服务器等,而不是用于数据库服务器,即不是用于有共享的存储的服务。数据库服务器将涉及到加锁、回滚等一系列问题,要复杂的多。一般数据库服务器只是使用双机,其中一台工作,另一台备份。数据库的双机并行只用于大型数据库中。可参见:
系统高可用性与双机备份常见问题与方案选择
 负载均衡实现的方法有几种:
最简单的是通过DNS,但只能实现简单的轮流分配,也不能处理故障
如果是基于MS IIS,Windows 2003 Server本身就带了负载均衡服务。但这一服务也只是轮流分配。
硬件方式,通过交换机的功能或专门的负载均衡设备可以实现。对于流量的分配可以有多种方式,但基本上都是应用无关的,与服务器的实际负载关系也不大。另外,设备的价格较贵(优点是能支持很多台服务器)。这种方式往往适合大流量、简单应用。
软件方式,通过一台负载均衡服务器进行,上面安装软件。这种方式比较灵活,成本相对也较低。另外一个很大的优点就是可以根据应用的情况和服务器的情况采取一些策略。这方面比较典型的软件产品,是富士通西门子公司的PCL SIS负载均衡软件。


如何建立双机热备系统
笔者是一名医院的网管,而医院的软件系统要求能够做到一周7×24小时工作,对于整个系统的核心服务器来说如果死机后果是灾难性的。所以采用网络服务器容错技术来保障计算机系统的可靠性是件大事!我们采用的是双机热备技术!相对于其它更高成本的容错技术来说,这是最经济且卓有成效的技术。
  硬件准备
  1.安装前检查
  服务器0102两台(面板有标示),阵列柜1台,双机互联线1(蓝色),阵列柜电源线2根,服务器电源线2根,SCSI数据连接线2根。
  2.阵列柜安装事项
  先连接SCSI数据线,一头接阵列柜后方数据接口,一头接服务器上方非集成接口(服务器接口有两个,一个是主板集成,一个是非集成,非集成的在服务器背部上方),再分别将电源线两根接阵列柜后方风扇口一侧,扣好搭扣。
  3.网卡连接注意事项
  蓝色网线是双机互联用的,一头插在01服务器非集成网卡上(位置在服务器背部上方),另一头插在02服务器上(位置同上)。业务用的网线一头插在服务器集成网卡上(位置在服务器中下方,两台都一样),另外一头插在交换机上,0102都是这样安装,安装后效果如图1
[img]file:///D:/
技术资料/数据存储/如何建立双机热备系统--huangshan[爱踢博客][chinaitlab_com].files/yx3u2u657xu3.jpg[/img]
1
  4.开机顺序
  先开阵列柜,直到看到上面出现英文提示“Startup Completed”后再开服务器01,直到出现登录窗口再开服务器02,到服务器02出现登录窗口后,双机开机过程结束。
  关机:先关服务器02,直到电源完全关闭。再关服务器01,直到电源完全关闭,最后按阵列柜电源开关,则阵列柜关闭。
  切记:
  1.不能双机同时读写文件到阵列柜相同分区,否则可能会造成文件或分区损坏。
  2.先保证服务器关机后方可关闭阵列柜,不然会造成阵列柜内数据丢失。
  3.一定要配置UPS,严防停电事故发生。
  小知识 什么是双机容错?
  双机容错是通过双机容错软件在两台服务器之间建立一种容错机制,当其中一台服务器出现故障而不能胜任工作时,自动切换到另一台服务器。客户端不知道也不用知道目前是由哪一个服务器在做相应的工作。由于医院的软件是基于Windows 2000 Server+SQL实现的,所以双机容错系统的处理核心是通过互相监控的NT服务程序来实现的,双机容错系统是完全独立于NT的应用软件和硬件设备。
  软件使用
  双机容错的核心是双机热备软件通过互相监控来实现热备的效果。我们采用的软件是美国ROSE数据公司的ROSE HAROSE HA可及时地进行错误隔绝、恢复,保证服务器在出现意外及有计划的停机情况下均能为客户提供连续有效的服务。将ROSE HA软件同时安装在两台服务器上,用于监视系统的状态,协调两台服务器的工作,维护系统的可用性。
  将软件分别安装在0102服务器上,并输入正确的授权号。它的安装很简单,一路“Next”即可,安装完成后请注意,要将它的服务改为随系统启动。
  注意:双机热备要求双机须超级用户密码相同,因此超级用户密码为都为123
  服务器01为主机,服务器02为从机,当01出现中断或意外不能工作时,双机热备软件会自动切换到另一台服务器即02,直到服务器01恢复,软件会自动切换回01机。
  1.状态显示说明
  主界面中,两台PC机呈亮色,表示双机开启,中间绿线表示双机心路线(即蓝色网线)通讯正常,红色表示线路有故障或双机中有一台无响应!双机中屏幕有ZZZ标示的为从机,屏幕中有图标的是主机(2)。主机工作时能看到阵列柜分区,即GH盘。从机不能看到这两个分区。
[img]file:///D:/
技术资料/数据存储/如何建立双机热备系统--huangshan[爱踢博客][chinaitlab_com].files/unl91n56qqtn.jpg[/img]
2
  2.资源界面说明
  图3所示server01(01)server02(02)两边现在已经建立好了相应的同步资源,它们是IP地址、服务器名、NT服务、共享文件和磁盘卷。现在分别列出相关信息:资源工作状况说明,呈现亮色的为主机资源,绿色的为从机资源,黄色惊叹号的表示该资源有异常(如主机死机,从机就会显示此信息)。灰色表示资源刚建立但未激活。原则上两边的资源名称和数量是相同的,阵列柜资源必须全部包含在内。
[img]file:///D:/
技术资料/数据存储/如何建立双机热备系统--huangshan[爱踢博客][chinaitlab_com].files/0o0ozz6342o3.jpg[/img]
3
  其中server表示虚拟服务器,它是由双机热备软件自动产生的PC机。
  server的特性基本与主机相同,如输入\\server\c$,可以访问的是server01C盘,但它使用自己的IP地址,共享目录也是自己的,如\\server\test能够访问的前提是server01server02都创建了test目录共享,且两个共享是指向同一个目录,如G:\test,而不能建立在各自的独有盘符中,要建立在公用盘符(一般是阵列柜)上。当双机的共享都建立成功后,再使用双机软件创建一个虚拟共享资源如\\server\test即可。
  开设用户名为管理用账号“toway”,密码“toway”,如果新账号要求在server01中进行,它是主域控制器。数据库用户名system / twsa2004_comein. (注意后面有小数点)
  出现意外时的处理方法
  1.双机配置时
  双机热备程序已经备份了注册表文件,分别对应在各自机器的 administrator\我的文档中文件名为01.reg02.reg,恢复时先停止双机服务,步骤为:进双机软件,点击快捷菜单中的红色图标,依次点ToolsRestore cluster configur01tion,选中相应的备份文件即可。
  2.资源丢失,如阵列柜盘符消失
  先停止双机服务,再分别在双机中使用磁盘管理器加入相应盘符,保证双机盘符相同再重启双机服务,点击失效的资源(一般呈灰色),右键选择“bring in cluster”,稍后即会恢复正常。
  3.切换服务器的主从顺序
  点击需要停止机器名,进入菜单选择resourceserver f01ilover
  4.意外停电事故的处理
  如果遇到意外停电事故,可能会产生阵列柜分区丢失,双机不能正常工作的情况。请按下面的方式处理:
  1)先停止双机服务。
  2)使用磁盘管理器加入相应盘符,看此时是哪个盘符丢失,直接点击盘符在右键菜单中选择更改驱动器名和路径,分配原来正确的路径即可。
  3)重启服务器01,在我的电脑中查看阵列柜盘符是否已经出现,里面的内容是否还有。由于相关的备份内容已经全部拷贝到01机的EF盘中,主要是mssqlservertoway3个关键目录。如果损坏严重,可以用备份进行拷贝来恢复。不过最好是重启后仔细观察,不要轻易进行拷贝恢复,因为可能会丢失一些数据!
  一般来说,G盘存放mssql(SQL安装路径)server(程序共享路径)towayhis(数据库日志)等文件夹,H盘放数据库的目录和towayhis (数据库文件)文件夹。
  重启服务器01后,将服务器02也重启一遍,查看阵列柜分区是否正常。
  4)如果一切正常就可以启动双机程序,把服务恢复。检查资源窗口中的状态是否正常,如果呈现灰色,一般是阵列柜的盘符,可以手工启动它,启动方法是右键点击盘符选择“bring in”即可。
  提示:双机程序可以手工切换指定谁为主机,默认是01,如果想改为02,在资源界面中选中01机,再点击快捷菜单中“?”左边的第一个按钮即可。切换后原来的01机资源呈现绿色
02机资源呈现亮色,即表示切换成功!

原创粉丝点击