130第06章服务器配置及架设本章重点n磁盘阵列n FTP服务器的架设n邮件服务器的架设n DNS服务器的架设n WEB服务器的架设n电影服务器的架设11 2 硬件网络逆向式案例教材 112 6.1 磁盘阵列磁盘阵列(Disk Array)是“独立磁盘冗余阵列”的简称,英文名为RAID(Redundant Array of Independent Disks)。它是指将多块独立硬盘(物理硬盘)按不同方式组合起来,形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和数据备份功能。对用户而言,磁盘组就如同一块硬盘,操作与单个硬盘完全相同,可以进行分区,格式化等。不同的是,磁盘阵列的存储速度远远快于单个硬盘,并且能够自动完成数据备份。数据备份的作用就是在数据一旦发生损坏后,可利用备份信息使损坏数据得以恢复,从而保障数据的安全性。 RAID 通常是由在硬盘阵列塔中的 RAID控制器或电脑中的 RAID 卡来实现。由于 RAID 具有快速、安全两大优点,早期,该技术主要是应用于高级服务器中的SCSI接口的硬盘系统中。近年来,随着计算机技术的发展,PC机的 CPU 的速度已进入 GHz 时代,IDE 接口的硬盘也不甘落后,相继推出了 ATA66 和 ATA100 硬盘。这就使得RAID 技术被应用于中低档甚至个人 PC成为可能。6.1.1磁盘阵列原理组成磁盘阵列的不同方式称为RAID 级别(RAID Levels),不同 RAID 级别代表着不同的存储性能、数据安全性和存储成本。经过不断发展,现在已拥有了从 RAID 0 到 RAID 6,这七种基本的 RAID 级别。另外,还有一些基本RAID 级别的组合形式,例如 RAID 10是 RAID 0与 RAID 1 的组合;RAID 50 是RAID 0 与 RAID 5 的组合等。目前最为常用的RAID 形式如表 61所示: RAID级别 RAID0 RAID1 RAID3 RAID5 RAID10 别名条带镜像专用奇偶位条带分布奇偶位条带镜像阵列条带容错性没有有有有有冗余类型没有复制奇偶校验奇偶校验复制热备盘选项没有有有有有读性能高低高高中间随机写性能高低最低低中间连续写性能高低低低中间所需磁盘数 1 个或更多 2 个或 2*N 个 3 个或更多 3 个或更多 4 个或 4*N 个可用容量总磁盘容量总磁盘容量的 50% 总磁盘容量的(n1)/n。 n 为磁盘数总磁盘容量的(n1)/n。 n 为磁盘数总磁盘容量的 50% 典型应用无故障的迅速读写,安全性要求不高,例如图形工作站随机数据写入,安全性要求高,例如服务器、数据库存储连续数据传输,安全性要求,例如视频编辑、大型数据库随机数据传输,安全性要求高,例如金融领域、数据库数据量大,安全性要求高,例如金融领域表61 磁盘阵列类型 RAID 级别的选择因素主要是可用性(数据冗余)、性能和成本。撇开可用性不谈,选择RAID 0 能获得最佳性能;若只注重可用性和性能,不考虑成本,可根据硬盘数量选择 RAID 1;但若要全盘113 第6章服务器配置及架设兼顾可用性、性能和成本,则应根据一般的数据传输情况和硬盘数量选择RAID 3、RAID 5。 1.RAID 0 RAID 0 又称 Stripe(条带化)或 Striping,它代表了所有 RAID 级别中最高的存储性能。RAID 0 提高存储性能的原理是把连续的数据分散到多个磁盘上进行存取。这样,系统有数据请求时,就可以被多个磁盘并行执行,每个磁盘执行属于自身部分的数据请求。这种数据上的并行操作可以充分利用总线带宽,显著提高磁盘整体存取性能。如图 61 所示,系统向由三个磁盘组成的逻辑硬盘(RAID 0 磁盘组)发出的 I/O 数据请求被转化为 3 项操作,每一项操作对应于一块物理硬盘。通过建立 RAID 0,原先顺序的数据请求被分散到所有的三块硬盘中同时执行。从理论而言,三块硬盘的并行操作使同一时间内的磁盘读写速度提升了 3 倍。但由于会受到总线带宽等多种因素的影响,实际上的提升速率必定低于理论值。但与串行传输相比,大量数据并行传输的提速效果之显著,仍然毋庸置疑。 RAID 0 的缺点是不提供数据冗余,一旦用户数据损坏,损坏的数据将无法得到恢复。 RAID 0 的特点,使其特别适合于对性能要求较高,但不很在意数据安全的领域,例如图形工作站等。对于个人用户,RAID 0 也是提高硬盘存储性能的绝佳选择。 2.RAID 1 RAID 1 又称 Mirror 或 Mirroring(镜像),它能最大限度地保证数据的可用性和可修复性。RAID 1 的操作方式是将用户写入硬盘的数据,百分之百地自动复制到另一个硬盘上。如图 62所示,读取数据时,系统先从 RAID1 的源盘开始读取,若读取成功,系统就不去管备份盘上的数据,若失败,则系统自动转而读取备份盘上的数据,这样就不会造成用户工作任务的中断。当然,如果发生硬盘损坏,仍应当及时更换,并利用备份数据重建 Mirror,以免备份盘一旦也损坏,造成不可挽回的数据损失。由于对所存储的数据进行百分之百的备份,因此在所有 RAID 级别中,RAID 1 的数据安全性最高。但是,也同样因为百分之百备份数据,备份数据占用了总存储空间的一半,因而造成了其磁盘空间利用率较低,存储成本高。 Mirror 虽不能提高存储性能,但由于具有的高数据安全性,使其尤其适合于存放重要数据,例如服务器和数据库存储等领域。 3.RAID 0+1 正如其名字一样,RAID 0+1是 RAID 0 和 RAID 1 的组合形式,也称 RAID 10。RAID 0+1 兼顾了存储性能和数据安全,在提供与 RAID 1 一样的数据安全保障的同时,又提供了与 RAID 0 近似的存储性能。以四个磁盘组成的 RAID 0+1 为例,其数据存储方式如图 63 所示:由于 RAID 0+1 也通过百分之百备份数据来提供数据安全保障,因此 RAID 0+1 的磁盘空间利用率与 RAID 1 图62 RAID 1阵列图61 RAID 0阵列图63 RIAD 0+1阵列11 4 硬件网络逆向式案例教材 114 相同,存储成本高。 RAID 0+1的特点使其特别适合于既有大量数据需要存取,又严格要求数据安全性的领域,例如银行、金融、商业超市、仓储库房、各种档案管理等。 4.RAID 3 RAID 3 是将数据分成多个“块”,按照一定的容错算法,存放在N+1 个硬盘上,实际数据占用的有效空间为 N 个硬盘的空间总和,而第 N+1 个硬盘上存储的数据是校验容错信息。当这 N+1 个硬盘中的其中一个出现故障时,通过其它N 个硬盘中的数据也可以恢复原始数据,因此仅使用这 N 个硬盘也可以“带伤”继续工作。更换掉故障硬盘后,系统可以重新恢复完整的校验容错信息。由于在一个硬盘阵列中,一个以上硬盘同时出现故障的几率很小,所以一般情况下,RAID 3 的安全性是可以保障的。与 RAID 0 相比,RAID 3的读写速度相对较慢。通常,RAID 3 比较适合大文件类型且安全性要求较高的应用,例如视频编辑、硬盘播出机、大型数据库等。5.RAID5 RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。以 4 个硬盘组成的 RAID 5 为例,其数据存储方式如图 64 所示:图中的 P0 为 D0、D1 和 D2 的奇偶校验信息,其它以此类推。从图中可以看出,RAID 5 并不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成 RAID5 的各个磁盘上,并且奇偶校验信息和相对应的数据是分别存储于不同的磁盘上。当其中某一个磁盘数据发生损坏,就可利用剩下的数据和相应的奇偶校验信息来恢复被损坏的数据。 RAID 5 可以理解为是 RAID 0 和 RAID 1 的折衷方案。它可以为系统提供数据安全保障,但保障程度要比 Mirror 低,但磁盘空间利用率比 Mirror高。RAID 5 具有和RAID 0 相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作要稍慢。同时,由于是多个数据对应一个奇偶校验信息,因此 RAID 5 的磁盘空间利用率要比RAID 1 高,存储成本相对较低。一、磁盘阵列实现方式磁盘阵列有两种方式可以实现,那就是“软件阵列”与“硬件阵列”。软件阵列是指通过网络操作系统自身提供的磁盘管理功能将连接的普通 SCSI卡上的多块硬盘配置成逻辑盘,组成阵列。如微软的Windows NT/2000 Server/Server 2003 和 NetVoll 的 NetWare 两种操作系统都可以提供软件阵列功能,其中Windows NT/2000 Server/Server 2003 可以提供 RAID 0、RAID 1、RAID 5;NetWare 操作系统可以实现 RAID 1 功能。软件阵列可以提供数据冗余功能,但是磁盘子系统的性能会有所降低,有的降代还比较大,达 30%左右。硬件阵列是使用专门的磁盘阵列卡来实现的,这就是本文要介绍的对象。现在的非入门级服务器几乎都提供磁盘阵列卡,不管是集成在主板上或非集成的都能轻松实现阵列功能。硬件阵列能够提供在线扩容、动态修改阵列级别、自动数据恢复、驱动器漫游、超高速缓冲等功能。它能提供性能、数据保护、可靠性、可用性和可管理性的解决方案。磁盘阵列卡拥有一个专门的处理器,如 Intel 的 I960 芯片,HPT370A/372 、Silicon Image SIL3112A 等,还拥有专门的存贮器,用于高速缓冲数据。这样一来,服务器对磁盘的操作就直接通过磁盘阵列卡来进行处理,因此不需要大量的 CPU 及系统图64 RAID 5阵列115 第6章服务器配置及架设内存资源,不会降低磁盘子系统的性能。阵列卡专用的处理单元来进行操作,它的性能要远远高于常规非阵列硬盘,并且更安全更稳定。6.1.2磁盘阵列配置实例当硬盘连接到磁盘阵列卡(RAID)上时,操作系统并不能直接看到物理硬盘,而需要被分别创建成 RAID 0、1 或者 5 等的虚拟磁盘(Virtual Drive,又称容器Container、逻辑磁盘Logic Drive,不同阵列卡厂商的叫法不同),系统才能够正确识别。磁盘阵列的配置通常是利用磁盘阵列卡的 BIOS 工具进行,或者使用用第三方提供的配置工具软件来实现对阵列卡的管理,例如Dell Array Manager。我们 DELL服务器为例,介绍利用阵列卡的 BIOS 工具进行磁盘阵列配置的方法。配置 Adaptec磁盘阵列控制器(PERC2、PERC2/SI、PERC3/SI和 PERC3/DI)的 DELL服务器,在系统开机自检时将看到以下信息: Dell PowerEdge Expandable RAID Controller 3/Di, BIOS V2.7x [Build xxxx](c) 19982002 Adaptec, Inc. All Rights Reserved. Press CTRL+A for Configuration Utility! 配置 AMI/LSI磁盘阵列控制器(PERC2/SC、PERC2/DC、PERC3/SC、PERC3/DC、PERC4/DI和 PERC4/DC)的 DELL服务器,在系统开机自检时将看到以下信息: Dell PowerEdge Expandable RAID Controller BIOS X.XX Jun 26.2001 Copyright (C) AMERICAN MEGATRENDS INC。 Press CTRL+M to Run Configuration Utility or Press CTRL+H for WebBios 或者是: PowerEdge Expandable RAID Controller BIOS X.XX Feb 03,2003 Copyrig