Linux学习—磁盘阵列:RAID

       RAID(Redundant Array of Inexpensive Disks)独立冗余磁盘阵列
       硬盘设备需要进行持续、频繁、大量的IO操作,相较于其他设备,其损坏几率也大幅增加,导致重要数据丢 失的几率也随之增加,随着而来就产生了RAID的概念,RAID技术通过把多个硬盘设备组合成一个容量更大、 安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备上,然后利用分散 读写技术来提升磁盘阵列整体的性能,同时把多个重要数据的副本同步到不同的物理硬盘设备上,从而起到 了非常好的数据冗余备份效果 。
       即可以通过一些技术将多个较小的磁盘整合成为一个较大的磁盘设备,而这个较大的磁盘不仅可以存储数据,还具有数据保护的功能。由于选择不同的RAID级别,而使整合后的磁盘具有不同的功能。
1.Raid分类:软RAID和硬DAID
       1)硬RAID:性能较高。他们采用 PCI Express 卡物理地提供有专用的 RAID 控制器。它不会使用主 机资源。他们有 NVRAM 用于缓存的读取和写入。缓存用于 RAID 重建时,即使出现电源故障,它会使用后备 的电池电源保持缓存 。
       2)软RAID:性能较低,因为其使用主机的资源。 需要加载 RAID 软件以从软件 RAID 卷中读取数据。在加载 RAID 软件前,操作系统需要引导起来才能加载 RAID 软件。在软件 RAID 中无需物理硬件。零成本投资 。

2.常用RAID级别和概念
Linux学习—磁盘阵列:RAID_第1张图片
3.Spare Disk:预备磁盘的功能
       当磁盘阵列的磁盘损毁时,就要将损坏的磁盘拔除,然后换一块新的磁盘。重新启动磁盘阵列后,磁盘阵列就会开始主动重建坏掉的那块磁盘数据到新的磁盘上,然后我们的数据就复原了。不过我们要拔插硬盘,需要关机操作。
       Spare Disk 就是一块或多块没有包含在原本磁盘阵列等级中的磁盘,这块磁盘平时不会被磁盘阵列所使用,只有当磁盘阵列有任何磁盘损坏时,Spare Disk才会被主动拉近磁盘阵列中,并将原来那块损坏的硬盘移除磁盘阵列,然后重建数据系统。

4.软件磁盘阵列的设置:mdadm命令:
       用于管理Linux系统中的软件RAID硬盘阵列。在Linux中支持将任何块设备做成RAID,在为同一块磁盘的不同分区做RAID没有任何意义。
Linux学习—磁盘阵列:RAID_第2张图片

5.RAID练习题
1)mdadm命令创建RAID10 名为md0,关闭虚拟机新添加4块硬盘,使用ext4文件系统进行测试。
       (1)将四块硬盘加入加入md0,并指定类型为RAID10
mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
在这里插入图片描述
       (2)将md0格式化成ext4文件系统类型:mkfs.ext4 /dev/md0
Linux学习—磁盘阵列:RAID_第3张图片       (3)创建挂载目录:mkdir /DAID
       (4)挂载md0:mount /dev/md0 /DAID(手动挂载或自动挂载皆可以)
Linux学习—磁盘阵列:RAID_第4张图片
       (5)查看md0的详细信息:mdadm -D/dev/md
Linux学习—磁盘阵列:RAID_第5张图片
2)损坏磁盘阵列及修复
#模拟一块硬盘损坏情况
       (1)损坏sdb硬盘:mdadm /dev/md0 -f /dev/sdb
在这里插入图片描述
       (2)查看md0的信息
Linux学习—磁盘阵列:RAID_第6张图片
       (3)取消md0的挂载,并将sdb硬盘移除
在这里插入图片描述
       查看md0的信息
Linux学习—磁盘阵列:RAID_第7张图片
       (4)将好的硬盘sdb加入md0中:mdadm /dev/md0 -a /dev/sdb
在这里插入图片描述
       查看md0的信息
Linux学习—磁盘阵列:RAID_第8张图片       (5)将md0重新挂载:mount /dev/md0 /RAID
(如果上面是自动挂载,则只需用mount -a 就行)

3)关闭软件RAID(重要!!!!!!
       (1)先卸载并删除配置文件内与/dev/md0有关的设置
                    umount /dev/md0
                     vi /etc/fstab
                      /dev/md0 /DAID ext4 defaults 0 0
Linux学习—磁盘阵列:RAID_第9张图片
此时RAID md0还存在

       (2)接下来关闭 /dev/md0
               mdadm --stop /dev/md0
Linux学习—磁盘阵列:RAID_第10张图片
此时查看磁盘可以发现 sdb sdc sdd sde就不属于md0这个磁盘阵列了。
               然后查看/dev/md0:mdadm -D /dev/md0
               就会有报错信息:
                      ==mdadm: cannot open /dev/md0: No such file or directory==
当然,朋友们也可以具体试一下RAID是否具有热插拔的功能,在未损坏磁盘前在/RAID目录下创建一个文件,检测换上一个新磁盘后该文件是否还存在?内容是否不变?答案当然是文件存在且内容不变。




补充一点很有趣的东西:
1)当你在挂载前创建一个在挂载目录下的文件,那么你在挂载后就看不见该文件,并且你也不能对其进行操作。
Linux学习—磁盘阵列:RAID_第11张图片

2)同理,在挂载后创建的文件,你在挂载前是看不见滴,也不能对其进行操作(lost+found是目录本来就有的)。
Linux学习—磁盘阵列:RAID_第12张图片

你可能感兴趣的:(Linux学习—磁盘阵列:RAID)