您的位置: 网站首页 > 倾心驿站 > 计算机网络技术与应用 > 第6章 服务器/客户端网络 > 【6.2 网络服务器及其RAID技术】

6.2 网络服务器及其RAID技术

 

6.2  网络服务器及其RAID技术

网络服务器(Server)是指在网络环境中可以为客户机(Client)提供各种服务的专用计算机系统,在网络中承担着数据的存储、转发、发布等关键任务,是网络中不可或缺的重要组成部分。作为网络的灵魂,服务器不仅担负着繁重的处理任务,而且必须保证网络服务的稳定,对处理性能和稳定性都有着较高的要求。

6.2.1  网络服务器的特点

网络服务器在硬件、软件等各个方面,与普通的计算机存在着很大的差异,可以用SUMA来概括。“SUMA”并不是一个英文单词,而是“Scalability”(可扩展性)、“Usability”(可用性)、“Managability”(可管理性)、“Availability”(可利用性)这4个英文单词的缩写,SUMA是公认的衡量服务器性能的标准。按照“SUMA”标准,服务器必须具备以下几个特性。

1.可靠性

由于所有的数据和资料都存储在服务器上,所有的认证和服务也都由服务器完成,因此,一旦服务器发生故障,将导致许多网络服务失败,使整个网络陷于瘫痪,损失往往是难以估量的。这就要求服务器必须能够长时间地连续稳定运行。一般来说,工作组级服务器的要求是在工作时间(每天8小时,每周5天)内没有故障;部门级服务器的要求是每天24小时,每周5天内没有故障;企业级服务器则要求全年365天,每天24小时都是没有故障的,也就是随时可用,永不宕机。

可靠性是服务器的灵魂,直接关系到整个网络的系统可靠性。所以,用户在选购时必须把服务器的可靠性放在首位。

2.可利用性

服务器是为网络中其他计算机提供服务的,由于服务器要将其数据、硬件提供给网络共享,在运行某些应用程序时要处理大量的数据,而且很有可能需要同时响应几十台、几百台,甚至上千台计算机的请求(称为并发访问),因此,应当拥有较高的数据处理能力,以及数据读/写能力。决定服务器性能的因素有许多,CPU的主频与数量、硬盘的速度、RAID卡的接口类型、内存的大小、网卡的数据吞吐能力等,都在某种程度上制约着服务器的性能。

3.可管理性

服务器主板上集成了多种传感器,用于检测硬件设备的运行状态。系统管理员可以在异地通过网络(局域网或Internet)随时了解服务器的运行状况,实现对服务器的远程监测和资源分配,并及时解决服务器的许多硬件故障。

4.可扩展性

可扩展性是指服务器的配置,如内存、硬盘、处理器等,可以很方便地实施扩容。服务器通常拥有较多的64PCI插槽、驱动器支架,以及较大的内存扩展能力,并提供电源和风扇插槽,从而保证在网络规模扩充时,服务器也能通过扩展获得更高的性能。

另外,Remote I/O(远程输入/输出)技术可以更加充分地保证服务器的扩展性能。该技术将原来集中在服务器机箱中的I/O插槽,部分地转移到一个独立机箱中进行安装,从而减少机箱内的I/O插槽,有效地利用服务器机箱空间,提高服务器的散热性能。同时,还可以提供更多的I/O插槽,供服务器设备使用。

6.2.2  RAID及使用

由于硬盘的存取速率远低于CPU的处理速度,无法及时响应网络用户的并发访问,从而成为影响I/O能力的瓶颈。同时,单块硬盘的容量毕竟有限,根本无法满足网络海量数据存储的需求。因此,冗余独立磁盘阵列(Redundant Array of Independent DisksRAID)就成为重要的服务器存储技术。其技术思想是,利用现有的小型廉价磁盘,把多个磁盘按一定的方法组成一个磁盘阵列,使得整个磁盘阵列对用户来说,就像是在使用一个容量很大、可靠性很高、速度很快的大型磁盘。

1RAID技术规范简介

RAID技术主要包含RAID 0RAID 7等几个规范,它们的侧重点各不相同,常见的规范有如下几种。

RAID 0:又称带区阵列,是一种由两块以上磁盘实现的无冗余磁盘阵列。RAID 0连续地以位或字节为单位分割数据,并行读/写于多个磁盘上,如图6-1所示。RAID 0具有很高的数据传输率,但没有数据冗余,因此不算是真正的RAID结构。RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。因此,RAID 0不能应用于数据安全性要求高的场合。

RAID 1又称镜像阵列,是一种由两块磁盘实现的冗余磁盘阵列,如图6-2所示。当原始数据繁忙时,可直接从镜像复制中读取数据,因此RAID 1可以提高读取性能。RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读/写,而不需要重组失效的数据。

镜像处理

     

6-1  RAID 0规范示意图               6-2  RAID 1规范示意图

RAID 0+1:也被称为RAID 10标准,实际是将RAID 0RAID 1标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘进行磁盘镜像冗余处理,如图6-3所示。它的优点是同时拥有RAID 0的高速度和RAID 1的数据高可靠性,但是CPU占用率也更高,而且磁盘的利用率比较低。

RAID 2:将数据条块化地分布于不同的硬盘上,条块单位为位或字节,并使用称为“加重平均纠错码(海明码)”的编码技术来提供错误检查及恢复。这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂,因此在商业环境中很少使用。

RAID 3:它与RAID 2非常类似,都是将数据条块化分布于不同的硬盘上,区别在于RAID 3使用简单的奇偶校验,并用单块磁盘存放奇偶校验信息,如图6-4所示。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据;如果奇偶盘失效则不影响数据使用。RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据来说,奇偶盘会成为写操作的瓶颈。

分段处理

数据盘

校验盘

镜像处理

镜像处理

      

6-3  RAID 10规范示意图                6-4  RAID 3规范示意图

RAID 4RAID 4同样也将数据条块化并分布于不同的磁盘上,但条块单位为块或记录,如图6-5所示。RAID 4使用一块磁盘作为奇偶校验盘,每次写操作都需要访问奇偶校验盘,这时奇偶校验盘会成为写操作的瓶颈,因此RAID 4在商业环境中也很少使用。

RAID 5是由至少3块磁盘实现的冗余磁盘阵列。RAID 5不单独指定奇偶校验盘,而是在所有磁盘上交叉地存取数据及奇偶校验信息,如图6-6所示。在RAID 5上,读/写指针可同时对阵列设备进行操作,提供了更高的数据流量。RAID 5更适合于小数据块和随机读/写的数据。RAID 3RAID 5相比,最主要的区别在于:RAID 3每进行一次数据传输就需涉及到所有的阵列盘;而对于RAID 5来说,大部分数据传输只对一块磁盘操作,并可进行并行操作。在RAID 5中有“写损失”,即每一次写操作将产生4个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。

数据+校验

数据盘         校验盘

      

6-5  RAID 4规范示意图                  6-6  RAID5规范示意图

RAID 6:与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写损失”,因此“写性能”非常差。较差的性能和复杂的实施方式使得RAID 6很少得到实际应用。

RAID 7:这是一种新的RAID标准,其自身带有智能化实时操作系统和用于存储管理的软件工具,可完全独立于主机运行,不占用主机CPU资源。RAID 7可以看作是一种存储计算机(Storage Computer),它与其他RAID标准有明显的区别。除了以上的各种标准,还可以如RAID 0+1那样结合多种RAID规范来构筑所需的RAID阵列。例如,RAID 5+3RAID 53)就是一种应用较为广泛的阵列形式。用户一般可以通过灵活配置磁盘阵列来获得更加符合其要求的磁盘存储系统。

注意:开始时RAID方案主要针对SCSI硬盘系统,系统成本比较昂贵。1993年,HighPoint公司推出了第一款IDE-RAID控制芯片,能够利用相对廉价的IDE硬盘来组建RAID系统,从而大大降低了RAID的“门槛”。在花费相对较少的情况下,RAID技术可以使个人用户也享受到成倍的磁盘速度提升和更高的数据安全性,现在个人计算机市场上的IDE-RAID控制芯片主要出自HighPointPromise公司,此外还有一部分来自AMI公司。

面向个人用户的IDE-RAID芯片一般只提供了RAID 0RAID 1RAID 0+1RAID 10)等RAID规范的支持,虽然它们在技术上无法与商用系统相提并论,但对普通用户来说,其提供的速度提升和安全保证已经足够了。在主板厂商竞争加剧、个人计算机用户要求逐渐提高的今天,在主板上板载RAID芯片的厂商已经不在少数,图6-7就是一款带RAID芯片的主板。用户完全可以不用购置RAID卡,直接组建自己的磁盘阵列,感受磁盘狂飙的速度。

6-7  RAID芯片的主板

2.通过硬件控制芯片实现IDE RAID的方法

RAID家族里,RAID 0RAID 1在个人计算机上应用最为广泛,毕竟愿意使用4块甚至更多的硬盘来构筑RAID 0+1或其他硬盘阵列的个人用户少之又少,因此在这里仅就这两种RAID方式进行讲解。这里选择支持IDE-RAID功能的升技KT7A-RAID主板,一步一步地向大家介绍IDE-RAID的安装。升技KT7A-RAID集成的是HighPoint 370芯片,支持RAID 0RAID 1RAID 0+1,如图6-8所示,方框中的两个插槽就是IDE3IDE4接口。

6-8  KT7A-RAID主板

RAID自然少不了硬盘,RAID 0RAID 1对磁盘的要求不一样,RAID 1Mirror)磁盘镜像一般要求两块(或多块)硬盘容量一致,而RAID 0Striping)磁盘一般没有这个要求,当然,选用容量相似、性能相近,甚至完全一样的硬盘比较理想。为了方便测试,这里选用两块60GB的希捷酷鱼Ⅳ硬盘。系统选用Duron 750MHzCPU2×128MB现代SDRAM、耕升GeForce2 Pro显卡,应该说是比较普通的配置,也希望借此了解构建RAID所需的系统要求。

3RAID 0的创建

创建RAID 0前,首先要备份好硬盘中的数据。很多用户都没有重视备份这一工作,特别是一些比较粗心的个人用户。创建RAID对数据而言是一项比较危险的操作,稍不留神就有可能毁掉整块硬盘的数据。

1)在创建RAID 0时,所有阵列中磁盘上的数据都将被抹去,包括硬盘分区表在内。因此要先准备好一张带FdiskFormat命令的Windows 98启动盘,这也是这一步要注意的重要事项。

2)将两块硬盘的跳线设置为Master,分别接上升技KT7A-RAIDIDE3IDE4口(它们由主板上的HighPoint 370芯片控制)。由于RAID 0会重建两块硬盘的分区表,我们就无须考虑硬盘连接的顺序。

3BIOS进行设置。打开ATA RAID CONTROLLER,在升技KT7A-RAID主板的BIOS中进入INTEGRATED PERIPHERALS选项,并打开ATA100 RAID IDE CONTROLLER,设置软驱作为首选项。

4)系统BIOS设置完成以后重新启动计算机,开机检测时将不会再报告发现硬盘。磁盘的管理将由HighPoint 370芯片接管。在HighPoint 370磁盘扫描界面按Ctrl+H组合键,进入HighPoint 370 BIOS设置界面后第一个要做的工作就是选择“Create RAID”(创建RAID)选项。

5)在“Array Mode(阵列模式)”中进行RAID模式选择,这里能够看到RAID 0RAID 1RAID 0+1Span的选项,在此选择RAID 0选项,如图6-9所示。

6-9  设置BIOS

6RAID模式选择完成会自动退回到上一级菜单进行“Disk Drives(磁盘驱动器)”选择,一般来说直接按回车键就行了。

7)下一项设置是条带单位大小,默认值为64KB,没有特殊要求可以不予理睬。

8)接着是“Start Create(开始创建)”选项,在按下Y键之前,请认真想想是否还有重要的数据留在硬盘上,这是最后的机会。一旦开始创建RAID,硬盘上的所有数据都会被清除。

9)创建完成以后是指定BOOT启动盘,任选一个盘。按Esc键退出,然后按下Y键来确认一下。HighPoint 370 BIOS没有提供类似“Exit Without Save”的功能,修改设置后是不可逆转的。

10)再次重新启动计算机以后,就可以在屏幕上看到“StripingRAID 0for Array #0字样了。插入先前制作的启动盘,启动DOS。打开Fdisk程序,这时发现只有一个硬盘可见。因为,RAID阵列已经整个被视为一块硬盘,对于操作系统而言,RAID完全透明,用户大可不必费心RAID磁盘的管理,这些都由控制芯片完成。接下来按照普通单硬盘方法进行分区,会发现“这个”硬盘的容量“变”大了,总容量就是两块硬盘相加的容量。可以把RAID 0的读写比喻成拉链,它把数据分开在两个硬盘上,读取数据会变得更快,而且不会浪费磁盘空间。在分区和格式化后千万别忘了激活主分区。

11HighPoint370芯片提供对Windows 98/NT/2000/XP的驱动支持,考虑到RAID功能面向的是相对高级的用户,所以最好选择对新硬件支持更好的Windows XP Professional中文版。

12)对于采用RAID的计算机,操作系统的安装和普通情况下不一样。在Windows XP完成第一步“文件复制”重启以后,安装程序会提示“按下F6键安装SCSI设备或RAID磁盘”,这一过程很短,而且用户往往会忽视屏幕下方的提示。按下F6键后出现安装选择,选择“S”将安装RAID控制芯片驱动,按回车键则不安装。

13)按下S键会提示插入RAID芯片驱动盘。按回车键,安装程序自动搜索驱动盘上的程序。如果所提供的版本和Windows XP Professional内置的驱动版本不一致,安装程序就会给出提示让用户进行选择。接下来是正常的系统安装,和普通安装没有任何区别。

4RAID 1的创建

RAID 1虽然在原理上和RAID 0完全不一样,但RAID 1的安装设置过程却与RAID 0相差不多,主要区别在于HighPoint 370 BIOS里的设置。为了避免重复,这里只向大家重点介绍这部分的设置。

1)进入HighPoint 370 BIOS后选择“Create RAID”进行创建。在“Array Mode”上按回车键,在RAID模式中选择第一项“MirrorRAID 1)”。

2)选择源盘,再次提醒用户:务必小心,不要选错,然后是目标盘的选择,也就是所说的镜像盘或备份盘,接着开始创建。

3)创建完成以后BIOS会提示进行镜像的制作,这一过程相当长。

4)大约要用45min才完成60GB的镜像制作,至此RAID 1创建完成。RAID 1会将主盘的数据复制到镜像盘,因此在构建RAID 1时需要特别小心,千万不要把主盘和镜像盘弄混,否则结果将是悲剧性的。RAID 1既可以在两块无数据的硬盘上创建,也可以在一块已经安装操作系统的硬盘上添加,比RAID 0方便多了(除了漫长的镜像制作过程)。创建完成以后试着将其中一块硬盘拔下,HighPoint370 BIOS给出了警告,按下Esc键,另一块硬盘承担起了源盘的重任,所有数据完好无损。