计算机系统可靠性.ppt
第二章 计算机系统的可靠性,系统可靠性(冗余、容错、专用)系统可用性(可正常运行、故障可恢复)系统部件一致性(配置合理)网络互连性(连通和隔离的矛盾,布线)环境安全性(配电、接地、防护)检查验收:按照标准、规范、合同和协议,系统可靠性的定义:在特定时间内和特定条件下系统正常工作的相应程度,即(degree of suitability)。可靠性的测量方式:系统的可用性(availability),即利用率。可用性的平均值即平均利用率,其计算方法为:A=MTBF/(MTBF+MTTR)MTBF(MeanTime Between Failures)故障间隔平均时间 MTTR(MeanTime To Repair)系统平均修复时间,第一节 计算机系统的可靠性与容错性,系统可靠性的获得 可靠性 容错性 完美性(fault tolerance)(perfection)冗余技术硬件冗余 完美硬件 完美软件(redundancy)软件冗余 整机完美性|时间冗余 部件完美性 可信软件|信息冗余 器件完美性|静态冗余(部件冗余)可用硬件 动态重组|-被动重组(后备 stand-by)|-主动重组(优美降级 graceful degradation),完美性追求一种避错技术,即避免出错。要求组成系统的各个部件、器件具有高可靠性不允许出错,或者出错率降至最低。硬件的可靠性与完美性 电路:规范设计、电路结构、时序与竞争 元器件:制造、筛选、老化、容差、寿命 部件:PCB板、布局、位置、结构、布线、焊接、安装、散热、机械性能、频率 整机:整体一致、结构合理、干扰屏蔽 环境:布局、强弱电干扰、静电,完美性与避错技术,完美性与避错技术(续)软件的可靠性与完美性 1)正确性:软件有正确性吗?软件完美吗?正确性证明的范畴。2)可用性:软件在一定的环境条件和应用条 件下可以正常运行,功能正常。3)兼容性:软件对运行环境、运行平台和运 行条件的适应性。4)可信性:对用户来说,所使用的软件值得 信赖,对软件产生的心理性依赖。,(三)软件的可靠性与硬件的可靠性的区别(共9点)1.最明显的是硬件有老化损耗现象;软件不发生变化,没有磨损现象,有陈旧落后的问题。2.硬件可靠性的决定因素是时间,受设计、生产、运用的所有过程影响,软件可靠性的决定因素是与输入数据有关的软件差错,更多地决定于人。,3.硬件的纠错维护可通过修复或更换失效的系统重新恢复功能,软件只有通过重设计。4.对硬件可采用预防性维护技术预防故障,采用断开失效部件的办法诊断故障,而软件则不能采用这些技术。5.事先估计可靠性测试和可靠性的逐步增长等技术对软件和硬件有不同的意义。,6.为提高硬件可靠性可采用冗余技术,而同一软件的冗余不能提高可靠性。7.硬件可靠性检验方法已建立,并已标准化且有一整套完整的理论,而软件可靠性验证方法仍未建立,更没有完整的理论体系。,8.硬件可靠性已有成熟的产品市场,而软件产品市场还很新。9.软件错误是永恒的,可重现的,而一些瞬间的硬件错误可能会被误认为是软件错误。总的说来,软件可靠性比硬件可靠性更难保证,即使是美国宇航局的软件系统,其可靠性仍比硬件可靠性低一个数量级。,容错系统的概念 容错技术:在一定程度上容忍故障的技术。容错系统:采用容错技术的系统 当系统因某种原因出错或者失效,系统能够继续工作,程序能够继续运行,不会因计算机故障而中止或被修改,执行结构也不包含系统中故障引起的差错。容错技术也称为故障掩盖技术(fault masking)。,容错性与容错技术,容错性与容错技术(续)冗余技术是容错技术的重要结构,它以增加资源的办法换取可靠性。由于资源的不同,冗余技术分为硬件冗余、软件冗余、时间冗余和信息冗余。资源与成本按线性增加,而故障概率则可按对数规律下降。冗余要消耗资源,应当在可靠性与资源消耗之间进行权衡和折衷。,双CPU容错系统当一个 CPU板出现故障时,另一个 CPU保持继续运行。这个过程对用户是透明的,系统没有受到丝毫影响,更不会引起交易的丢失,充分保证数据的一致性和完整性。系统的容错结构能够提供系统连续运行的能力,任何单点故障不会引起系统停机,系统提供在线的维护诊断工具可在应用继续运转的情况下修复单点故障。,冗余类型:1.硬件冗余:增加线路、设备、部件,形成备份。2.软件冗余:增加程序,一个程序分别用几种途径编写,按一定方式执行,分段或多种表决。3.时间冗余:指令重复执行,程序回卷技术。4.信息冗余:增加信息数据位数,检错、纠错。,容错系统工作方式1.自动侦测(Auto-Detect)通过专用的冗余侦测线路和软件判断系统运行情况,发现可能的错误和故障,进行严谨的判断与分析。确认主机出错后,启动后备系统。侦测程序需要检查主机硬件(处理器与外设部件)、主机网络、操作系统、数据库、重要应用程序、外部存储子系统(如磁盘阵列)等。,为了保证侦测的正确性,防止错误判断,系统可以设置安全侦测时间、侦测时间间隔、侦测次数等安全系数,通过冗余通信连线,收集并记录这些数据,作出分析处理。数据可信是切换的基础。,2.自动切换(Auto-Switch)当确认某一主机出错时,正常主机除了保证自身原来的任务继续运行外,将根据各种不同的容错后备模式,接管预先设定的后备作业程序,进行后续程序及服务。系统的接管工作包括文件系统、数据库、系统环境(操作系统平台)、网络地址和应用程序等。如果不能确定系统出错,容错监控中心通过与管理者交互进行有效的处理。决定切换基础、条件、时延、断点,3.自动恢复(Auto-Recovery)故障主机被替换后,离线进行故障修复。修复后通过冗余通信线与正常主机连线,继而将原来的工作程序和磁盘上的数据自动切换回修复完成的主机上。这个自动完成的恢复过程用户可以预先设置,也可以设置为半自动或不恢复。,容错系统与部件 包括系统级容错和部件级容错 1)系统级容错:多种系统容错后备模式 例如:,两机同时运行,分不同作业,各自资源负载,故障、接管、修复、交还。双主机通过一条TCP/IP网络线以及一条RS-232电缆线相联。双主机各自通过一条SCSI电缆线与RAID磁盘阵列相联。双主机各自运行不同的作业,彼此独立,并相互备援。主机A故障后,主机B自动接管主机A运行。主机A的作业将在主机B上自动运行。主机A修复后,主机B将把A的作业自动交还主机A。主机B故障时,主机A接管主机B的作业和数据。主机B修复时,主机A再将原来接管的作业和数据交还主机B。,*双机双工热备份(Mutual Backup):,主从式(M/S),M运行,S后备,M故障,S接管并升级为M,原M修复后作为S。双主机通过一条TCP/IP网络线以及一条RS-232电缆线相联。双主机各自通过一条SCSI电缆线与RAID相联。主机A为Master,主机B为Slave。主机A处理作业和数据,主机B作为热备份机。主机A故障后,主机B自动接管主机A的作业和数据。主机B同时接管A的主机名(Host)及网络地址(IP)。主机A的作业将在主机B上自动运行。主机A的客户(client)可继续运行,无需重新登录。主机B现为Master,主机A修复后作为Slave,作为热备份机。2个主机建议使用规格相同的主机,*主从热备份(Master/Slave):,M运行,S后备,M故障,S接管作M,原M修复,S归还M。,*热备份(Hot-Standby),SCSI,SCSI,RS232,例如:双机热备份(网络),RS232,M机,S机,系统盘,SCSI,SCSI,数据盘,心跳线,桥,-在这种方案中,需采用的双机热备份软件,用于提高服务器可靠性。选用离线数据备份及灾难恢复软件,保证数据可靠性。还需要用到的硬件设备还包括磁带机/磁带库和磁盘阵列。,2)部件级容错:冗余或后备的部件模式。例如:RAID系统,IDE,EIDE,SCSI,DAC,7/15个盘,仅支持2个盘,可支持4个盘,可支持多个盘,可支持多分组多个磁盘,概念与术语 SCSI是一种连结主机和外围设备的接口,支持包括磁盘驱动器、磁带机、光驱、扫描仪在内的多种设备。它由SCSI控制器进行数据操作,SCSI控制器相当于一块小型CPU,有自己的命令集和缓存。,IDE接口是由Western Digital与COMPAQ Computer两家公司所共同发展出来的。一般也称IDE硬盘为ATA硬盘。IDE接口有两大优点:易于使用与价格低廉。但是随着CPU速度的增快以及应用软件与环境的日趋复杂,IDE的缺点也开始慢慢显现出来。Enhanced IDE(加强型IDE,简称为EIDE)就是Western Digital公司针对传统IDE接口的缺点加以改进之后所推出的新接口。使用扩充CHS(Cylinder-Head-Sector)或LBA(Logical Block Addressing)寻址的方式,突破528MB的容量限制,使用容量达到数十GB硬盘。最高传输速度可高达100MB/秒。,Disk Array 磁盘阵列,一种外部存储装置,以并行方式在多个硬盘驱动器上工作,被系统视作一个单一的硬盘,以冗余技术增加其可靠性。RAID(Redundant Arrays of Inexpensive Disks)廉价磁盘冗余阵列,以多个低成本磁盘构成磁盘子系统,提供比单一硬盘更完备的可靠性和高性能。利用重复的磁盘来处理数据,使得数据的稳定性得到提高。,1.数据基带条阵列(RAID0)分块无校验型,无冗余存储。简单将数据分配到各个磁盘上,不提供真正容错性。带区化至少需要2个硬盘,可支持8/16/32个磁盘。优点:允许多个小区组合成一个大分更好地利用磁盘空间,延长磁盘寿命多个硬盘并行工作,提高了读写性能 缺点:不提供数据保护,任一磁盘失效,数据可能丢失,且不能自动恢复。,输入数据流,输入数据,磁盘阵列控制器,并行传输,HDD1,HDD2,HDD3,HDD4,HDD5,RAID0 示意图,2.磁盘镜象(RAID1)每一组盘至少两台,数据同时以同样的方式写到两个盘上,两个盘互为镜象。磁盘镜象可以是分区镜象、全盘镜象。容错方式以空间换取,实施可以采用镜象或者双工技术 优点:可靠性高,策略简单,恢复数据时不必停机。缺点:有效容量只有总容量的1/2,利用率50%。由于磁盘冗余,硬件开销较大,成本较高。,输入数据流,输入数据,磁盘阵列控制器,并行传输,HDD1,HDD2,第一组镜象,HDD3,HDD4,RAID1 示意图,第二组镜象,3.并行海明纠错阵列(RAID2)存储型ECC纠错类,采用海明冗余纠错码(Hamming Code Error Correction)、跨接技术和存储纠错数据方法,数据按位分布到磁盘上。磁盘台数由纠错码和数据盘数决定。优点:可靠性高,可自动确定哪个硬盘已经失效,并进行自动数据恢复。缺点:磁盘冗余太多,开销太大。防止纠错盘本身故障。,输入数据流,输入数据,磁盘阵列控制器,HDD1,HDD2,HDD3,HDD4,HDD5,RAID2 示意图,HDD6,HDD7,HCC,HCC,HCC,HCC,HCC,HCC,HCC,HCC,HCC,海明校验,4.奇偶校验并行位交错阵列(RAID3)结合跨接技术、存储纠错数据方式,采用数据校验和校正。利用单独奇偶校验磁盘进行。一个盘故障,可根据读出数据内容和奇偶校验位确定出错位置,对数据进行修正和重组,校验方式可采用位交错或字节交错。优点:速度快,适合较大单位数据的读写,缺点:不适合小单位数据的读写;校验磁盘没有冗余,若校验磁盘失效,数据很难恢复。,输入数据流,输入数据,磁盘阵列控制器,HDD1,HDD2,HDD3,HDD4,HDD5,RAID3 示意图,parity,parity,奇偶校验,5.奇偶校验扇区交错阵列(RAID4)与RAID3类似,但数据是以扇区(sector)交错方式存储于各台磁盘,也称块间插入校验。采用单独奇偶校验盘。优点:只读一个扇区,只需访问一个磁盘。写一个扇区,只访问一个数据盘和一个校验盘。各磁盘可独立工作(扇区读写),读写并行。缺点:奇偶盘单独,出错后数据很难恢复。校验在一个磁盘上,产生写性能瓶颈。,输入数据流,输入数据,磁盘阵列控制器,HDD1,HDD2,HDD3,HDD4,HDD5,RAID4 示意图,parity,parity,奇偶校验,parity,Secter交叉,6.循环奇偶校验阵列(RAID5)与RAID4类似,但校验数据不固定在一个磁盘上,而是循环地依次分布在不同的磁盘上,也称块间插入分布校验。它 是目前采用最多、最流行的方式,至少需要3个硬盘。优点:校验分布在多个磁盘中,写操作可以同时处理。为读操作提供了最优的性能。一个磁盘失效,分布在其他盘上的信息足够完成数据重建。缺点:数据重建会降低读性能;每次计算校验信息,写操作开销会增大,是一般存储操作时间的3倍。,输入数据流,输入数据,磁盘阵列控制器,HDD1,HDD2,HDD3,HDD4,HDD5,RAID5 示意图,奇偶校验,parity,parity,parity,7.二维奇偶校验阵列(RAID6)将整个磁盘阵列看成一个二维阵列 RAID5只在一组(相当于行)上有奇偶校验盘,而RAID6在各组的同一位置的盘组成的列上也加上了奇偶校验盘。这两个奇偶校验盘形成了二维阵列。此类型也称为PQ冗余技术或者RAID0+1,其含义是它结合了RAID0的性能和RAID1的可靠性。它不是成对地组织磁盘,而是把按照RAID0方式产生的磁盘组全部映象到另一备份磁盘组中。,