软RAID的实现

    磁盘可分为SCSI和IDE的,SCSI与IDE比较,安全性更高,写入速率也更高,但价格相对过高,对一些小型公司和企业,并不适用,我们是否可以有一种机制,可以让IDE来实现SCSI的高性能呢,这就出现了RAID

       RAID磁盘阵列(Redundant Arrays of Inexpensive Disks,RAID),有“价格便宜且多余的磁盘阵列”之意。磁盘阵列是由很多便宜、容量较小、稳定性较高、速度较慢磁盘,组合成一个大型的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。

 

   通过磁盘的不同组合我们将raid分为不同的级别

    0 ,1, 2, 3, 4, 5, 6, 7, 10, 50

   这里介绍下常用的几个级别0,1,5,6,10,50

    0:级别:数据分部分存入各个磁盘中,性能提高,没有容错的能力,任何一个磁盘坏掉,数据就毁坏了,至少2块磁盘

    1:数据分别完整存入各个磁盘中,写入性能低,读取性高,有冗余,只要有一个磁盘能用,数据就是完整的

    4:至少需要3块磁盘,前两块各存入数据的一部分,第三块放校验码(前两块数据的异或),允许坏掉一块磁盘,当一块坏掉的时候,根据校验码,通过为坏掉的磁盘中的数据计算出坏掉磁盘中的数据

    5:至少需要3块磁盘,3块磁盘数据校验码循环存放,盘允许坏一块

    6:至少需要4块磁盘,允许坏2块,模式和5一样,存两次校验码  

Raid的类别

    软raid

    通过软件模拟来实现raid

    硬raid

    硬阵列是由独立操作的硬件提供整个磁盘阵列的控制和计算功能. 不依靠系统的CPU资源. 

    今天我们主要介绍一下软raid

    软raid的组成可以是任意块设备,可以是单个磁盘分区或多个磁盘的分区,同样也可以有多个raid组成

    软raid通过mdadm的命令来实现

mdadm [mode] <raiddevice> [options] <component-devices>

    下面我们介绍下mdadm的常用选项

mode:

     -C    创建

     -F   监视    
     -M  
     -A     装配,可以启动停下的设备
     -S     停止设备
     -G     增长模式

     -D     查看raid设备

options(在创建的时候使用):

      -n 有几块盘来创建
      -x  空闲盘
      -c  指定chunk块大小,默认单位为k,默认大小 64
      -l   指定级别
      -p  布局 layout

 

     现在让我们世纪操作一下,创建一个raid5吧,我们再虚拟机上通过新建4个分区来实现,其中一个分区我们用作空闲块,当设备坏的时候可以自动替换的哦。

     首先创建我们的4个分区 

     分别是/dev/sda{5,6,7,8},我们都给他们200m的空间,下面来创建我们的raid   

#mdadm -D /dev/md0   查看下设备

    -n指定由3个分区来创建,-x一个分区作为空闲块,-l 指定级别为5,-c指定chunk块大小,chunk块也就是一次向raid上写入数据的大小。下面只需格式化挂载就行啦。

     这里要特别说明一下-E的指定,chunk等于多少磁盘块,如果不指定,在写入数据的时候,每次都要进行这样的计算,浪费系统资源。最好还是写上,下面挂载就ok啦。

#mount /dev/md0 /mnt\

   挂载到/mnt目录下,基本上raid就建成了,我们可以通过下面的命令对raid进行检测#mdadm -f  /dev/md0 /dev/sda5

#mdadm -D /dev/md0

    通过-f 我们可以模拟构成md0的sda5坏掉了,这时候查看下,这时候显示sda5是faulty,而sda8则自动的补充了上去。

   现在如果sda5真的坏了,坏了我们就换一个,怎么办呢

#mdadm -r /dev/md0 /dev/sda5

    这样就把sda5拿掉了,假设我们现在有一个新的分区sda9,如何添加呢

 #mdadm -a /dev/md0 /dev/sda9

    这样就可以了。

raid的停止

 

 如果设备被挂载了,是不能停止的哦,所以要先卸载

你可能感兴趣的:(raid,软RAID,mdadm)