组建RAID从认识开始 手把手教你建磁盘阵列

简介: 最近,刚刚帮朋友装了一台电脑,朋友选择了160GB的SATA硬盘。之前,朋友有一台老的电脑,由于经常在网上下载影片和游戏,因此对硬盘进行了几次升级,分几次购买了几块80GB PATA硬盘。
最近,刚刚帮朋友装了一台 电脑 ,朋友选择了160GB的SATA 硬盘 。之前,朋友有一台老的电脑,由于经常在网上下载影片和游戏,因此对硬盘进行了几次升级,分几次购买了几块80GB PATA硬盘。由于朋友的那台旧电脑实在没法再用,因此打算把几块硬盘组合起来,装进新配的电脑中使用。因此朋友想组成RAID磁盘阵烈进行使用,以提高机器性能和增大磁盘的容量。那么什么是RAID呢?如何实现RAID功能?PATA与SATA硬盘能组建RAID 磁盘阵列 吗?于是笔者进行了整理搜集,得文如下:

  一、什么是RAID?其具备哪些常用的工具模式?

  即然提到了RAID磁盘阵列,那么我们就先来了解一下什么是RAID?所谓的RAID,是Redundant Arrays of Independent Disks的简称,中文为廉价冗余磁盘阵列。由1987年由加州大学伯克利分校提出的,初衷是为了将较廉价的多个小磁盘进行组合来替代价格昂贵的大容量磁盘,希望单个磁盘损坏后不会影响到其它磁盘的继续使用,使数据更加的安全。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控制芯片介绍

  Intel南桥芯片ICH5R、ICH6R集成有SATA-RAID控制器,但仅支持SATA-RAID,不支持PATA-RAID。Intel采用的是桥接技术,就是把SATA-RAID控制器桥接到IDE控制器,因此可以通过BIOS检测SATA硬盘,并且通过BIOS设置SATA-RAID。当连接SATA硬盘而又不做RAID时,是把SATA硬盘当作PATA硬盘处理的,安装OS时也不需要驱动软盘,在OS的设备管理器内也看不到SATA-RAID控制器,看到的是IDE ATAPI控制器,而且多了两个IDE通道(由两个SATA通道桥接的)。只有连接两个SATA硬盘,且作SATA-RAID时才使用SATA-RAID控制器,安装OS时需要需要驱动软盘,在OS的设备管理器内可以看到SATA-RAID控制器。安装ICH5R、ICH6R的RAID IAA驱动后,可以通过IAA程序查看RAID盘的性能参数。
  
  VIA南桥芯片VT8237、VT8237R的SATA-RAID设计与Intel不同,它是把一个SATA-RAID控制器集成到8237南桥内,与南桥里的IDE控制器没有关系。当然这个SATA-RAID控制器也不见得是原生的SATA模式,因为传输速度也没有达到理想的SATA性能指标。BIOS不负责检测SATA硬盘,所以在BIOS里看不到SATA硬盘。SATA硬盘的检测和RAID设置需要通过SATA-RAID控制器自己BootROM(也可以叫SATA-RAID控制器的BIOS)。所以BIOS自检后会启动一个BootROM检测SATA硬盘,检测到SATA硬盘后就显示出硬盘信息,此时按快捷键Tab就可以进入BootROM设置SATA-RAID。在VIA的VT8237南桥的主板上使用SATA硬盘,无论是否做RAID安装OS时都需要驱动软盘,在OS的设备管理器内可以看到SATA-RAID控制器。VIA的芯片也只是集成了SATA-RAID控制器。

  NVIDIA的nForce2/ nForce3/ nForce4芯片组的SATA/IDE/RAID处理方式是集Intel和VIA的优点于一身。第一是把SATA/IDE/RAID控制器桥接在一起,在不做RAID时,安装XP/2000也不需要任何驱动。第二是在BIOS里的SATA硬盘不像Intel那样需要特别设置,接上SATA硬盘BIOS就可以检测到。第三是不仅SATA硬盘可以组成RAID,PATA硬盘也可以组成RAID,PATA硬盘与SATA硬盘也可以组成RAID。这给需要RAID的用户带来极大的方便,Intel的ICH5R、ICH6R,VIA的VT8237都不支持PATA的IDE RAID。

三、NVIDIA芯片组BIOS设置和RAID设置简单介绍

  nForce系列芯片组的BIOS里有关SATA和RAID的设置选项有两处,都在Integrated Peripherals(整合周边)菜单内。

  SATA的设置项:Serial-ATA,设定值有[Enabled], [Disabled]。这项的用途是开启或关闭板载Serial-ATA控制器。使用SATA硬盘必须把此项设置为[Enabled]。如果不使用SATA硬盘可以将此项设置为[Disabled],可以减少占用的中断资源。

  RAID的设置项在Integrated Peripherals/Onboard Device(板载设备)菜单内,光标移到Onboard Device,按进入如子菜单:RAID Config就是RAID配置选项,光标移到RAID Config,按就进入如RAID配置菜单:

  第一项IDE RAID是确定是否设置RAID,设定值有[Enabled], [Disabled]。如果不做RAID,就保持缺省值[Disabled],此时下面的选项是不可设置的灰色。

  如果做RAID就选择[Enabled],这时下面的选项才变成可以设置的黄色。IDE RAID下面是4个IDE(PATA)通道,再下面是SATA通道。nForce2芯片组是2个SATA通道,nForce3/4芯片组是4个SATA通道。可以根据你自己的意图设置,准备用哪个通道的硬盘做RAID,就把那个通道设置为[Enabled]。

  设置完成就可退出保存BIOS设置,重新启动。这里要说明的是,当你设置RAID后,该通道就由RAID控制器管理,BIOS的Standard CMOS Features里看不到做RAID的硬盘了。

  BIOS设置后,仅仅是指定那些通道的硬盘作RAID,并没有完成RAID的组建,前面说过做RAID的磁盘由RAID控制器管理,因此要由RAID控制器的RAID BIOS检测硬盘,以及设置RAID模式。BIOS启动自检后,RAID BIOS启动检测做RAID的硬盘,检测过程在显示器上显示,检测到硬盘后留给用户几秒钟时间,以便用户按F 1 0 进入RAID BIOS Setup。

nForce芯片组提供的RAID(冗余磁盘阵列)的模式共有下面四种:

RAID 0:硬盘串列方案,提高硬盘读写的速度。

RAID 1:镜像数据的技术。

RAID 0+1:由RAID 0和RAID 1阵列组成的技术。

Spanning (JBOD):不同容量的硬盘组成为一个大硬盘。

四、操作系统安装过程介绍

  按F10进入RAID BIOS Setup,会出现NVIDIA RAID Utility -- Define a New Array(定义一个新阵列)。默认的设置是:RAID Mode(模式)--Mirroring(镜像),Striping Block(串列块)--Optimal(最佳)。

  通过这个窗口可以定义一个新阵列,需要设置的项目有:选择RAID Mode(RAID模式):Mirroring(镜像)、Striping(串列)、Spanning(捆绑)、Stripe Mirroring(串列镜像)。

  设置Striping Block(串列块):4 KB至128 KB/Optimal

  指定RAID Array(RAID阵列)所使用的磁盘

  用户可以根据自己的需要设置RAID模式,串列块大小和RAID阵列所使用的磁盘。其中串列块大小最好用默认的Optimal。RAID阵列所使用的磁盘通过光标键→添加。

  做RAID的硬盘可以是同一通道的主/从盘,也可以是不同通道的主/从盘,建议使用不同通道的主/从盘,因为不同通道的带宽宽,速度快。Loc(位置)栏显示出每个硬盘的通道/控制器(0-1)/主副状态,其中通道0是PATA,1是SATA;控制器0是主,1是从;M是主盘,S是副盘。分配完RAID阵列磁盘后,按F7。出现清除磁盘数据的提示。按Y清除硬盘的数据,弹出Array List窗口:如果没有问题,可以按Ctrl-X保存退出,也可以重建已经设置的RAID阵列。至此RAID建立完成,系统重启,可以安装OS了。

  安装Windows XP系统,安装系统需要驱动软盘,主板附带的是XP用的,2000的需要自己制作。从光驱启动Windows XP系统安装盘,在进入蓝色的提示屏幕时按F6键,告诉系统安装程序:需要另外的存储设备驱动。当安装程序拷贝一部分设备驱动后,停下来提示你敲S键,指定存储设备驱动:

  系统提示把驱动软盘放入软驱,按提示放入软盘后,敲回车。系统读取软盘后,提示你选择驱动。nForce的RAID驱动与Intel和VIA的不同,有两个:NVIDIA RAID CLASS DRIVER和NVIDIA Nforce Storage Controller都要安装。

  第一次选择NVIDIA RAID CLASS DRIVER,敲回车系统读入,再返回敲S键提示界面,此时再敲S键,然后选择NVIDIA Nforce Storage Controller,敲回车,系统继续拷贝文件,然后返回到下面界面。


  在这个界面里显示出系统已经找到NVIDIA RAID CLASS DRIVER和NVIDIA Nforce Storage Controller,可以敲回车继续。
系统从软盘拷贝所需文件后重启,开始检测RAID盘,找到后提示设置硬盘。此时用户可以建立一个主分区,并格式化,然后系统向硬盘拷贝文件。在系统安装期间不要取出软盘,直到安装完成。

  剩余的磁盘分区等安装完系统后,我们可以用XP的磁盘管理器分区格式化。用XP的磁盘管理器分区,等于/小于20GB的逻辑盘可以格式化为FAT32格式。大于20GB的格式化为NTF格式。

目录
相关文章
|
6月前
|
监控 算法 Linux
利用mdadm工具构建RAID 0/1/5/6/10磁盘阵列实战(超详细)
利用mdadm工具构建RAID 0/1/5/6/10磁盘阵列实战(超详细)
118 0
|
11月前
|
运维 Linux 虚拟化
服务器制作RAID磁盘阵列并管理
服务器制作RAID磁盘阵列并管理
221 0
|
11月前
|
存储 缓存 安全
磁盘阵列——主流的RAID介绍
磁盘阵列——主流的RAID介绍
616 0
|
Linux
使用软件搭建RAID10
使用软件搭建RAID10
142 0
使用软件搭建RAID10
|
存储 算法 开发工具
服务器硬件及RAID配置实践
1、RAID磁盘阵列介绍 2、创建RAID磁盘阵列
服务器硬件及RAID配置实践
|
存储 算法 架构师
架构师不得不了解的硬件知识 - 磁盘阵列 RAID
什么是RAID? RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。
202 0
架构师不得不了解的硬件知识 - 磁盘阵列 RAID
|
存储 数据安全/隐私保护 算法
|
存储 数据安全/隐私保护 算法