raid

将多块磁盘组合起来形成阵列,就叫做raid


0:条带                    【至少两块盘】  

1:镜像                    【两块盘】   

4:校验码   

5:轮流作为校验码 成为raid5【三块】  

10                         【四块】 

01                         【四块】

50:                       【六块】

jbod                       【两块】

6:做两块校验盘 允许坏两块盘  

一:利用镜像技术来实现数据的可用性

     即一个磁盘存储 一个磁盘备份     但是特别浪费空间

二:校验码技术     【校验码盘访问量大  看上去是三块盘的速度 但是会被校验码盘拖累】

     四块磁盘 前三个分别存储123 第四块存储6 挂掉1 可以通过6-2-3恢复1 

三:条带、镜像一起用   (先条带后镜像  01)【利用率二分之一】

     6块磁盘 三个条带状储存 三个条带状做与之对应的镜像  但是坏一块影响的是全局  

四:镜像、条带一起用 (先镜像后条带 10)【利用率二分之一】

     6块磁盘 一分为三 两两结合  各存两份  简单粗暴  和三的性能近似 但是修复速度凑凑滴

五:raid5 使用4块磁盘  前三块存分别存123 第四块存1+2+3  后三块存456 第一块存4+5+6 【只允许     坏一块盘】


六:jbod 将多块小盘组合成大盘 解决因为文件增大磁盘空间不足  而且看上去还是同一个文件【既不着眼于速度又不着眼于可用性 只是看容量】


 在hadoop 文件系统级别 有一个HDFS【分布式文件系统 自动保存数据块副本】 就可以实现数据的安全性 防止数据丢失 所以它更鼓励使用jbod对磁盘进行扩容而不建议使用raid

 

如何用mdadm创建raid0

     模式化命令:

            创建模式 -C

                        -l:指定级别 0 1 5

                        -n:磁盘设备个数

                        -a:自动为其创建设备文件

                    -c:指定chunk大小【条带的时候指定数据块大小,一次在一块磁盘上存多少】

                         

           管理模式 --add;--del 

                 -f

            监控模式 -F

                 

            增长模式 -G

            装配模式 -A

创建一个2G的raid0

      可以用4个512MB的硬盘、也可以用两个1G的硬盘

      2、创建两个1G的空间 逻辑分区5 6  

      3、分别修改分区类型为fd

      4、partprobe /dev/hda

      5、cat /proc/partitions      [确定是否已经识别]

      6、mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/hda{5,6}

        注释{用mdadm在/dev目录下创建md0 这里的0只是代表顺序;-a yes自动为其创建设备文件;-l 0 指定级别为0;-n 2 指定磁盘个数以及路径 }

      7、会问你是不是继续覆盖  输入y

      8、cat /proc/mdstat 查看当前系统上所有启用的raid设备

      9、mke2fs -j /dev/md0   格式化

      10、mount /dev/md0 /mnt 挂载

创建一个2G的raid1  

        [必须用两个2G的才能创建出一个2G的raid1  因为raid1利用率为二分之一]

      1、创建三个2G的逻辑分区

      2、分别修改类型为fd

       3、partprobe /dev/hda

       4、cat /proc/partitions

       5、mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/hda7 /dev/hda8

       6、cat /proc/mdstat 查看当前系统上所有启用的raid设备 [可以看到它正在同步]

       7、mke2fs -j /dev/md1   格式化

       8、mount /dev/md1 /media/ 挂载

       9、cp /etc/inittab /media 复制一个文件进去

       10、在管理模式下我们可以模拟一个磁盘损坏;   

          首先我们查看raid阵列的详细信息  mdadm -D /dev/md1   

          mdadm /dev/md1 -f /dev/hda8  将hda8磁盘模拟损坏

          再查看阵列详细信息 提示已经损坏

          再去media里面查看inittab文件,依然可以正常使用。

       11、mdadm /dev/md1 -r /dev/hda8  将磁盘8热拔掉了   在现实当中直接拔掉磁盘就好

       12、mdadm /dev/md1 -a /dev/hda9  将hda9添加进去,注意hda9大小一定要和hda8一致            13、cat /proc/mdstat  看看同步过程

       14、不想用了 mdadm -S /dev/md1 停用阵列    

       15、rm /dev/hd1     删除就彻底消失了

       mdadm -A /dev/md1 /dev/hda7 /dev/hda9   停用之后可以重新装配

 

 当一块磁盘损坏的时候,想让另外一块磁盘立即顶上来,就需要在raid正常运行状态下,再给他加一块磁盘,会显示spare 空闲磁盘。模拟把运行中的一块磁盘损坏;空闲磁盘就会自动顶上 

  

    watch ‘cat proc/mdstat’ 周期性的执行某个命令,并以全屏方式显示结果

     -n 指定后期长度,单位为秒,默认为2 watch -n # ‘commadn


   mdadm -D --scan > /etc/mdadm.comf   前面可以查看多有raid的信息,写进配置文件,以后可以自动装配;  【可以停止mdadm -S /dev/md1 再重新启动mdadm -A /dev/md1  他就会自动装配】


如何创建2G的raid5  至少需要三块1G 的磁盘【需要用方程去算】 也可以用空闲盘,坏了自动顶上【mdadm -C -x # 指定空闲盘个数

你可能感兴趣的:(raid)