硬raid和软raid.docx_第1页
硬raid和软raid.docx_第2页
硬raid和软raid.docx_第3页
硬raid和软raid.docx_第4页
硬raid和软raid.docx_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、什么是raid,raid的级别和特点:什么是raid呢?全称是“A Case for Redundant of Iexpensive Disks(raid)”,在1987年,由加州大学伯克利大学发表的论文而来,其实就是这个标题的缩写就是raid;中译为“磁盘阵列”;raid就是把几个物理磁盘组合在一起成为一个大的虚拟物理磁盘,主要目的和用途主要有:把若干小容量物理磁盘组成一个大容量虚拟存储设备(以前的物理磁盘的容量都比较小);提高物理存储效率(读、写),或提供允余以提高数据存储的安全性。根据应用方向的不同,raid也分不不同级别,有linear、raid0、raid1、raid5、raid10、raid4、raid6、multipath。常用的有raid0、raid1、raid5、raid10(其实就是0+1)、linear1.1什么是硬件raid和软raid;raid还分为硬件raid和软件raid,硬件raid是通过raid卡来实现的,而软件raid是通过软件来实现的;在企业级应用领域,大部分都是硬件raid。而软件raid由于性价比高,大多数被中小企业所采用;硬件raid是通过raid卡把若干同等容量大小的硬盘,根据使用方向的不同,聚合起来成为一个大的虚拟raid设备(或raid0,或raid1,或者raid5,或raid10.),如果每个硬盘容量不一致,以最小容量的硬盘为基础;它的成员是整个硬盘;软raid是软件把若干同等容量大小的硬盘或分区,根据使用方法的不同,聚合起来成为一个大的虚拟raid设备(或raid0,或raid1,或者raid5,或raid10.),如果每个硬盘容量不一致,以最小容量的硬盘为基础。软raid的成员是整个硬盘或分区;raid总的来说还是应用在生产型项目领域中,一般在商用办公或个人娱乐应用并未被大规模采用。应用领域大多要求性价比低的低端服务器或PC-SERVER;1.2raid的级别及特点;raid有几种级别,linear,raid0(striping),raid1(mirroring),raid4,raid5,raid6,raid10,multipath,and faulty。其中我们常用有raid0、raid1、raid5、raid10.下面我们说说常用的raid0、raid1、raid5以及raid10;1.21什么是软raid0及特点;raid0是把两个或两个以上的容量相同的硬盘或分区,通过raid控制器(硬raid是通过raid卡来实现的,软raid是通过软件来实现的),结合为一个在容量上是raid0下成员的容量的总和,在写入时,要向每个硬盘分区同时写入数据。在硬raid中,raid0的成员是以整个硬盘为单位的,把两个硬盘或两个以上的硬盘通过raid卡绑定成为一个虚拟的磁盘设备,而每个硬盘就是raid0的成员;在软raid0中,raid0的成员是整个硬盘或分区,容量是加入raid0的所有成员容量的总和。在raid0中每个成员的容量都是相同一致的。比如我们把/dev/sdb、/dev/sdc、/dev/sdd三个容量大小为80G的硬盘做成raid0,这时raid0设备的容量就是三个硬盘的总和80*3=240G。当然我们也可以,在写入数据时,系统要向每个硬盘同时写入数据,是以条块的形式写入。比如我们存一份数据linuxsir.tar.gz到raid0的设备中,这份数据是分拆成若干份被分散的写入到raid0中的每个成员中。只有raid0中的每个成员正常运行,并且raid0也正常运行的情况下,这份数据才是完整的。raid0中任何一个成员(硬盘分区)有问题时,raid0便不能运行,同时数据也不是完整的;raid0在读写速度上是比较块的,是普通不做raid的两倍左右(注:实际速度和机器的硬件配置有关),所以raid0常被用于对存储效率要求较高,但对数据安全性要求不高的应用解决方案中;安全性:raid0中有任何一个成员出现故障,整个raid0就不能被激活,数据不能保障;1.22 什么是软raid1及特点;raid1就是把若干相同容量的硬盘或分区,成员与成员之间是镜像关系。在容量上,raid1设备是单个成员的容量。比如两个80G的硬盘做成raid1,这个raid1的设备容量仍是80G。比如我们写入一份数据linuxsir.tai.bz2到raid1设备时,其实是向raid的每个成员都写了一份。比如raid1设备下有两个成员/dev/sdb和/dev/sdc,我们写入linuxsri.tar.bz2到raid1时,/dev/sdb和/dev/sdc都有一份完整的linuxsir.tar.bz2。所以raid1是允余的阵列,一般被用于安全性要求比较高的应用中。因为raid1是镜像允余,所以磁盘利用效率并不高,或者说是“浪费”。这种方案相对来说性价比并不高,一般很少应用。数据读写效率要比raid0慢。安全性:raid1中只要有一个成员是健康的,raid1完全可以激活,而且数据绝对是完整安全的。如果所有的成员有故障,raid1也就报废了。1.23 什么是软raid5及特点;软raid5也是允余安全的,raid5是把至少三个硬盘或分区通过软件虚拟成为一个大的存储设备。在容量上是(n-1)x单个硬盘(分区)容量,比如我们用三块80G硬盘做成raid5,容量就是两块容量的和160G。在写入上,数据被分拆成若干份,分别向raid5的每个成员下写入。比如把linuxsir.tar.ba2写入raid5时,要先把linuxsir.tar.ba2分拆成若干份,分别写入raid5成员中。因为涉及到允余,所以数据在写入速度上并不是很快,没办法和raid0相比,但raid5的写入数据速度没有raid1和raid0快,也没有不做raid的磁盘写入速度要快;因为raid5在容量损失比较小,有允余安全故障,另外写入速度比较快,从整体上来看,性价比比较高,所以被大范围采用;安全性:当raid5中的成员中有一个发生故障时,raid5一样能启动和正常运行,只要n-1(注n3)块磁盘或分区不出现故障,raid5上的数据就是安全,对于一个文件村到raid5设备中,只有成员是n-1(注n3)无故障时,这份文件才是完整的。比如raid5有四个硬盘或分区做的,当一个硬盘或分区挂掉了,并不影响整个raid5上数据的完整性和安全性。1.24 什么是软raid10及特点:软raid10也是允余安全阵列,是raid0+1的集成,raid10是把至少四个硬盘或分区通过软件虚拟成为一个大的存储设备。在容量是:n2单个硬盘或分区容量,比如我们用四块80G硬盘做成raid10.容量就是两块容量的和4280=160G。做raid10所需要的硬盘或分区个数是偶数的。raid10,有raid1的镜像特点,还哟偶raid0的速度。可以这么理解raid10,比如有四个硬盘做成的raid10,过程是先把两个硬盘做成raid1,然后在两个raid1的基础上再做成raid0。从理论上来说,raid10应该继承raid0的速度和raid10的允余安全。但结果我在软raid0、raid1、raid5、raid10的测试过程中发现raid10的写入速度是最慢的,测试方法是用超过1G的大文件几盘复制。结果发现速度由高低的顺序是:raid0、不做raid、raid1、raid5、raid102 在linux中,软raid的创建和管理:在linux中,软raid是通过mdadm来创建和管理的,mdadm是一个专用创建和管理raid的软件,在linux中,大多发行版本已经默认安装,mdadm能创建任何级别的软raid;在本节中,raid创建并不是目的,我们还要查看学会raid的状态,启动、停止raid。还要学会使用raid。所以raid的使用应该包括创建、管理和使用。raid的使用就是在raid设备上创建文件系统,然后存储应用;流程是:【raid创建】-【raid管理】-【raid的使用】|【raid的维护】2.1 raid的创建方法:创建raid有两个方法,第一种方法:用mdadm通过-C或-create参数来创建raid。这种方法,是把raid信息写到每个raid成员的superblocks(超级块)中,在每个raid成员的超级块中,都会记录raid的级别、成员、raid的UUID等.这种方法把raid的信息记录在各个成员的superblocks(超级块)中。这种方法对于重装系统或系统发生灾难来说,有利于现有raid的恢复;这种方法是最常用的;第二种方法:用mdadm通过-B或-build参数来创建raid。这种方法并不把raid的信息写入raid成员的superblocks(超级块)中,所以我们无法通过查看raid成员信息来获得raid的级别,以及raid的成员等;这种方法对于重装系统或系统发生灾难来说,不利于现有raid的恢复;如果你想用第二种方法来创建raid,可以在下面的语法中,把-C或-create换成-B或-build。语法:创建把raid信息写入raid每个成员的superblocks(超级块)中;mdadm -C -v /dev/mdX -lY -nZ riad成员或mdadm -create -verbose /dev/mdX -level=Y -RAID-devices=Z riad成员注:-C是-create的缩写,表示创建的意思;这种方法是创建把raid信息写入每个raid成员superblocks(超级块)的方法。这是最常用的方法。-v是-verbose,显示创建过程中详细的事件;如果把-C或-create换成-B或-build,就是创建raid的另一种方法,不把raid信息写入raid成员的superblocks(超级块)中,raid设备:/dev/mdX,raid设备在linux中,大多是/dev/md0,/dev/md1.第一个设备从/dev/md0开始。比如你已经有raid0设备是/dev/md0,你再想做一个raid5,那就是/dev/md1,以此类推;raid级别:用-lY或-level=Y表示,Y是raid的级别。raid的级别有raid0就用0表示,raid1就用1表示,raid5就用5表示,raid10就用10表示。raid的级别是根据自己的使用方向和现有磁盘和分区个数来定位。如果你就想高速读写、大容量,对数据安全性要求不高,那就用raid0,如果对数据要求较高,可以用raid1或raid5,再者就是raid10。比如-l0或-level=0表示raid0,-l5或-level=5 表示raid5,-l1或-level=1表示raid1,-l10或-level=10表示raid10;-nZ或-RAID-devices=Z表示raid成员的个数,比如我们把三个硬盘分区做成一个raid,那就是3个设备。就要写成这样-n3或-RAID-devices=3;值得注意的是raid0和raid1至少需要两个硬盘,raid5至少需要三个设备,raid10至少四个设备(偶数);raid成员:也就是raid的组成设备,要一个一个的列出来,每个设备后要用空格来隔开;比如我们把/dev/sdb、/dev/sdc、/dev/sdd三个硬盘做成raid0,在raid设备这块,我们要写成/dev/sdb /dev/sdc /dev/sdd;软件raid的成员还可以分区,比如/dev/sdb1、/dev/sdb.举例一:我们要做一个raid0,成员是/dev/sdb、/dev/sdc两个硬盘设备。我们要运行如下命令;mdadm -C -verbose /dev/md0 -l0 -n2 /dev/sdb /dev/sdc或mdadm -C -verbose /dev/md0 -level=0 -RAID-devices=2 /dev/sdb /dev/sdc如果我们想把/dev/sdb1、/dev/sdc1和/dev/sdd1三个分区做成raid0呢?mdadm -C -v /dev/md0 -l0 -n3 /dev/sdbcd1或mdadm -C -verbose /dev/md0 -level=0 -RAID-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1举例二:我们要做一个raid5,成员是/dev/sdb、/dev/sdc、/dev/sdd三个设备,我们要运行如下命令;mdadm -C -v /dev/md0 -l5 -n3 /dev/sdbcd或mdadm -C -verbose /dev/md0 -level=5 -RAID-devices=3 /dev/sdb /dev/sdc /dev/sdd如果我们想把/dev/sdb1、/dev/sdc1、/dev/sdd1三个分区做成raid5呢?mdadm -C -v /dev/md0 -l5 -n3 /dev/sdbcd1或mdadm -C -verbose /dev/md0 -level=5 -RAID-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1创建完成后,raid也就立即启动了。我们会发现有类似如下一行的提示信息:mdadm:array /dev/md0 started.我们也可以通过下面的命令来查看raid的信息;mdadm -Ds /dev/md0mdadm -D /dev/md02.2 raid管理工具;raid的管理包括创建、启动、状态查看等一系列工具,我们只说常用的使用方法;2.21 raid的启动方法;raid的启动有两种方法,一种是指定raid设备和raid成员的办法来启动raid,另一种办法是通过加载raid默认的配置文件来启动。第一种方法:不通过读取mdadm.conf来启动raid;适用情况是你没有配置/etc/mdadm.conf文件;语法:mdadm -A raid设备 raid成员注:-A 同-assemble,意思是激活一个已经存在的raid;raid设备,就是/dev/md0或/dev/md1.根据你所创建的raid设备为准;raid成员,就是你要启动的raid,其下属设备有那些,要一个一个的列出来,中间以空格分开;举例:比如我要启动一个raid,设备是/dev/md0,其下有成员是/dev/sdb和/dev/sdc,所以我要用下面的办法;mdadm -A /dev/md0 /dev/sdb /dev/sdc注:这种情况,是没有配置raid的配置文件/etc/mdadm.conf时,所使用的启动方法;如果你已经配置好了/etc/mdadm.conf文件,就可以用mdadm -As来启动;第二种方法:利用配置好的/etc/mdadm.conf来启动raid;mdadm -A raid设备或mdadm -As注:这种启动方法的前提是要配置/etc/mdadm.conf文件,要把你系统中所有的raid,都写入这个文件,然后就可以简单的用这个命令来启动了;-A同-assemble,意思是激活一个已经存在的raid;raid设备,就是/dev/md0或/dev/md1.根据你所创建的raid设备为准;举例:mdadm -A /dev/md0mdadm -As注:比如我配置好/etc/mdadm.conf后,启动raid设备/dev/md0,就用上面的办法。具体mdadm.conf的写法,请参见raid的配置文件一节;2.22 raid管理工具一些常用参数说明;mdadm 参数raid设备raid成员-A 或-assemble激活一个raid;-S或-stop停止正在运行的设备;-s或-scan扫描raid设备;-D或-detail查看raid的详细信息;-examine查看raid成员的详细信息;注:其中中的选项是可选的。举例:rootlinuxsir:#mdadm -Asrootlinuxsir:#mdadm -Ssrootlinuxsir:#mdadm -Dsrootlinuxsir:#mdadm -examine /dev/sdb注:上面的这些标例,都是在配置好/dev/mdadm.conf的情况下,运行的,如果你没配置好mdadm.conf文件,请指定raid设备及其成员;其中,-As 是搜索/etc/mdadm.conf,然后根据mdadm.conf配置好的raid信息来启动raid。-Ss是搜索正在运行的raid,然后停止。-Ds搜索raid,查看raid信息;-examine /dev/sdb 是查看其中一块硬盘的raid信息,这个很有用。比如你忘记了raid的成员和UUID,想恢复现有的raid,就要用这个来查看,然后重新让raid启动起来。比如系统有一个raid,但在/etc/mdadm.conf中没有相应的记录raid信息。我不知道这个raid是那个类型的,是raid0,还是raid1,还是raid5?到底机器中有几个raid?如果你是一个新接手的管理员,应该想知道这些信息。那就是一个一个硬盘,一个一个的分区查看过去。从中找出系统中所有的raid。然后一个一个的恢复。这时就要用到-examine这个参数了;rootlinuxsir:#fdisk -lrootlinuxsir:#mdadm -examine /dev/sdb/dev/sdb:Magic:a92b4efcVersion:00.90.00UUID:35ela3e6:ed59c368:e5bc9166:5004fe52Creation Time:Wed Aug 1 07:11:43 2007RAID Level:RAID0Used Dev Size:0RAID Devices:2Total Devices:2Preferred Minor:0Update Time:Thu Aug 2 07:43:30 2007State:activeActive Devices:2Working Devices:2Failed Devices:0Spare Devices:0Checksum:8f8a235e-correctEvents:0.29Chunk Size:64KNumber Major Minor RAIDDevice Statethis 0 8 16 0 active sync /dev/sdb0 0 8 16 0 active sync /dev/sdb1 1 8 32 1 active sync /dev/sdc注:首先:我们用fdisk -l查看一下机器中所有硬盘和分区,如果不能完全列出,请指定具体硬盘。其次:我们查看一下某个硬盘或分区上是否有raid信息,比如我查看的是/dev/sdb,结果显示出,/dev/sdb是raid0设备的一个成员,/dev/sdb和/dev/sdc共同组成的raid0;得到这些信息有何用呢?我们就可以激活raid,或重写/etc/mdadm.conf,让raid重新运行起来。在此过程中,千万不要用-C或-create参数来重新创建raid,否则你以前存在的raid就被破坏,里面的数据当然也会一无所有!切记。在一个有数据的raid中,不能随便用-C参数。如果用了-C或-create就是创建一个新的raid设备!2.3 raid的配置文件;raid并不是一定一要配置文件,但有配置文件,会方便管理,比如raid最精简的方法执行、状态查看.也需要raid的配置文件。如果没有配置文件,还要指定raid成员;raid的配置文件是mdadm.conf位于/etc目录,如果你没有这个文件,可以自己创建一个;当我们做好raid后,首先要配置这个文件;把你所有的raid配置信息都写入这个文件。我们可以自己手动编写。参照mdadm.conf配置文件的示例就比较方便。你也可以用下面的方法,要先做好/etc/mdadm.conf的备份;rootlinuxsir:#mv /etc/mdadm.conf /etc/mdadm.conf.bak第一步:搜索raid;搜索raid是以激活raid为前提条件,否则下面的命令不会有什么作用;请参见激活raid的办法;语法:mdadm -Ds注:其中-D表示-detail,-s表示-scan,两者结合起来就是-Ds;提示:运行查询raid的时,要首先激活raid;举例:rootlinuxsir:#mdadm -DsARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35e1a3e6:ed59c368:e5bc9166:5004fe52第二步:查询RAID的详细信息,主要查看RAID的成员有那些;语法:mdadm -D RAID设备举例:下面查询已经启动了的RAID设备/dev/md0的详细信息;rootlinuxsir:#mdadm -D /dev/md0/dev/md0:Version:00.90.03Creation Time:Wed Aug 1 07:11:43 2007RAID Level:RAID0Array Size:156249856(149.01 GiB 160.00GB)RAID Devices:2Total Devices:2Preferred Minor:0Persistence:Superblock is persistentUpdate Time:Thu Aug 2 07:22:27 2007State:cleanActive Devices:2Working Devices:2Failed Devices:0Spare Devices:0Chunk Size:64KUUID:35ela3e6:ed59c368:e5bc9166:5004fe52Events:0.21Number Major Minor RAIDDevices State0 8 16 0 active sync /dev/sdb1 8 32 1 active sync /dev/sdb注:通过查询详细信息,我们得到/dev/md0是raid0,下面两个成员/dev/sdb和/dev/sdc;UUID为35ela3e6:ed59c368:e5bc9166:5004fe52;这个raid是有超级块的;第三步:书写raid的配置文件mdadm.conf;rootlinuxsir:#mdadm -Ds /etc/mdadm.conf 注:把查询出来的raid信息写到mdadm.conf中;(自动加载raid)rootlinuxsir:#more /etc/mdadm.conf 注:看看有没有内容写进来?ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52因为我们在前面已经通过mdadm -D /dev/md0 得知其下有成员/dev/sdb和/dev/sdc两块硬盘。所以我们要修改一下mdadm.conf的内容。要在加上/dev/md0的成员/dev/sdb和/dev/sdc;用编辑器打开/etc/mdadm.conf;在下面类似的一行;ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52修改成ARRAY /dev/md0 level=RAID0 num-devices=2 UUID=35ela3e6:ed59c368:e5bc9166:5004fe52 devices=/dev/sdb,/dev/sdc其实也就是把/dev/md0这个RAID设备的成员指定出来,每个设备之间要用逗号隔开。或者写成devices=/dev/sdbc类似的写法也行;我们来看一下/dev/md0这行,其中/dev/md0这行是一个RAID0设备,由两个成员组成,/dev/md0的UUID=35ela3e6:ed59c368:e5bc9166:5004fe52,两个成员分别是/dev/sdb和/dev/sdc两个硬盘;其实我们无论添加多少raid设备,都可以通过这种方法写入raid配置问价/etc/mdadm.conf中,每个raid设备一行;写好后,我们要重启一下raid;rootlinuxsir:#mdadm -Ss或rootlinuxsir:#mdadm -stop -scanmdadm:stopped /dev/md0rootlinuxsir:#mdadm -As或rootlinuxsir:#mdadm -assemble -scanmdadm:/dev/md0 has been started with 2 drives.注:-S和-stop相同,表示停止raid。而-s和-scan相同,表示扫描raid。-A和-assemble表示激活raid;这些参数都比较简单,查查man和help就知道了;激活raid后,我们要通过查看raid设备分区、文件系统初始化,挂载方法;既然我们已经把raid设备做好了,我们就要使用这个设备。raid做好后,类似一个没有格式化的新硬盘。如果我们拿到新硬盘时第一步是做什么?对,是分区和格式化,安装操作系统。raid做好后,没有文件系统,一样是没办法用的,所以我们做好raid后,要来创建文件系统;raid只不过是把几个硬盘或分区绑定在一起成为一个大的虚拟物理存储设备。如果我们要对这个大的虚拟设备进行使用,就要在这个设备上创建文件系统才行。linux目前可用的文件系统有reiserfs、xfs、ext3,我推荐reiserfs和xfs,感觉这个比较安全点。虽然现在有超强的zfs,但我认为还是处于小白鼠阶段。对于重量级应用来说,我们还是观察一段时间再说。raid做好后,我们要为它进行进行文件系统初始化,当初始化完成后,我们就可以挂载使用了。在一般情况下,我们可以把做好的raid挂载到/home,我们可以把所有的存储性文件。在linux中,创建文件系统的工具有mkfs.xfs(创建xfs文件系统),mkfs.jfs(创建jfs文件系统),mkfs. reiserfs(创建reiserfs文件系统),mkfs.ext3(创建ext3文件系统).。我们推荐的是reiserfs和xfs,不推荐ext2和ext3,为什么不推荐?因为实践是检验真理的唯一标准,性能不如人、安全不如人,怎么用?我不是ext文件系统的专家,我只用最方便,维护比较容易的文件系统。raid也可以分区来使用,但以我看来,大可不必,凡是能用到raid的,大多是服务器领域。我们可以把raid做成后,挂载到/home目录上,有关数据存储的都放在raid上。操作系统并不安装在raid上,当操作系统故障的时候,我们仅仅是修复或重装操作系统,对数据存储的raid没有任何影响。就是重装操作系统,我也能在几分钟之内恢复raid。如果你想把raid再进行分区是同,可以用fdisk、parted或cfdisk来进行分区工作,也可以尝试lvm的来对分区进行管理,lvm能自动调整分区的大小。当然,我不会推荐raid+lvm,或对raid进行分区操作。raid做好后,我们就像使用物理硬盘一样使用它,比如根据前面的列子,把/dev/sdb和/dev/sdc两个硬盘做成raid0,其设备为/dev/md0,我们就可以对/dev/md0进行和物理硬盘一样的操作。如果我们不分区,只是进行创建文件系统,那就比较简单了。比如我们在/dev/md0上创建reiserfs文件系统,我们可以用mkfs. reiserfs命令来完成。第一步:查看/dev/md0设备是否存在,以及它的容量; rootlinuxsir:#fdisk -l /dev/md0Disk /dev/md0:159.9GB,159999852544bytes2heads,4sectors/track,39062464cylindersUnits=cylinders of 8 * 512=4096bytesDisk /dev/md0 doesnt contain a valid partition table注:我们可以看到/dev/md0设备有158.0GB的容量,不包含有效分区。如果你想要用分区操作,请用fdisk /dev/md0、或cfdisk /dev/md0或parted /dev/md0来操作;第二步:创建文件系统;在这里我们是计划用reiserfs文件系统;rootlinuxsir:#mkfs. reiserfs /dev/md0mkfs. reiserfs 3.6.19(2003 )A pair of credits:.Continue(y/n):y注:在这里输入y,就进行创建文件系统了;.ReiserFS is successfully created on /dev/md0.这样文件系统reiserfs就创建成功了。如果你想创建xfs文件系统,就用mkfs.xfs /dev/md0,其它文件系统也类似.第三步:挂载文件系统并使用;rootlinuxsir:#mkdir /mnt/datarootlinuxsir:#mount /dev/md0 /mnt/datarootlinuxsir:#df -lh /dev/md0文件系统 容量 已用 可用 已用% 挂载点/dev/md0 150G 33M 149G 1% /mnt/RAID0注:这样就将设备/dev/md0设备挂载到/mnt/RAID0上了。可以看到设备大小为150G。已使用33M,挂载点为/mnt/RAID0。我们可以向设备里存储文件;其实根据linux文件系统的结构,以及最新linux软件方面易用的特点。我们完全可以把/home独立出来。把raid设备挂载到哦/home目录上。凡是涉及用户或数据存储的,都可以放在/home中,比如数据库,网络服务器有关数据存储的,都指定到/home中的文件夹中。所有的一切都是根据方便管理为前提。如果你的raid是在安装系统后创建的,如果挂载到linux先有目录下,要先做好相应目录的数据迁移到raid设备中,然后再把raid挂载到linux目录中。比如你想把raid挂载到/home目录中,可以先创建一个临时的录,把raid挂到这个临时的目录上,接着再把/home目录下的文件都移到raid上,然后再把raid卸载,在重新挂载到/home中,这样/home的数据就完迁移了。至于如何操作系统安装或迁移到raid上,不同的linux发行版有不同的方法。Fedora或Redhat在安装的过程中,就为我们提供了在raid1上安装系统。其它的发行版是否支持,不太知道,Slackware是不支持。如果你想把系统移植到raid1中,可能需要安装好系统后,再进行移植。感觉软raid1在一块硬盘上做,没太大的必要,如果要做raid1,也要在两个硬盘上(或两个属于不同硬盘的分区上来做)。如何开机挂载raid设备,不同的发行版也有自己的方法,流程是先激活raid,然后才是挂载。4.软raid的高级进阶及维护;raid做好以后,并不是万事大吉了,还要进行日常维护;比如某个硬盘(或分区)坏掉,我们可以在不停机的情况下换上。或者我们为raid做一个允余的硬盘或分区,当raid发生故障时,允余硬盘或分区第总推上工作,能实现零停机任务。4.1 如何自己向已存在的raid中,添加一块硬盘或分区;raid有几种模式,比如创建、管理。下面我们所说的就是raid的管理模式Manage,也可以说是raid的进阶应用。管理模式的目的,仅仅是为了把有问题的raid成员换掉,或者为了管理的需要把其中一个raid成员由另一个来替换,也可能是为了安全需要,让新增加的硬盘或分区当做raid的备用(spare)成员;在管理模式中,raid的真正成员个数并不改变。比如我们做raid5是,用的是三个硬盘或分区。在增加raid成员时,raid5仍是三个成员,容量还是保持不变,如果三个raid成员完全正常健康,新增加的成员,仅仅是备用(spare)成员。备用成员的用途就是当raid的真正成员发生问题时,备用成员会马上启动,仅仅是起到安全的允余的作用;我们要向一个既已存在raid中,添加或移除一个硬盘或分区,我们要用到mdadm工具的-f和-r以及-a参数;mdadm /dev/mdX -f raid成员mdadm /dev/mdX -r raid成员mdadm /dev/mdX -a raid成员注-f 同 -fail表示把一个设备列为有问题的设备,以便用-r或-remove参数移除;-r 同 -remove表示把raid中的一个成员移出raid;-a 同 -add 表示向一个raid中添加一个成员;-re-add 重新把最近移除的raid成员重新添加到raid中;值得一提的是,这些参数的运用,必须是在raid正常运行的情况进行。其中raid设备是/dev/mdX,X是一个大于0的整数,raid成员是一个硬盘或分区。添加设备并不会把raid的容量扩大,仅仅是为了添加备用成员,比如在raid1、raid5和raid10中特加有用。当一个raid成员发生故障的时候,要用这种方法来让新成员顶替工作;举例:rootlinuxsir:#mdadm /dev/md0 -f /dev/sdb3rootlinuxsir:#mdadm /dev/md0 -r /dev/sdb3rootlinuxsir:#mdadm /dev/md0 -a /dev/sdb3注:当我们想把一个raid的成员/dev/sdb3移除raid设备/dev/md0时,要首先标注它为有问题的(也可能是完全正常的,为了管理需要)。然后 用-r参数移除,接着用-a参数再添加一个设备/dev/sdb5到raid设备/dev/md0中;当我们用mdadm -D /dev/md0查看raid的状态时,我们会看到raid的详细信息。比如是否正常、raid成员.下面是我们需要掌握的;Raid Level:注:阵列级别;比如raid5Array Size:注:阵列容量大小;Used Dev Size:注:raid单位成员容量大小,也就是构成raid的成员硬盘或分区的容量的大小;Raid Devices:注:raid成员的个数;Total Devices:raid中下属成员的总计个数,因为还有允余硬盘或分区,也就是spare,为了raid的正常运行,随时可以推上去加入raid的;State:clean,degraded,recovering注:状态,chean表示正常,degraded表示有问题,recovering表示正在恢复或构建;Active Devices:被激活的raid成员个数;Working Devices:注:正常的工作的raid成员个数;Failed Devices:出问题的raid成员;Spare Devices:备用raid成员个数,当一个raid的成员出问题时,其它硬盘或分区来顶替时,raid要进行构建,在没构建完成时,这个成员也会被认为是spare设备;Rebuild Status:注:raid的构建进度,比如38%complete,表示构建到38%;UUID:注:raid的UUID指,系统中是唯一的;Number Major Minor RaidDevices State0 8 17 0 active sync /dev/sdb1 注:表示这个成员是激活的;1 8 18 1 active sync /dev/sdb2 注:表示这个成员是激活的;4 8 19 2 spare rebuilding /dev/sdb3 注:未被激活,正在构建中的成员,正在传输数据;3 8 49 -spare /dev/sdd1注:spare /dev/sdd1表示/dev/sdd1是raid的备用成员,当raid的正式成员/dev/sdb1、/dev/sdb2、或/dev/sdb3中有一个出问题的时候,这个备用成员会自动进行工作的。这个并不是必须的,可以用添加raid成员的办法来添加,也可以在创建的raid的时候添加;4.2如何为一个现有raid扩充容量;在raid的管理模式中,我们提到增加raid成员的办法,如果raid所有真正成员都是健康的,这个成员就进入备用(spare)状态。只有当真正成员有问题时,这个备用成员才启用顶替出问题的成员来工作。但我们能不能向raid添加一个新成员,并且让他成为raid的真正成员,并且达到raid扩充容量呢?比如有一个raid5,同的是3个20G的分区做的,其总容量是(3-1)20=40G,我们能否为这个raid5新增加一个20G的分区,并且让其成为这个raid5真正的成员,并且达到能扩充容量的目的,也就是说让这个raid5有四个真正的成员,其容量为(4-1)20=60G。在硬raid中,这个工作比较容量,但在软raid中,是否能实现呢?答案是肯定的,这种情况仅针对已经做好的raid,并且已经在存储过程中发现raid容量不足的情况下使用。然后是一个新做的raid,我们发现计划错了,我们重新做一次就行了,没必要用扩容的办法。我们为现有的raid扩充容量,利用的就是raid的Grow模式,中译为raid的增长模式;应用范围是raid1、raid4、raid5、raid6.raid扩充流程:向一个已经存在的raid中添加一个成员-执行扩容指令注:在这里我们要用到raid的管理模式中的添加成员的办法。也就是用到mdadm中的-a参数,请参考上一节的内容。这时添加的成员是备用(spare)成员,我们要把备用成员“推”到位置上。这时我们要用到mdadm的Grow模式;举例说明:比如我们做的raid5,由三个硬盘分区/dev/sdb1、/dev/sdc1、/dev/sdd1构成,这时的raid5真正成员就是3个。当我们添加一个分区/dev/sdb2到这个raid5时,新增加的这个sdb2就是这个raid5R的备用(spare)成员。比如已有的raid5的设备是/dev/md0;首先,查看raid状态;rootlinuxsir:#mdadm -D /dev/md0/dev/md0:Version:00.90.03Creation Time:Tug Aug 7 01:55:23 2007Raid Level:raid5 注:raid级别;Array Size:39069824(37.26GiB 40.01GB)注:raid容量是390669824Used Dev Size:19534912(18.63GiB 20.00GB)注:raid中每个成员的容量是19534912Raid Devices:3注:raid真正成员是3个设备构成;Total Devices:3注:总共设备是3个;Preferred Minor:0Prefer

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论