在linux系统下用软件来实现Raid。

Raid的实现分为:硬件RAID,软件RAID.

linux中是通过mdadm程序来实现的。

mdadm支持的RAID级别为:RAID0,RAID1,RAID4,RAID5, RAID6.

Mdadm可以支持多个硬盘,分区逻辑卷来创建软件RAID。

创建好的RAID,设备名为/dev/mdn,如果是第一个那则N=0,第二个则n=1.

----------------------------------------------------------------------------------------------------------------------

通过虚拟机添加几块硬盘,容量为1G,我这里添加了4块硬盘


在实际的生产环境中注意添加的硬盘,容量以及规格,劲量要保持一致,以便后期工作维护的时候出现不兼容的情况。

进入linux系统之后执行以下命令。

RAID0:  mdadm  -C   /dev/md0   -a   yes    - l 0    -n 2 /dev/sdb  /dev/sdc


RAID1:  mdadm   -C  /dev/md0 -a  yes   -l  0 -n    2  /dev/sdb  /dev/sdc

(命令说明这里就不解释了 百度一大堆)

RAID5:  mdadm   -C  /dev/md0 -a yes -l 0  -n 2 /dev/sdb  /dev/sdc

---------------------------------------------------------------------------------------------------------------------------

当创建了RAID之后,需要在创建一个配置信息;

mdadm  -D  --scan   >  /etc/mdadm.conf


现在对我们的raid设备md0进行格式化

#mkfs.ext3   /dev/md0 

然后挂在到我的mnt目录下面。

#mount   /dev/md0   /mnt

---------------------------------------------------------------------------------------------------------------------------------------------------------


现在我用mdadm -D /dev/md0  来查看我们的md0,如果希望挂在了之后,重启linux能够重新自动挂载可以:

# vim /etc/fstab

在linux系统下用软件来实现Raid。_第1张图片


可以通过:

mdadm -D /dev/md0
cat       /proc/mdstat    

查看raid相关信息。



此外 mdadm 还有一个很好用的参数 -x 这个参数可以指定一个备用磁盘,备用磁盘一般情况下不会使用,只有在出现故障磁盘的情况下才能使用,指定的备用磁盘

可以自动上线,替换掉故障磁盘。这样来说就不必像XP那么麻烦 还需要手动去更换,linux中就这一条命令就可以完事,太强大了。

mdadm  -C /dev/md5   -a yes -l 5  -n(指的几块硬盘作为RAID设备)  -x  l  /dev/sdb  /dev/sdc  /dev/sdd   /dev/sde

比如我创建了一个RAID5,并且我指定了一个备用的磁盘sdd.

首先先清除sdb  和sdc上的数据:


mdadm --zero-superblock  /dev/sdb /dev/sdc



创建文件系统ext3

mkfs -t  ext3  /dev/md5


挂载到mnt目录上:

mount   /dev/md5    /dev/mnt   




mdn 中的n 代表的是设备标识,   -l 后边跟的是设备级别,  -n表示,加入的磁盘块数,上图中的sdd 会在我的前面sdb,sdc任何一个出现故障的时候,替换掉故障盘。


接下来测试一下磁盘是否真的会正常工作。


标识其中的一块设备为故障盘:

mdadm   /dev/md5  -f  /dev/sdb


查看信息:more /proc/mdstat



在linux系统下用软件来实现Raid。_第2张图片

因为有备份设备,所以当阵列中出现设备损坏时,阵列能够在短时间内实现重构和数据的恢复。从当前的状态可以看出,阵列正在重构.

sdb[4]已经打上了F的标志。

mdadm  -D  /dev/md5

可以发现我们的md5中的sdb已经是futrue设备,不在是active。


在reboot了之后,可以发现我们的sdb设备已经自动的被移除掉了



如果想添加一个设备到raid中。

那么可以用:mdadm /dev/md5 -a   /dev/sdb 


#more  /proc/mdstat

可以查看到我们添加进来的sdb已经是spare了。

在linux系统下用软件来实现Raid。_第3张图片

作为了我们的备用磁盘出现在mdstat中。


RAID设备的关闭与开启:


开启:mdadm -As  /dev/md5

-A:装载一个已经存在的整列 

s:代表通过查阅mdadm.conf信息

该命令是通过查阅mdadm.conf中的配置信息为根据来开启设备。


关闭:mdadm -S /dev/md5


查看磁盘或者分区是否存在了RAID设备。

mdadm -E /dev/md5

至于mdadm其他的命令选项,可以man一下,不同版本的mdadm可能功能会有点小小的差异,

但是差异不大。

你可能感兴趣的:(在linux系统下用软件来实现Raid。)