raid实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程实验报告课程名称:计算机组成原理
专业班级:计算机科学与技术1107班
学号:
姓名:
指导老师:
报告日期: 2013-11-2
计算机科学与技术学
目录
【实验环境】 (1)
【实验内容】 (1)
【实验原理】 (1)
【实验步骤】 (3)
(1)创建RAID 0 (5)
Raid0的速度测试 (9)
创建RAID 1 (10)
Raid1的使用 (13)
Raid1的速度测试 (14)
Raid1故障测试: (16)
创建RAID 5 (19)
Raid5的使用 (21)
Raid5的速度测试 (22)
RAID5故障测试 (24)
Raid阵列速度的说明。 (31)
【实验思考】 (32)
Raid0+1 (32)
查看raid (33)
速度测试 (34)
Raid0+5 (34)
查看Raid0+5信息 (35)
Raid0+5速度测试 (36)
实验体会 (36)
【实验环境】
Linux虚拟机
【实验内容】
创建RAID 0和RAID 1
创建RAID 5并测试其有效性
【实验原理】
一、Linux下的RAID
Linux系统在安装的过程中就可以使用RAID。在使用当中,利用一些工具,可以实现比Windows还要强大得多的功能,比如RAID 0+1和RAID 0+5。在Linux 下既可以对整块硬盘做RAID,也可以对其某一个分区做RAID。Linux下常用来做软RAID的工具主要有两个:一个是mdadm,另一个是raidtools。在本实验中我选用了mdadm。
在Linux下利用mdadm为非启动盘做软RAID比较简单。在实验步骤中,分别给出了Linux下RAID 0、RAID 1和RAID 5的制作过程。
RAID0:RAID0并不是真正的RAID结构,没有数据冗余,RAID0连续地分割数据并并行地读/写于多个磁盘上。因此具有很高的数据传输率,但RAID0在提高性能的同时,并没有提供数据可靠性,如果一个磁盘失效,将影响整个数据。因此RAID0不可应用于需要数据高可用性的关键应用。
RAID1:RAID1通过数据镜像实现数据冗余,在两对分离的磁盘上产生互为备份的数据。RAID1可以提高读的性能,当原始数据繁忙时,可直接从镜像中读取数据。RAID1是磁盘阵列中费用最高的,但提供了最高的数据可用率。当一个磁盘失效,系统可以自动地交换到镜像磁盘上,而不需要重组失效的数据。
RAID5:RAID5没有单独指定的奇偶盘,而是交叉地存取数据及奇偶校验信息于所有磁盘上。在RAID5上,读/写指针可同时对阵列设备进行操作,提供了更高的数据流量。RAID5更适合于小数据块,随机读写的数据。RAID3与RAID5相比,重要的区别在于RAID3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。
二、mdadm说明
(一)mdadm的7种主要操作方式
(1)create
创建一个带超级块的磁盘阵列。
(2)assemble
将之前建立的磁盘阵列变为活跃的(active)。
(3)build
用于创建没有超级块的磁盘阵列。
(4)manage
用于对在一个磁盘阵列上的一个或多个设备做一些操作,如添加(add)、移除(remove)和使失败(fail),还包括以下功能:run/stop/readonly/readwrite。
(5)misc
用于对单个设备的操作,它们可能是磁盘阵列的几部分,所以是零超级块,检测可能是适当的。它们可能是md阵列,因此run,stop,rw,ro,detail这些操作也是可以的。
(6)monitor
查看磁盘阵列并显示改变。
(7)grow
允许改变一个磁盘阵列的关键属性,比如大小,设备数量等。
(二)create/build常用操作
create/build常用操作如下表所示。
参数或选项说明
--add或-a 添加或热添加磁盘
--fail或-f 将RAID中的磁盘标记为已坏
--remove或-r 从RAID中移除磁盘(注意:只有
先将磁盘标识为已坏,才能移除) --set-faulty --fail功能相同
--run或-R 开始运行一个已创建的阵列
--stop或-S 停止运行一个阵列,释放它所有
的磁盘资源
--readonly或-o 标记阵列为只读
--readwrite或-w 标记阵列为可读写
--zero-supterblock 从一个设备中去掉MD超级块
--raid-disks 创建RAID时需要用到的硬盘或
分区数
--spare-disks 创建RAID时作用侯补的硬盘或
分区数,当组RAID的硬盘或分区
出现问题被取下时,被设定为修
补的硬盘或分区会自动补缺。
三、mdadm命令示例
(1)利用sdb1,sdc1,sdd1创建一个RAID 1名为md0,其中sdb1和sdd1
是组成md0的磁盘,sdc1是md0的备份盘,如果sdb1或sdd1出现问题,系统会自动将sdc1顶替该磁盘,使md0重归于完整。具体命令如图所示。
(2)停止md0的运行,并释放它的所有资源:mdadm --stop /dev/md0。
(3)查看md0详情:mdadm --detail /dev/md0。
(4)将md0中的sdb1标记为已坏:mdadm /dev/md0 --fail /dev/sdb1。
(5)将sdb1移除出md0:mdadm /dev/md0 --remove /dev/sdb1。
(三)mdadm配置文件
为了保证在每次重启系统时,RAID都能正常运行,需要创建或修改/etc/mdadm.conf文件,将RAID的信息写入文件的最下方。
写入信息包括RAID用到的硬盘和组成方式,上面示例的配置文件写法如图2.5.5-2所示。
【实验步骤】
一、添加磁盘
进入Linux虚拟机界面,点击“虚拟机硬盘设置”。然后以相同的方式添加七块硬盘。
在弹出的对话框中设置添加硬盘的路径并设置磁盘大小442G(学号),如图所示,