高可用性报告_第1页
高可用性报告_第2页
高可用性报告_第3页
高可用性报告_第4页
高可用性报告_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、高可用报告1、三个概念失效(fault):指设备或程序自身固有缺陷导致的瞬间或永久性的功能失常。错误(error):由失效导致的系统内部不正确行为。错误可以被发现并进行纠正。故障(failure):指由于出现错误导致了系统产生了不正确的结果。失效 5错误 匚二, 故障2、平均故障发生时间MTTF ( Mean Time To Failure )MTTF是一个统计上可测量的参数MTTF丰寿命MTTF= 1 /稳态运行期间的故障发生率N台机器T时间内故障数:E = (N X T)/ MTTF平均无故障时间(MTBF)平均修复时间(MTTR)可靠性:系统连续提供服务的能力,MTTF: Mean Ti

2、me To Failure可维护性:修复故障使系统恢复正常的能力,MTTR: Mean Time To Repair4、可用性(Availability)可用性=MTTF / (MTTF + MTTR)例:MTTF=5000小时,MTTR=1天,则可用性为:5000/(5000+24) = 99.52%5、提高可用性的途径提高MTTF降低MTTR:、硬件高可用1、(一) Cluster中硬件HA的目标问题的起源:单点故障问题及其应对策略单点故障:某些硬件或软件部件,它们的故障会导致整个系统的崩溃。6机群系统可能出现的单点故障有:处理器或节点存储程序或数据的磁盘适配器、控制器和连接节点到磁盘的电

3、缆用户访问机群节点的网络。应用程序应对策略:通过系统地消除那些单点故障来尽可能使更多的故障成为部分故障。6解决机群中的单点故障问题:解决大多数的单点故障问题并不需要使用任何分层软件产品。计算从任何特殊错误中恢复所需人工干涉的总时间和精力。然后再考虑系统能否承受停机造成的损失,以及能否提供全天操作中必须的人工干预。对于机群设计者而言,这将有助于决定是使用人工干预来管理还是需要采取其它措施来满足高可用性的要求。节点故障在机群中,当一个节点提供的服务是关键性的话,那么当该节点失效时,机群中必须 有另外的节点来代替它的资源,向终端拥护提供相同的服务。包括以下步骤:1、在备用节点的网络适配器配置失效节点

4、的地址,或者提示用户(或改变客户端应用程序)使用一个替换的地址。2、在故障和备用节点之间引入和改变所有组的卷,并且装上所有需要的文件系统。3、修复存储在故障节点内部磁盘上的所有应用程序和数据。4、执行任何鉴定性的应用程序。假定后备节点在关键服务中还没有被网络访问。这样,每个节点需要额外的网络适配器,这个节点将被备份。如果用户通过串行连接访问失效节点,每个终端应该物理上重连接到后备节点的端口上。如果外部磁盘没有连接到失效节点和后备节点之间的通用总线上,则需要手工将他们从一个转换到另一个。所有关键数据被保存在外部磁盘上。如果最后的后备节点变为不可用,所有关键数据则被保存至节点的内部磁盘。磁盘和I/

5、O总线故障为了防止包括磁盘的外部 I/O通道中的任何部分出错,应该在两路I/O总线上将磁盘镜象或者使用从节点到存储子系统有双重路径的磁盘阵列系统。网络适配器故障为了防止网络适配器故障,每个提供关键服务的节点需要配置备用网络适配器。这个适配器连接到与用户正在访问的主适配器相同的网络主干上。如果网络适配器失效, 可以将备用适配器的地址改为失效适配器的地址。另外一种方法是始终有一个热备份的网络适配器可以随时替代出错适配器。 这种方法从故障中恢复的时间更短,因为系统安装备用适配器无需停机。网络故障如果用户正在和一个节点通信时网络主干停止工作,解决方案之一是人工地将所有机群节点和客户端机器切换到另外一个

6、主干上。即便有足够的时间和精力去这样做,还得保证没有松散的连接或网络设备(路由器、集线器或网桥)故障引起主干失效。另外一个解决方案是连接一个终端的子集到备用节点的串口上,这样还可以提供最小级别的服务。在这种情况下应用程序必须被设计成允许用户既可以通过网络连接到终端也可以通过串口连接到终 端。应用程序故障根据应用程序的设计,为监控应用程序使用的后台程序,并及时对状态改变作出反应, 应该使用AIX子系统资源控制器。2、人工干预的缺点根据上述的讨论,依据故障的不同类型。包括检测故障所花时间,很明显从任何机群故 障中人工恢复的时间为 30分钟到几个小时。这对许多应用在重要场合的机群来说已经是不 可容忍

7、的了。3、Cluster中硬件 HA的目标:因此,我们可以归纳出Cluster中硬件HA的目标应该是:1、尽可能消除单点故障部件。2、尽可能快地检测到故障并自动切换到备用部件,以便使系统的故障恢复时间尽可能地短。3、采取冗余、热备份等高可用策略尽可能消除或减小故障给系统带来的损失。4、使实现高可用的成本尽可能地低。5、对用户尽可能地透明。(二) 硬件 HA 实现层次(Node, Storage Connection在这一章里,我们将参照 HACMP4.1 for AIX 的情况,简述在HACMP/6000 3.1中为了 提高高可用性在硬件方面采取的措施。由于产品的更新换代实在是太快,有些内容肯

8、定已经过时了。以下分为三个部分进行描述:节点的配置与选择 外存储系统的选择 互连设备的选择A.节点的配置与选择IBM高可用机群的运行环境是被配置为无单故障点的RISC System/6000单处理器和对称多处理器服务器。它的具体配置完全取决于用户对于自己的应用环境和数据处理的要求。几乎所有型号的 RISC System/6000的服务器都可以加入高可用环境中,并且新的产品 不断地涌现。如何为机群配置选择节点选择系统的配件对一个机群来说很重要,而且对机群系统的考虑和单机系统的考虑是不同的。我们主要要考虑的方面有:处理器能力的要求应用环境的要求对需求增长的适应能力 I/O插槽的要求当为一个单一系统

9、环境选择一个处理器的时候,大家对这些肯定很熟悉。 然而在设计一个机群时就很不一样了,必须把机群作为一个整体来仔细地考虑需求。除了每个节点的正常负荷外,还要考虑到系统中其它节点对本节点的资源要求。必须考虑在发生故障的情况下, 正常工作的节点必须接管故障节点的工作负荷。例如,在一个由两个节点构成的机群中,应用程序运行在这两个节点上,需要有商业级的高安全性。这两个节点互为对方做备份,可以相互接管。如果一个节点需要提供对另外一 个节点上运行的应用程序的故障接管支持,那么它就需要拥有比单机运行时强大得多的性 能。本质上一个节点硬件配置的选择依赖于应用程序对高可用性的要求,不仅要考虑CPU的周期,而且还要

10、考虑主存和磁盘的大小。HACMP的软件大约需要15M的磁盘空间。在选择硬件时一个主要的考虑是I/O的扩展槽的个数。必须有足够的扩展槽容纳需要的元件来克服单故障点从而达到期望的可用性级别。正如单故障点那节提到的,一个单故障点的故障会导致某个服务对终端用户来说不可用。所消除的单故障点越多,那么能达到可用性级别就越高。典型地我们需要估计网络适配器和磁盘I/O适配器所占用的插槽的数量,必须提供至少两个网络适配器插槽以实现冗余。如果系统需要在一个时期绑定多个IP地址,那末还要配置更多的适配器。由于插槽的限制,最多可以在一个节点里配置7个备用适配器。如何为机群的共享存储空间提供足够多的插槽,也是插槽配置时

11、必须认真考虑的因素。如果打算使用磁盘镜像,那末应该在其它分离的总线上为额外的磁盘I/O适配器提供冗余插槽。以免得磁盘I/O适配器成为单故障点。由于系统对插槽数个数的限制,在2XX型号中无法采用足够的冗余硬件特性来构造出没有单故障点的机群。对于小的机群节点,也就是仅仅需要 1个网络适配器和 2个磁盘I/O适配器(支持磁盘镜像)的节点, 3XX型号可能是合适的。这个限制实质上使所有的插槽 都被适配器占用以便消除单故障点。这样就限制了节点功能以后的扩充,如增加图形卡、广域网支持、串行口等。用户可以选择可用性的级别。在已经估计到风险的情况下,仅有一个单故障点可能是能 忍受的。但是这显然会随具体情况的不

12、同而改变。节点配置指南这里非常好地定义了 RISC/6000系列产品的类别: 桌上型(desktop),桌边型(deskside) 和机架型(rack-mounted)。在HACMP高可用机群环境中每种型号都有其适当的应用环境。 下面的机群例子已经列出了RISC System/6000型号的范围并且定义为小节点,中节点和大节点。 小节点桌上型服务器(3XX)和紧凑型服务器(CXX)型号只适用于包含 2 3个节点的机群。超过 这个数量后,这些型号的机器对插槽的限制将会让网络和磁盘I/O出现单故障点。一个这样的典型机群支持一个服务网络和最多2串共享磁盘。磁盘镜像通过两条总线来实现,消除了磁盘I/O

13、适配器的单故障点。对这种类型的机群配置,在每个节点上需要两个网络适配器(服 务和备用)和两个磁盘 I/O适配器。如果所用网络是以太网并且是使用3XX型号的话,可以使用集成的以太网端口来做服务网络和备用网络接口。一个典型的桌面系统有4个插槽,这样,机箱里将只留下一个插槽给别的适配器了。例如,这种类型的配置可以适合一个用于报纸印刷的高可用性的图形工作站环境。对其它的环境来说,如果没有可预见的在应用程序和数据处理方面需求的增长,这个方案是高效且低成本的。紧凑型服务器系统仅仅有4个插槽而且没有集成的以太网络适配器。因此它的限制更大,所有的插槽都将被使用以满足高可用性要求,不能再添加其它的适配器了。在令

14、牌环网和FDDI网网络环境下,桌面型服务器与紧凑型的服务器在硬件配置上没有 区别。然而在以太网环境中桌面型服务器能利用集成的以太网接口,同样的接口在令牌环网和FDDI中就没有。冗余的令牌环网适配器必须占用一个插槽。 中节点一个典型的中节点支持几十到几百GB的共享存储空间和两个网络 (或3个网络接口)。桌边型单CPU服务器(5XX),特别是SMP服务器(JXX)非常适合少于 8个节点的 机群。当前在一个机群中最多支持 8个节点。单CPU服务器在它们的基本配置中有 7个空 闲插槽。SMP服务器有6个空闲插槽。结合J02总线扩展单元,这个数字可以增加到14个。 如果觉得小节点配置不能实现无单故障点的

15、话,那末桌边型服务器将是更好的选择。 它提供的插槽能满足更大的共享存储空间的要求,满足安装更多的网络适配器和其它服务的需求。随着RAID子系统和串行存储体系结构(SSA)存储容量的增加,系统所支持的插槽数 目的重要性开始下降。然而用户对网络性能或者可用性方面的需求可能需要机群支持多个物 理网络,那么就需要有多个网络适配器,再加上需要网络冗余和网络适配器冗余,那么就需要更多的插槽。 大节点大节点支持海量共享存储空间和多网络(或者网络接口)。海量的意思是指从几百GB到几十千GB。一个大节点可以支持 6个或更多的网络适配器。为了实现这个要求,需要很 多的I/O插槽。因为机架型系统有一对微通道总线,提

16、供了 15个可用的I/O插槽。它们能 满足大容量集群环境。比如,7013-J30 SMP就能提供很多的I/O插槽。机架型机器能安装 2个CPU并且支持抽屉式磁盘(支持磁盘热插拔),如7135型磁盘阵列,7134高容量磁盘存储系统和 9333串行磁盘存储系统。对于 CPU和磁盘采用不同的 电源供电,如果一个CPU掉电了,另外一个不受影响。 如果必要的话任何资源都能被接管。 这样的系统还可以使用不间断电源。对于非常大的能够支持海量共享存储空间的机群,其所有CPU都被固定在专用插座上,并能够支持多个 RAID、SSA或SCSI存储子系统。B.外存储系统的选择1、外存储系统方案3在规划高可用 AIX配

17、置时,很重要的一项要素是共享的外存储设备。RISC/6000系统对于采用何种外存储系统方案来实现高可用有着深入的考虑。目前,有三种方案:布i布 采用传统的SCSI技术,包括SCSI-2差分/快速/宽带 协议 ii 专磁盘阵歹U ( SCSI 总线 SCSI attached) iii 串行磁盘存储体系,包括 旧M 9333和SSA (Serial Storage Architecture串行存 储体系)具体采用哪一种 存储系统要综合许多因素一起来评估,例如适用性、功能、性能,以及 成本。本文中这一部分的内容就是描绘这些外存储方案,这些方案是如何具体实现高可用性 的,以及如何选择一种合适的方案。

18、 i 采用传统的SCSI技术7SCSI即小型计算机系统接口。是为 CD-ROM驱动器,音频设备及外接大容量存储设 备设计的标准接口。最初的SCSI标准被称为SCSI-1,大约在80年代初出现。SCSI-1提供有8根数据线在5MHZ的时钟频率下运行。数据传输率为5MB/S。它允许七个设备以菊花链的形式与主机相连。在1991年SCSI-2协议被制定出来。与 SCSI-1相比,SCSI-2最显著的改动在于其数据线的宽度增加到16位,最多可以同时支持 15个设备,同时它的时钟频率变为10MHZ。这样SCSI-2差分/快速/宽带 总线协议的最大数据传输率可以达到20或40MB/S。SCSI-1与SCSI

19、-2使用的是一种并行接口。其数据线可以是8位或者16, 32位。因为所有连接到 SCSI总线的设备共享其带宽,所以需要进行“仲裁”。经仲裁后赢得总线控制权的设备就成为“启动设备”,它可以向另一个设备发送命令(后者称为“目标设备” ),只 有当这两个设备在总线上的一次通讯完成以后,其它设备才能够使用总线。SCSI有两种信号传输机制:一种称为“单端方式”,另外一种称为“差分方式”。在“单端方式”中,每种信号只有一根信号线,该信号的电气属性由该信号信号线的电平与地线电平的差值决定;在“差分方式”中,每种信号都有“正”、“负”两根信号线,该信号的电气属性由该信号的“正”信号线电平与“负”信号线电平的差

20、值决定。在典型机群环境中,SCSI连接失效的主要原因来自信号噪声干扰。显然,从高可用性 的角度来讲,“差分方式”更为可取。“差分方式”更不容易受信号噪声的影响,而且可以大 大增加信号的传输距离,安装更为灵活。显然,SCSI技术适合用来构造小容量的存储系统。 i i 磁盘B$歹| RAID (SCSI 总线 SCSI attached) 8近年来,磁盘阵列的推广和普及十分迅速,对于数据及应用比较重要的场所,磁盘阵列成为外存储系统的首选。a、不同RAID结构对高可用性的支持根据磁盘阵列上数据和冗余信息的存放方式,磁盘阵列分成六个级别:RAID0 RAID5。在阵列的应用中,根据具体应用环境,人们又

21、设计出许多新的RAID结构:RAID0为不包含任何冗余信息的阵列,它支持数据分块和并行I/O。RAID1也称作镜像阵列,镜像技术是传统的存储系统容错技术。在镜像阵列中,磁盘分 成一组组镜像对,每个磁盘上的数据在成镜像的磁盘上保持着完全一样的备份。RAID1具有很高的可靠性,它可容忍多至N/2个磁盘的失效。缺点是代价昂贵,系统需要牺牲一半的I/O带宽和容量来获得较高的可靠性。RAID2把磁盘分为数据盘和校验盘。用户数据按位或按字节分散存放于数据盘上,校验 盘上存放相应的海明纠错码,这使冗余度从镜像盘的100%降至大约25-40%,同时系统能容忍的失效盘数也减少了。RAID3采用相对简单的校验码来

22、保证数据的完整性,校验盘数减至1,冗余度为1/N,数据以位交叉方式存放。当单盘失效时,可从剩余的磁盘和校验盘上读出相应单元的数据再 异或而得。如若要能容忍更多的磁盘失效,可采用多校验盘或采用更复杂的检纠码如 Reed-Solomon 码或 MDS。RAID4是一种块交叉奇偶校验冗余阵列,采用块交叉方式独立传送,在扇区一级进行数据交叉。它与 RAID3在结构上有相似之处,不过RAID4中数据是以块交叉形式分布在盘上。每块的大小称为一个分块单元。RAID4使用一个专用的冗余盘存放检验信息。存取速度不高。RAID5和RAID4类似,只是它的校验信息不再单独存放在一个磁盘上,而是均匀分布在 所有磁盘上

23、。构成阵列的磁盘不再有校验盘与数据盘之分。RAID5把校验盘分散存于阵列中,解决了 RAID4中校验盘是磁盘系统的瓶颈这一问题,并且很好地保证了阵列的负载平衡。RAID5结构同样支持多盘的并发读写,但RAID5对控制器的要求很高,控制器除了要具备快速传输能力外,还要有很强的计算能力。RAID6: RAID6是一种采用分块交叉技术及双磁盘驱动器容错的磁盘阵列。由于它有两 个磁盘驱动器用于存放检、纠错冗余代码,即使在双盘出错的情况下,仍能保证数据的完整性和有效性。因此,RAID6有很高的数据有效性和可靠性,特别适用于可靠性要求很高的领 域。RAID6中数据和校验信息分块交叉存储在RAID所有的磁盘

24、上,多个磁盘可同时读写,I/O传输率较高。RAID10实际上是RAID0+ RAID1。它采用分块和镜像技术,通过分块镜像集实现。采用 分块技术,多个磁盘可并行读写,磁盘I/O性能很高;采用镜像存储使得可靠性也成为所有磁盘阵列中最高的。由于集中了RAID0和RAID1的优点,RAID10的性能是所有 RAID类型中最好的。但代价较高。b、磁盘阵列主要是采用冗余策略为用户提供高可用特性。冗余数据:如上所述,如果由于某磁盘故障导致该盘上的数据不可用,那么在该磁盘的数据可以通过在其它磁盘里存放的校验数据进行在线重构,实现在线数据恢复。另外在其它磁盘里存放的校验数据还可以用来进行数据在线纠错,从而有效

25、地解决了系统可靠性问 题。冗余电源:绝大多数磁盘阵列都采用双电源或热备份电源,就算是主电源发生故障,磁盘阵列也不会掉电。冗余风扇:磁盘阵列都采用冗余风扇以防止发生风扇故障。在线维护:上面提过任一磁盘的数据可以通过在其它磁盘里存放的校验数据进行在线重 构。除此之外,磁盘阵列都支持冗余磁盘热备份、支持磁盘热插拔。机箱内还有多种传感器甚至专用插卡进行实时监测、报警等。性能:按照所配置的 RAID级别,磁盘阵列可以提供不同的数传率,但不管RAID级别如何,由于磁盘阵列支持多盘并行读写操作,磁盘阵列的带宽远远大于采用传统SCSI技术所能达到的带宽,从而大大拓宽了 I/O瓶颈。备份的RAID控制器:某些磁

26、盘阵列采用热备份控制器,如果主控制器发生故障,热备份 的RAID控制器能够自动替换主控制器。而旧M的某些RAID产品采用双控制器,一旦某控制器发生故障,另外一个控制器就能马上自动接管该故障控制器的负荷,从而大大提高了系统可靠性。磁盘阵列的流行也在于它的总拥有成本较低。一般情况下,磁盘阵列能够在一个机柜中支持大量磁盘,这样用户就算要增加上百GB的存储容量,通过增加磁盘就可以很方便地实现,而不必支付其它的硬件、软件费用。尽管磁盘镜像的办法也能靠简单备份实现数据高可用性,但磁盘阵列的效率要高得多,只需要有相对而言极少的校验数据就行,所以能高效率地利用磁盘空间。典型的磁盘阵列产品:以美国Mylex 公

27、司 的 DAC960SIB盘阵列 为例:5最多可以接35个SCSI磁盘;最大容量可达 16 TB;支持的RAID级别有:1, 3, 5,在RAID5配置下,冗余信息不超过总存储容量的 12.5%;支持磁盘热备份、支持磁盘热插拔,具有数据自动纠错和恢复功能;SCSI连接符合 Ultra SCSI协议,数传率为每通道 40 MB/sec ;冗余电源;冗余风扇;支持在线维护和在线阵列系统重配置,无需关电;采用双RAID控制器;c、磁盘阵列技术的新发展磁盘阵列技术仍然在不断发展,除了存储容量进一步加大之外,使用光纤传输数据越来 越流行,配置越来越灵活,很多磁盘产品支持自动配置,即根据用户数据存储的重要

28、级别, 磁盘空间利用率进行 RAID级别自动配置,同时远程维护等技术也越来越成熟。可以看出,RAID技术适合用来构造大、中容量的存储系统。 iii 串行磁盘存储体系结构,包括旧M 9333和 SSA ( Serial Storage Architecture串行存储结构)SSA彻底摆脱了 SCSI缺陷(总线竞争、总线仲裁)的束缚,是一种高性能、低成本的 串行接口,专门用来连接服务器、工作站、存储子系统和存储设备。SSA用两根信号线(收、发)就可以实现全双工通讯。用铜线进行传输时,使用差分信号模式,只要四根信号线就可实现。甚至可以用光纤来进行信号高速传输。SSA的特性如下:拓扑结构:SSA的拓扑

29、结构十分灵活,既可以连接成简单的串或者环,也可以连接成复 杂的交叉串形式。这样就允许用户按照各自对成本、性能、高可用性的要求进行连接。其 中,环形拓扑结构最符合高可用环境的要求。20MB/s Bandwidth图2 SSA系统的典型拓扑结构SSA的特性如下:拓扑结构:SSA的拓扑结构十分灵活,既可以连接成简单的串或者环,也可以连接成复 杂的交叉串形式。这样就允许用户按照各自对成本、性能、高可用性的要求进行连接。其 中,环形拓扑结构最符合高可用环境的要求。灵活配置:任何支持SSA的设备均可以作为 SSA节点,可以是服务器、工作站、磁盘、 插卡、也可以是开关。每个 SSA节点都支持多个独立的串行口

30、,典型的 SSA磁盘或插卡有 两个口,而SSA开关 可能有多达126个串口。SSA的两个串口间的连线距离最远可达20米,而如果改用光纤的话,这个距离可扩展为 2.5Km。SSA支持设备的热插拔和自动配置;支持自寻址,不要求地址开关。这样,SSA网络就能够以最低的开销,十分容易地实现在线扩展或重新配置。SSA节点通常支持多条替代路径,使得节点配置简便,加强了高可用性。并且串口也比并口更容易实现共享存储。图3显示了如何以高可用性为原则,在两个服务器节点之间配置共享SSA磁盘设备。该网络包含两个环, 外环连接服务器和控制器;内环连接控制器和磁盘。注意在这种双环结构中,每个设备都有替换路径。这意味着S

31、SA网络可容忍单个环路出现故障,如果一个连接失效,系统仍能保持互连,网络的整体运行不受影响,只是要损失一定的带宽。而如果有一 个设备失效,所有其它设备仍能被访问。性能:SSA环是全双工的,每一链路可同时以20MB /秒的速率双向传输信息。当处理器将读/写指令的比例平衡到各占50%时,环上的总带宽是 20MB/秒的四倍一达到 80MB/秒的最大值。不同的SSA链路能够独立地同时执行不同的操作。数据只在启动者与其目的设备之间 传输,而不是在整个环上流动。这叫作 空间复用”,意味着总线被复用,也使得 SSA彻底摆脱了 SCSI缺陷(总线竞争、总线仲裁)的束缚。图3 基于SSA的高可用服务器系统高可用

32、性和高可靠性:SSA可检测环中的断路并自动重新配置系统,恢复链路以保持通信,而这对用户都是透明的。这不仅可在发生意外断路时提供保护,而且使用户可以在线增添 或减少磁盘驱动器而不中止运行、不丢失数据。在SSA中,连接设备的电缆允许全双工的点对点通讯。这意味着从主机发出的信息可双向输送到环上的每一个设备。即使两个设备之间发生断路,信息仍可通过环路的分支传送 到环上的每一个设备。另外,SSA也支持RAID技术,可以将 SSA环中的SCSI磁盘配置成各种 RAID级别。这 样,就继承了 RAID技术的精华,进一步提高了高可用性和高可靠性。服务能力:SSA网络是由点到点连接组成,而不是象 SCSI总线那

33、样存在总线竞争、总线 仲裁。这使得故障容易诊断、容易被隔离。另外,每个SSA节点都能检测开路、短路故障,这也简化了故障的修复工作。不难看出,SSA技术适合用来构造大容量、高带宽的存储系统。2、外存储系统方案的选择在规划高可用机群的共享的外存储系统时,要综合许多因素一起来评估,最重要的四项因素是成本、高可用性、技术及性能。首先,我们得弄清楚自己所受的约束条件,弄清楚机群的用户在外存储方面最关心的是哪一类指标。显然,数据的高可用性对于高可用机群是最重要的特性,这样,我们就必须要采用冗余技术来保障数据的高可用性。另外,还要预留足够的资源支持系统的发展。总之,要紧密结合应用环境才能选择出一个合适的高可

34、用机群外存储系统方案。C.互连设备的选择机群中的各个节点通过网络实现互连,因此网络是机群的生命线。网络还是检测失效、 对共享存储空间并发访问的通道。下面,我们将讨论支持高可用机群的不同类型的网络,以及在为机群配置网络时所必须考虑的各项因素。应用于机群的网络可以分为两类:TCP/IP 网络非TCP/IP网络:指的是节点间点到点的连接,如串行 RS232和SCSI总线。TCP/IP网络在高可用机群中TCP/IP网络既被用做公共网络又被用作私有网络。公共网络用于把机 群的节点与客户机联结在一起。私有网络仅仅用于机群节点之间,用于每个节点上的机群锁管理器(Cluster Lock Manager)的通

35、信。不同的 TCP/IP网络介质有不同的特性,必须针对 用户的需求来选择。TCP/IP 网络技术有几种网络技术在市场上比较流行,实现这些技术的厂家有旧M和其它公司。下面我们列出3种在高可用机群上最通用的网络:以太网令牌环网FDDI 网对于运行在一个工作组上的具有个性化应用程序来说,以太网提供了足够的带宽。随着工作组的规模增加,冲突域变大,结果使得网络通讯变得效率很低。但是采用把工作组分段从而减小冲突域的方法可以在某种程度上使问题得到缓解。令牌环由于它的存取方式和它的高带宽, 即使在重负荷下也能达到预设的性能指标。 令 牌环网在传输介质或网络适配器出故障时都能自动地恢复,并能隔离失效域的软错误,

36、从而在物理层提供了高级管理。令牌环的费用要比以太网高。FDDI网络提供了 100Mbps的传输速率到桌面并且在重负荷下也能达到预设的性能指 标。如果采用双环的结构可靠性就更高了。当然它的代价也是最高的。以太网10 Mbps共享式 半双工CSMA/CD 协议非屏蔽双绞线、 屏蔽双绞线、 同轴电缆、光纤、令牌环16/4M共享式 半双工令牌8级访问优先级 重负载时共享带宽非屏蔽双绞线、 屏蔽双绞线、 光纤FDDI100 Mbps令牌非屏敝双纹线(5)、共享式 半双工访问优先级重负载时共享带宽屏敝双纹线、光纤表:TCP/IP网络的类型和及属性IBM网络适配器:用于RS/6000的以太网适配器Ether

37、net High-Performance LAN Adapter(feature code 2980)用于RS/6000的令牌环网络适配器Token-Ring High-Performance Network Adapter(feature code 2970)用于RS/6000的FDDI网络适配器Fiber Distributed Data Interface Adapter (feature code 2720)Fiber Distributed Data Interface Dual Ring Upgrade Kit (feature code 2722)这个适配器需要系统先装FDDI适

38、配器(feature code 2720)FDDI-Fiber Dual-Ring Upgrade (feature code 2723)FDDI-Fiber Single-Ring Adapter (feature code 2723)FDDI-Fiber Dual-Ring Adapter为机群选择一个网络:6构建一个高可用机群的网络,要考虑以下几个因素:价格性能可靠性机群事件检测率对IP地址的接管如果能保证冲突域小并且不需要令牌环网、FDDI网那样的高带宽和高可靠性的话,对于公共网络而言,以太网是最好的选择。它价格便宜,有最快的错误检测率(6秒),并且支持IP和硬件地址接管。如果带宽和可

39、靠性是主要的性能要求,就需要构建令牌环网或FDDI网。令牌环网的错误检测率为12秒,而FDDI网的错误检测率为 6秒。然而,FDDI网的带宽要比令牌环网的 带宽要高得多。另一方面, FDDI网不支持硬件地址的接管(不是 IP地址的接管),FDDI 网占用的插槽数目更多,价格也最高。对于私有网络而言,以太网改善了锁管理,减小了锁流量,在多数情况下是最好的选择。 如果锁管理的负荷很重,就可能需要FDDI环,因为它有最高的带宽。不必在一个私有网上进行硬件地址切换。非TCP/IP网络在高可用机群中,非TCP/IP网络也叫串行网络。在这个机群中现在能使用两种类型的串行网络:RS-232串行连接这是一种点

40、到点的网络,机群中两个节点的串口通过一条RS-232串行电缆联结。SCSI总线它提供了一个在共享 SCSI总线上的通信网络。SCSI-2差分(8-bit和16-bit)适配器既可以作初始设备也可以作目标设备。除了用于建立连接的SCSI电缆以外,不要求任何特殊的硬件。在高可用机群中,既然串彳T网络只是用来发送keepalive包和Heartbeat信息的,所以串行网络的带宽是足够的。绝大多数机群都用RS-232作为串行网络。但是如果在机群中使用支持SCSI差分协议的SCSI磁盘作为共享存储系统,那么就应该配置 SCSI总线以便在各个节点之间提供尽可能多的传送keepalive包和Heartbea

41、t信息的路径。Keep-Alive是Keep-Alive协议的中的一个对象。KA协议定义了检测连接是否中断的方 法,使得套接字资源得到清除。同样的,KA还能检测到远端程序是否停止了作用(即便当远端主机仍然有效)。这是所有KA的基本的功能。Heartbeat是执行心跳协议的一种开放资源对象。也就是说,在机器之间消息按规律的间隔被传递,如果消息没有被某一机器接收,那么这个机器就被认为是失效了,并且一些相应的措施会被采取。心跳信号可以传递心跳消息通过串行连接或端对端协议包装的串行连接 或以太网接口。心跳信号开始时,主节点建立一个浮动IP地址的接口,用来被外部客户访问。当这个节点失效时,心跳机群中的另

42、一个节点会开始一个同样IP地址的接口,并且使用地址解析协议来确保所有通过这个地址的通信都被这台机器接收。这种处理失效的方法称为IP地址接管。其它网络技术当前,为了提高高可用机群上网络的性能,有几种网络技术开始在高可用机群市场上 崭露头角,如千兆位以太网、 Myrinet网、HiPPI和超级HiPPI 。这些网络技术在高可用机 群领域的发展动向值得我们大力关注。下面简要介绍一下 HiPPI技术的特点以及 Compaq公司的HiPPI网络解决方案:HiPPI技术的特点:6超高速数据传输,可配置为800Mbps或1.6 Gbps;非常简单的型号系列;协议独立;物理层流控制;面向连接的电路交换,非阻塞

43、电路交换允许多个会话同时发生;非常简单的型号系列;和铜线及光纤的兼容性;Compaq公司的HiPPI网络解决方案 由硬件和软件组成:一个PCI网络适配器把 Alpha系统连接到 HIPPI网络。软件设备驱动程序提供基本的 HIPPI协议支持和IPI-3存储连接。Compaq的HIPPI网络适配器特性:两个总线主控 DMA通道用作并发的读写操作,与内置 RISC处理器配合可支持完全 的散布/集合操作;最高132 MB/sec的PCI突发传输率;距离超过500米用50微米多模光纤,距离超过200米用62.5微米光纤;保证与ODS/Essential 网络的HIPPI局域网交换开关产品兼容。Comp

44、aq的HIPPI网络适配器的驱动程序的特征:完全支持 TCP/IP ,与 RFC 1374兼容;为改进效率和性能,最大传输单元(MTU )为65,280字节低级(raw) HIPPI特性驱动程序应用程序接口IPI-3 (智能外设互联,版本3 )Compaq还提供一个可选的的设备驱动程序,用于基于 HIPPI协议之上的,到海量存 储设备的与IPI-3兼容的连接。所支持典型的海量存储设备是MaxStrat公司的 GEN4和GEN5磁檎阵列。下列 Alpha 服务器支持 Compaq的 HIPPI 解决方案:Compaq 2100; 4000/4100;8200/8400; DS Series ;

45、ES Series ; GS Series 。HIPPI 环境HIPPI既可以在点到点的环境也可以在交换网的环境下工作。2台计算机能直接经由HIPPI电缆连接,并使用HIPPI协议高速交换数据;要想连接把2台以上的设备连接成一 个HIPPI网络,就需要有 HIPPI交换开关。尽管Compaq的HIPPI解决方案都使用串行的连接,但也可以通过HIPPI交换开关和以前的并行HIPPI系统互连。HIPPI设备的互连也存在着距离限制,但是使用HIPPI调制解调器和 HIPPI扩展器增加这个距离。三、软件高可用 内核级、库级、应用程序级高可用:检查点技术简介检查点技术 指的是定期将一个正在执行程序的状态

46、存储在存储器内,以便在故障后系统可以从该状态恢复。每个被保存的程序状态称为检查点。从以前保存的状态重新开始的过程,称为回滚恢复(rollback-recovery ) o在基于消息传递的系统中,从故障中进行回滚恢复的技术可以分为两个主要的类别:基于检查点的回滚恢复方法,和基于日志的回滚恢复方法。基于检查点的恢复方法只依靠检查点所记录的状态进行状态恢复。根据何时进行记录进行区分,这种方法又可以分为三个小类别:不协同的检查点技术,协同的检查点技术,依据通信的检查点技术。基于日志的检查点技术不仅使用了检查点,而且使用了消息记录技术,以便重建没有被检查点保存的程序状态。这种技术也可以分成三个小类别:悲

47、观的记录方法,乐观的记录方法,以及因果记录方法。基于日志的检查点技术提供了更快的输出提交(output commit )和更好的局部恢复功能。在基于消息传递的系统中,由于存在回滚扩散( rollback propagation )的可能性,回滚 恢复的过程比较复杂。背景介绍一致系统状态(Consistent System States)系统状态指系统中所有进程的单个状态和通信管道的状态之和。一个一致的系统状态,指该状态中每一个已经接收到的消息也在发送者的状态中显示为已经发送了的。已经发送,但尚未被接收到的消息不会造成系统状态不一致。任何回滚恢复协议的基本目标都是在系统故障导致出现不一致系统状态

48、后将系统带回一个一致的系统状态。但回滚之后的状态不一定就是故障前已经出现过的状态。恢复线(recovery line )恢复线,即the most recent consistent global checkpoint ,是回滚恢复的最好选择,因为回滚到这个状态可以使故障丢失的工作最小化。PWDPieceWise Deterministic execution model ,简称PWD模型,是基于记录的恢复方法的基础。在这个模型中,进程的状态由消息的接收划分为不同阶段,在每个阶段中,进程的执行是确定的。因此,只要记录下不确定的事件,就可以重现进程的执行过程。可恢复状态一个进程状态是可恢复(re

49、coverable)的,指保留了足够的信息,使得我们可以重新执行进程至U这个状态。 Maximum Recoverable State ,即 the most recent recoverable consistent system state输出提交(output commit )为了使外部世界(通常没有回滚功能)看到一个一致的系统,在输出到外部世界之前,我们必须确保输出数据的状态是可恢复状态,这被称为输出提交问题。基于检查点的回滚恢复技术由于这种技术并不保证一个任务失败后能够精确地再现,因此,它适合于那些不经常 和外部世界交互的场合。不协同的检查点技术也称独立的检查点技术。系统中的每个进程

50、单独决定何时保存自己的状态。这种方法的主要好处是较低的系统开销,因为没有进程之间的协同。另外进程自行决定检查点也减少了不必要的保存。这种方法的主要缺点是多米诺效应,可能造成大量工作的浪费。另外还需要定期运行垃圾收集任务。在程序的正常执行过程中,需要记录各检查点之间的依赖关系,以便在回滚恢复时可以确定一个一致状态,这种技术称为依赖性跟踪技术( dependency tracking) o有两种类似的 依赖性跟踪算法:依赖关系图( Dependency Graphs)法和检查点图法(Checkpoint Graphs)。 这两种方法是等价的,可以找到相同的恢复线。协同的检查点恢复技术与不协同的检查

51、点技术不同的是,协同式的检查点恢复技术使得进程之间协调它们的 保存动作,形成一个全局上一致的状态。这样,就不会出现多米诺现象,因为进程总是恢复 到最近保存的一致状态。存储方面的开销减少了。 这种方法主要的缺点在于牺牲了进程保存 检查点的自主性。此外,协同就意味着带来消息传递的开销。实现协同方式的检查点技术最简单的方式是阻塞式方法。在检查点协议执行之前,阻塞所有进程间的通信。检查点的发起者发出一个检查点记录请求, 所有进程收到请求后完成 记录操作,并告知发起者。最后发起者收到所有进程的完成通告, 再通知所有进程重新开始 执行正常操作。非阻塞的协同方法,实际上是把维护状态一致性的责任从消息的发送方

52、转至接收方。从状态一致的定义可以看出,要想实现一致状态,就要避免一个消息在发送方的检查点之后 发送而在接收方的检查点之前接收的情况(指同一状态的检查点)。因此,我们只需要在发送方检查点之后发送第一条消息之前先产生一个”要求检查点”的请求,强迫接收方产生一个检查点,就可以避免这种情况。依据通信的检查点恢复技术依据通信的检查点恢复技术是另一种避免多米诺效应的协议。它类似于不协同的检查点技术,但系统中存在一些必须遵守的限制和通信模式,以保证恢复线的存在。 在进程间传递的消息中包含了足够的信息,接收方可以据此判断是否会因处理本条消息而违反限制条 件。如果会的话,接收方就要先保存一个检查点。依据通信的检

53、查点恢复技术可以分为两类:基于模型的技术和基于下标的协同技术。基于模型的技术是通过对系统的分析,提出一种不可能出现多米诺效应的通信模型,然后强迫各进程遵守这个模型。 基于下标的协同是把协同技术引入不协同的检查点技术,方法是在进程间传递的消息中带上检查点的下标。如果接收方的检查点下标小于消息中携带的下标, 表明接收方没有执行足够的检查点操作,它需要被强迫执行检查点操作。基于日志的回滚恢复方法基于日志的恢复方法假定系统满足 PWD模型。进程由阶段组成,每个阶段由一个非事 先决定的事件开始,阶段的执行是确定性的。这里的事件指的是消息的接收, 消息的发送不 属于事件。基于日志的方法不仅保存检查点,而且

54、把非事先决定的事件记录下来。在恢复时,这 些日志可以用来完全重现进程的执行状态。 基于检查点的恢复方法则不同, 它不保证完全恢复到程序失败之前的状态,这简化了恢复过程,但也使它不适合于与外界交互的场合。悲观的记录方法使用这种策略的假设是,系统有可能在每一个事件之后出现故障(实际上故障是很少的,因此得名“悲观的”)。在这种策略下,每一个事件的记录必须在它影响进程的执行之前 完成,因此,这种方法也被称为同步记录( synchronous logging)。故障发生时,进程从最近 的检查点得到恢复,事件被重现,故障前的执行被完全再现。这种方法的优势在于:输出提交不需要特殊协议。恢复过程非常简单。恢复

55、是从每一个进程最近的检查点开始的。不需要复杂的垃圾收集协议。这种方法的缺点在于同步记录的性能开销太大。可以使用特殊的硬件或软件方法,减 少同步记录的开销。乐观的记录方法与悲观方法相反,乐观的方法假定故障之前消息记录会完成,因此采用异步方法记录消息。这种方法不需要在记录消息时阻塞进程的执行, 因此有更好的性能,但代价是比较复 杂的恢复策略和垃圾收集、输出提交算法。在进程失败时,那些没有来得及输出到稳定存储 器的消息丢失,无法被用来恢复进程的状态。而且,如果消息的发送者出现故障,发送消息时的状态是不可恢复的状态,因此消息的接收方就变成了孤儿进程( orphan process),必须 一同回滚。因

56、此,这种方法必须进行依赖性跟踪。因果记录方法因果记录方法具有乐观方法的性能优势(但不必作出乐观假设),避免了对稳定存储器的同步访问(除了在输出提交期间)。同时,它保留了悲观方法的大部分优点。它允许每一个进程独立地输出提交,回滚利用的是最近的检查点状态。这些优点的代价是更复杂的恢复协议。因果记录方法的要点是:对进程状态有影响的每一个事件的信息,不是已经被全局地 记录下来,就是被本地记录下来。这样,在进程恢复状态时,就可以利用这些有关事件的信 息,重新执行失败的进程。根据因果记录方法的恢复原理,必须进行因果性跟踪。因果信息可以被存储在先行图中。先行图的每个结点代表一个事件,结点之间的有向边代表ha

57、ppened-before关系。进程之间发送消息时,把自己本地的先行图附带在消息中一同发送出去,这样各进程之间就可以了解所有事件的先后次序和影响关系。各种方法之间的比较UncoordinatedCheckpointingCoordinatedCheckpointingPessimisticLoggingOptimistic LoggingCausalLoggingPWD Assumed?NoNoYesYesYesOverheadLowHigherHighestHigherHigherOutput CommitNot possibleVery slowFastestSlowFastCheckpo

58、int/processSeveral11Several1Garbage CollectionComplexSimpleSimpleComplexComplexRecoveryComplexSimpleSimpleComplexComplexDomino EffectPossibleNot possibleNot possibleNot possibleNot possibleOrphansPossiblePossibleNot possiblePossibleNot possibleRollback ExtentUnboundedLast checkpointLast checkpointSo

59、me previous checkpointLast checkpoint 系统级软件高可用简介:分布式文件系统高可用1、分布式系统的可用性模型及可用性分析1)分布式系统高可用模型在通常的分布式系统环境中,客户指定待定的服务器,即客户与服务器是一个一一对应 的关系,在这种系统中,当服务器发生故障就导致系统失败, 显然这种分布式系统是非冗余 的,可靠性较低。分布式系统中高可用服务是通过在服务端提供多个功能相同的服务方,使得系统中服务方满足冗余要求,当任一服务方发生故障, 系统快速地检测故障, 并透明地进行整个服务器 迁移,使客户与备份的服务方进行交互,能继续完成任务。下图给出了分布式高可用模型的

60、图形表不。建立提供高可用服务的分布式高可用系统通常采用两个或多个服务方同时彼此提供独 立的服务,各服务方之间通过网络实现互连,网络通常是冗余的:当任一服务方发生故障, 该服务方处于“故障”状态,这时分布式系统透明地进行服务方迁移,使客户与其它的活动态的服务器进行交互。 下面,我们在不考虑网络的可用度的情况下,采用排队论来分析一下分布式系统的可用性,设分布式系统中的服务方个数为n,假设:系统的每个服务方存在两个状态,即活动状态和故障状态;组成多服务方系统的各个服务方的寿命服从指数分布,故障方的修理时间也服 从指数分布,且修理如新;服务方之间的切换时间不考虑。高可用系统的可用度可形式化为一个M/M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论