硬件RAID及RAID组建实用手册

硬件RAID及RAID组建实用手册

RAID通过为数据提供校验的方式提高了可用性,在如今各类存储系统中,RAID已经成为不可或缺的重要组成部分,为保护数据发挥重要作用。

  RAID的形式是多种多样的,它们都是高可用性和高性能存储的骨干力量。RAID设备的最初应用可以追溯到上世纪80年代末,而在今天,RAID已经成为我们IT生活中一个应用广泛且非常重要部分,以至于很多人已经忘记RAID这个缩写到底是什么意思。

  RAID是由美国加州大学伯克利分校的D.A. Patterson教授在1988年提出的。RAID是Redundent Array of Inexpensive Disks的缩写,直译为“廉价冗余磁盘阵列”,也简称为“磁盘阵列”。后来RAID中的字母I被改作了Independent,RAID就成了“独立冗余磁盘阵列”,但这只是名称的变化,实质性的内容并没有改变。简单地讲,RAID技术就是利用多个硬盘的组合提供高效率及冗余的功能。

  RAID 的优点

  RAID的采用为存储系统(或者服务器的内置存储)带来巨大利益,其中提高传输速率和提供容错功能是最大的优点。

  RAID通过同时使用多个磁盘,提高了传输速率。RAID通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量(Throughput)。在RAID中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID可以达到单个磁盘驱动器几倍、几十倍甚至上百倍的速率。这也是RAID最初想要解决的问题。因为当时CPU的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。RAID最后成功了。

  通过数据校验,RAID可以提供容错功能。这是使用RAID的第二个原因,因为普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的CRC(循环冗余校验)码的话。RAID容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。在很多RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接相互的镜像备份,从而大大提高了RAID系统的容错度,提高了系统的稳定冗余性。

  RAID方案有两种,一种是硬件RAID解决方案,一种是软RAID解决方案。硬件RAID解决方案速度快、稳定性好,可以有效地提供高水平的硬盘可用性和冗余度,但是居高不下的价格实在令人可畏。Windows 2003提供了内嵌的软件RAID功能可以实现RAID-0、RAID-1、RAID-5。软RAID不仅实现上非常方便,而且还大量地节约了宝贵的资金,确实是Windows 2003 Server的一个很实用的新功能。当然,软RAID的性能和效率是不能与硬RAID相提并论的。

  下面我们就来分别介绍一下硬件RAID和软RAID组建的详细过程:

  硬件RAID解决方案

  一、硬件RAID的三种工作模式

  1、RAID 0

  RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,是实现成本是最低的。

  RAID 0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用

  操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。在使用中电脑数据依次写入到各块硬盘中,它的最大优点就是可以整倍的提高硬盘的容量。如使用了三块80GB的硬盘组建成RAID 0模式,那么磁盘容量就会是240GB。其速度方面,各单独一块硬盘的速度完全相同。最大的缺点在于任何一块硬盘出现故障,整个系统将会受到破坏,可靠性仅为单独一块硬盘的1/N。

  为了解决这一问题,便出一了RAID 0的另一种模式。即在N块硬盘上选择合理的带区来创建带区集。其原理就是将原先顺序写入的数据被分散到所有的四块硬盘中同时进行读写。四块硬盘的并行操作使同一时间内磁盘读写的速度提升了4倍。

  在创建带区集时,合理的选择带区的大小非常重要。如果带区过大,可能一块磁盘上的带区空间就可以满足大部分的I/O操作,使数据的读写仍然只局限在少数的一、两块硬盘上,不能充分的发挥出并行操作的优势。另一方面,如果带区过小,任何I/O指令都可能引发大量的读写操作,占用过多的控制器总线带宽。因此,在创建带区集时,我们应当根据实际应用的需要,慎重的选择带区的大小。

  带区集虽然可以把数据均匀的分配到所有的磁盘上进行读写。但如果我们把所有的硬盘都连接到一个控制器上的话,可能会带来潜在的危害。这是因为当我们频繁进行读写操作时,很容易使控制器或总线的负荷 超载。为了避免出现上述问题,建议用户可以使用多个磁盘控制器。最好解决方法还是为每一块硬盘都配备一个专门的磁盘控制器。

  虽然RAID 0可以提供更多的空间和更好的性能,但是整个系统是非常不可靠的,如果出现故障,无法进行任何补救。所以,RAID 0一般只是在那些对数据安全性要求不高的情况下才被人们使用。

  2、RAID 1

  RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%,以四块80GB容量的硬盘来讲,可利用的磁盘空间仅为160GB。另外,出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。因此,RAID 1多用在保存关键性的重要数据的场合。

  RAID 1主要是通过二次读写实现磁盘镜像,所以磁盘控制器的负载也相当大,尤其是在需要频繁写入数据的环境中。为了避免出现性能瓶颈,使用多个磁盘控制器就显得很有必要。

  3、RAID0+1

  从RAID 0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID 1也会出现类似单独使用RAID 0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID 0+1。把RAID0和RAID1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID0+1要在磁盘镜像中建立带区集至少4个硬盘。

二、如何组建RAID系统

  如果你有两块硬盘,并且主板的南桥芯片支持RAID功能,或者主板集成了第三方的RAID控制芯片,那么就可以组建RAID系统了。

  1、支持RAID功能的芯片

  目前支持RAID功能的南桥芯片主要有Intel的ICH5R(常见于一些高端的i865PE、i875P主板上)、ICH6R和ICH6RW(用于i915和i925系列主板),以及VIA的VT8237。这些芯片均支持SATA RAID功能,即利用两块SATA硬盘来组建RAID 0或RAID 1系统,而且它们的设置方法也大致相同。

  注意:在构建RAID系统时,最好购买同容量、同品牌的同型号硬盘,这样可以最大程度地保护投资,避免资源浪费。

  下面,我们就以Intel的ICH5R芯片为例,讲解如何利用两块硬盘来组建RAID 0或RAID 1系统。

  2、在BIOS中打开RAID功能

  安装好SATA硬盘之后,就要进入BIOS中打开南桥芯片的RAID功能。具体方法是:进入BIOS设置程序的“OnChip IDE Device”窗口,找到一个名为“SATA Mode”的选项,将它设置为“RAID”,然后保存BIOS设置并重新启动电脑。

  3、组建RAID系统

  在BIOS中启动了RAID功能后,ICH5R南桥芯片内置的“Intel RAID Option ROM”便开始启动,该软件是Intel RAID应用程序,提供BIOS和DOS服务。在系统启动POST(加电自检)时,屏幕上会有一些提示信息,按“Ctrl+I”键便可进入Intel RAID Configuration Utility窗口

  在该窗口中,窗口上半部分是主菜单,下半部分显示的是已经安装好的两个硬盘的信息,例如硬盘型号、容量、是否已经组建RAID系统等。将光标移动到主菜单的“1.Create RAID Volume”上,然后按回车键,此时便进入创建RAID系统的主界面。

  首先将光标移动到“Name”选项上,在此输入一个RAID卷的名称,一般用默认的名称即可;按“TAB”键,将光标停留在“RAID Level”选项上,在此按向上或向下的箭头按键,可以选择RAID的类型——RAID 0或者RAID 1;根据自己的实际需要选择RAID类型后,按“TAB”键将光标移动到“Strip Size”选项上,选择串列值,一般选择“128KB”。完成上述设置后,按“TAB”键,使光标停留在“Create Volume”上。

  按下回车键,此时会出现一条提示信息,询问是否确认创建RAID系统。

  小提示:

  注意,如果是创建RAID 0这种类型的RAID系统,必须在创建前备份硬盘上的数据,否则一旦创建RAID 0系统,则硬盘上的所有数据及分区都会被删除。

  按“Y”键确认创建RAID,此时会回到主界面,在窗口的下方会发现硬盘的信息已经发生改变,显示已经创建了一个RAID卷。

  按“Esc”键,此时会出现确认是否退出的提示信息,按“Y”键退出RAID配置程序,此时系统重新启动。

  4、硬盘分区及安装系统

  如果创建的RAID系统是RAID 1,那么系统会自动将主盘上的数据备份到从盘上,此时如果主盘上已经安装了操作系统,则可以直接进入Windows,只要在进入Windows后安装Intel的ICH5R RAID驱动程序即可。

  如果创建的是RAID 0,那么两块硬盘上的数据会全部被删除,此时要在DOS下对硬盘重新进行分区。分区的方法与常规的硬盘分区没有什么区别。分区完成后,在安装操作系统时,如果是安装Windows 2000/XP等NT核心的系统,则必须在出现“Press F6 if you need to install a third party SCSI or RAID driver……”这样一段提示语的时候按“F6”键,然后插入ICH5R的RAID驱动程序软盘,按“S”键装载该驱动。具体的操作方法与其他SATA控制芯片在安装Windows2000/XP时加载SATA控制器驱动时一样。

  SATA接口BIOS设置解析

  SATA硬盘和传统IDE接口硬盘在应用设置上有诸多的不同,很多电脑用户抱怨,具备SATA接口的主板在BIOS中的相关设置非常复杂,映射关系常常让人摸不着头脑,因此本篇对常见的问题做一些解析,希望能有助大家用好SATA硬盘。

  ICH5 南桥、Award BIOS的设置

  ICH5、ICH5R系列南桥是搭配i865PE/i875芯片组的,是第一代正式在南桥中集成SATA功能的芯片,也是目前较为成熟和兼容性较好的产品。它支持2个ATA100接口和2个SATA150接口,一共支持4个IDE设备和2个SATA设备,其中ICH5R还支持SATA RAID0和RAID1。我们测试用的主板是一块升技的IS7,这款主板采用i865PE/ICH5R芯片组,BIOS是我们平时用得最多的AWARD6.0版。

  在“系统周边设备”选项里,可以看到IDE和SATA的设置。

  对于OnChip Serial ATA来说一共有5项可修改值:

  Disable(禁止)、Auto(自动)、Enhanced Mode(增强模式)、Combine Mode(组合模式)、SATA Only(仅仅为SATA模式)。

  Disable和Auto的意思一目了然,就不用说了,但是下面3种呢?看下面的表格。

  是不是有点复杂?其实采用默认的Auto设置实质上和Enhanced Mode一样,一般BIOS里的默认设置也都是Enhanced Mode,因为只有Enhanced Mode 才能完全启用6个设备,这时候会开启4个IDE通道,其中传统的IDE在一、二通道,SATA在三、四通道。

  那么Combine Mode是起什么作用的?一会禁用这个,一会禁用那个的,用得着这么麻烦吗?其实这个模式主要是为了解决某些老型号的硬盘和光驱对ICH5的兼容性问题,所以实际用到的情况极少。

  如果只有SATA设备(SATA接口的刻录机已经有上市产品了),也可以避免麻烦的设置,只用SATA Only。

 

软RAID解决方案

  一、创建动态磁盘

  在安装Windows 2003 Server时,硬盘将自动初始化为基本磁盘。我们不能在基本磁盘分区中创建新卷集、条带集或者RAID-5组,而只能在动态磁盘上创建类似的磁盘配置。也就是说,如果想创建RAID-0、RAID-1或RAID-5卷,就必须使用动态磁盘。在Windows 2003 Server安装完成后,可使用升级向导将它们转换为动态磁盘。

  在将一个磁盘从基本磁盘转换为动态磁盘后,磁盘上包含的将是卷,而不再是磁盘分区。其中的每个卷是硬盘驱动器上的一个逻辑部分,还可以为每个卷指定一个驱动器字母或者挂接点。但是要注意的是只能在动态磁盘上创建卷。动态磁盘有以下几个优于基本磁盘的特点:

  卷可以扩展到包含非邻接的空间,这些空间可以在任何可用的磁盘上。

  对每个磁盘上可以创建的卷的数目没有任何限制。

  Windows 2003将动态磁盘配置信息存储在磁盘上,而不是存储在注册表中或者其他位置。同时,这些信息不能被准确地更新。Windows 2003将这些磁盘配置信息复制到所有其他动态磁盘中。因此,单个磁盘的损坏将不会影响到访问其他磁盘上的数据。

  一个硬盘既可以是基本的磁盘,也可以是动态的磁盘,但不能二者兼是,因为在同一磁盘上不能组合多种存储类型。但是,如果计算机有多个硬盘,就可以将各个硬盘分别配置为基本的或动态的。

  1、从基本磁盘升级到动态磁盘:

  ①依次单击“开始”->“所有程序”->“管理工具”->“计算机管理”选项,显示“计算机管理”窗口。

  ②在左侧控制台中依次展开“存储”->“磁盘管理”选项,以显示计算机中安装的所有磁盘。

  ③右击要设置为动态磁盘的硬盘,并在弹出的快捷菜单中选择“升级到动态磁盘”选项,将显示“升级到动态磁盘”对话框。

  ④选中要升级的磁盘,然后单击“确定”:按钮,将显示“要升级的磁盘”对话框,在这里要求用户对要升级为动态磁盘的硬盘进行确认。这样做的原因很简单,因为这一升级操作是不可逆的。也就是说,基本磁盘可以升级为动态磁盘,但动态磁盘却不能恢复为基本磁盘。

  ⑤单击“升级”按钮,将显示“磁盘管理”提示框,系统再次要求用户对磁盘升级予以确认。当将该磁盘升级为动态磁盘后,Windows98/Me等操作系统将不能再从该磁盘引导启动。

  ⑥单击“是”按钮,将显示“升级磁盘”警告框。在这里提示要升级磁盘上的文件系统将被强制卸下,并要求用户对该操作进一步予以确认。

  ⑦单击“是”按钮,系统将开始磁盘的升级过程。当升级完成后,将显示 “确认”警告框,单击“确定”按钮将重新启动计算机,以完成磁盘的升级过程。

  在升级到动态磁盘时,应该注意以下几个方面的问题:

  必须以管理员或管理组成员的身份登录才能完成该过程。如果计算机与网络连接,则网络策略设置也可能阻止我们完成此步骤。

  将基本磁盘升级到动态磁盘后,就再也不能将动态卷改回到基本分区。这时惟一的方法就是,必须删除磁盘上的所有动态卷,然后使用“还原为基本磁盘”命令。

  在升级磁盘之前,应该关闭在那些磁盘上运行的程序。

  为保证升级成功,任何要升级的磁盘都必须至少包含1MB的未分配空间。在磁盘上创建分区或卷时,“磁盘管理”工具将自动保留这个空间,但是带有其他操作系统创建的分区或卷的磁盘上可能就没有这个空间。

  扇区大小超过512字节的磁盘,不能从基本磁盘升级为动态磁盘。

  一旦升级完成,动态磁盘就不能包含分区或逻辑驱动器,也不能被非Windows 2003的其他操作系统所访问。

  2、将新磁盘设置为动态磁盘

  ①计算机安装新硬盘后,当第一次访问“计算机管理”中的“磁盘管理”工具时,将自动运行“写入签名和升级磁盘向导”窗口。

  ②单击“下一步”按钮,将显示“选择要写入签名的磁盘”页面,在该列表中选择要写入签名的磁盘。需要注意的是,磁盘在安装到系统前必须进行签名。

  ③单击“下一步”按钮,将显示“选择要升级的磁盘”页面,选择要升级为动态磁盘的磁盘。

  ④单击“下一步”按钮,将显示“完成写入签名和升级磁盘向导”页面,在这里要求确认签名并升级的磁盘。如果有任何不妥,可单击“上一步”按钮返回并重新进行设置。

  ⑤单击“完成”按钮,动态磁盘升级过程完成。

 

二、实现软RAID

  软RAID也必须在多磁盘系统中才能实现。实现RAID-1最少要拥有两块硬盘,而实现RAID-5则最少要拥有三块硬盘。通常情况下,操作系统所在磁盘采用RAID-1,而数据所在磁盘采用RAID-5。

  1、卷的类型

  ①简单卷

  简单卷由单个物理磁盘上的磁盘空间组成,它可以由磁盘上的单个区域或链接在一起的相同磁盘上的多个区域组成。可以在同一磁盘中扩展简单卷或把简单卷扩展到其他磁盘。如果跨多个磁盘扩展简单卷,则该卷就是跨区卷。

  只能在动态磁盘上创建简单卷。简单卷不能包含分区或逻辑驱动器,也不能由MS-DOS 或Windows 2003以外的其他Windows操作系统访问。如果网络中的计算机还在运行Windows98或更早版本,那么应该创建分区而不是动态卷。

  如果想在创建简单卷后增加它的容量,则可通过磁盘上剩余的未分配空间来扩展这个卷。要扩展一个简单卷,则该卷必须使用Windows 2003中所用的NTFS版本格式化。同时不能扩展基本磁盘上作为以前分区的简单卷。也可将简单卷扩展到同一计算机的其他磁盘的区域中。当将简单卷扩展到一个或多个其他磁盘时,它会变成为一个跨区卷。在扩展跨区卷之后,不删除整个跨区卷便不能将它的任何部分删除。要注意的是跨区卷不能是镜像卷或带区卷。

  ②条带卷

  利用条带卷,可以将两个或者更多磁盘(最多为32块硬盘)的空余空间组成为一个卷。在向条带卷中写入数据时,数据被分割为64KB的块,并均衡地分布在阵列中的所有磁盘上。一个阵列是两个或者多个磁盘的集合。条带卷可以有效地提高磁盘的读取性能,但是它并不提供容错功能,任何一块硬盘的损坏都会导致全部数据的丢失。条带卷类似于RAID-0。

  ③跨越卷

  利用跨越卷,也可以将来自两个或者更多磁盘(最多为 32块硬盘)的空余磁盘空间组成为一个卷。与条带卷所不同的是,将数据写入跨越卷时,首先填满第一个磁盘上的空余部分,然后再将数据写入下一个磁盘,依次类推。虽然利用跨越卷可以快速增加卷的空量,但是跨越卷既不能提高对磁盘数据的读取性能,也不提供任何容错功能。当跨越卷中的某个磁盘出现故障时,存储在该磁盘上的所有数据将全部丢失。

  ④镜像卷

  利用镜像卷即RAID-1卷,可以将用户的相同数据同时复制到两个物理磁盘中。如果其中的一个物理磁盘出现故障,虽然该磁盘上的数据将无法使用,但系统能够继续使用尚未损坏而仍继续正常运转的磁盘进行数据的读写操作,从而通过另一磁盘上保留完全冗余的副本,保护磁盘上的数据免受介质故障的影响。由此可见,镜像卷的磁盘空间利用率只有50%(即每组数据有两个成员),所以镜像卷的成本相对较高。要创建一个镜像卷,必须使用另一磁盘上的可用空间。动态磁盘中现有的任何卷(甚至是系统卷和引导卷),都可以使用相同的或不同的控制器镜像到其他磁盘上大小相同或更大的另一个卷。最好使用大小、型号和制造厂家都相同的磁盘作镜像卷,以避免可能产生的兼容性错误。

  镜像卷可以大大地增强读性能,因为容错驱动程序同时从两个磁盘成员中同时读取数据,所以读取数据的速度会有所增加。当然,由于容错驱动程序必须同时向两个成员写数据,所以它的写性能会略有降低。镜像卷可包含任何分区(包括启动分区或系统分区),但是镜像卷中的两个硬盘都必须是Windows 2003动态磁盘。

  ⑤RAID-5卷

  在RAID-5卷中,Windows 2003通过给该卷的每个硬盘分区中添加奇偶校验信息带区来实现容错。如果某个硬盘出现故障,Windows 2003便可以用其余硬盘上的数据和奇偶校验信息重建发生故障的硬盘上的数据。

  由于要计算奇偶校验信息,所以RAID-5卷上的写操作要比镜像卷上的写操作慢一些。但是,RAID-5卷比镜像卷提供更好的读性能。其中的原因很简单,Windows 2003可以从多个磁盘上同时读取数据。与镜像卷相比RAID-5卷的性价比较高,而且RAID-5卷中的硬盘数量越多,冗余数据带区的成本越低。

posted on 2010-07-13 16:36  shao  阅读(436)  评论(0编辑  收藏  举报

导航