Linux--RAID

RAID:  Redundant Arrays of Inexpensive Disks  容错式廉价磁盘阵列
 
常见的几种模式
    RAID-0 (等量模式, stripe):效能最佳        需要自行承担数据损毁的风险,只要有任何一个磁盘损坏,在RAID上面的所有数据都会无法读取。
    RAID-1 (映射模式, mirror):完整备份        让同一份数据,完整的保存在两个磁盘上,需要相同的磁盘容量的,最好是一模一样的磁盘!如果是不同容量的磁盘组成,那么总容量将以最小的那一个磁盘为主。           
    RAID-5:效能与数据备份的均衡        至少需要三个以上的磁碟才能够组成这种类型的磁盘阵列
类型
   硬件磁盘阵列 (hardware RAID):  透过磁盘阵列卡来达成阵列的目的。 磁盘阵列卡上面有一块专门的芯片在处理 RAID 的任务,因此在效能方面会比较好。在很多任务 (例如 RAID 5 的同位检查码计算) 磁盘阵列并不会重复消耗原本系统的 I/O 汇流排,理论上效能会较好。硬件磁盘阵列在 Linux 底下看起来就是一颗实际的磁盘,因此硬件磁盘阵列的装置档名为 /dev/sd[a-p] ,因为使用到 SCSI 的模块之故。
   软件磁盘阵列(software  RAID):  主要是透过软件来模拟阵列的任务, 会损耗较多的系统资源。软件磁盘阵列则是系统模拟的,因此使用的设备文件名是系统的设备文件, 文件名为 /dev/md0, /dev/md1...

在硬RAID中,RAID0的成员是以整个硬盘为单位
在软RAID中,RAID的成员是整个硬盘或分区

在Linux中,软RAID是通mdadm来创建和管理的,mdadm 是一个专用创建和管理RAID的软件,在Linux中,大多发行版本已经默认安装,mdadm能创建任何级别的软RAID;
 
创建RAID

第一种方法
    用mdadm 通过-C或--create 参数来创建RAID。这种方法 ,是把RAID信息写到每个RAID成员的 superblocks(超级块)中,在每个RAID成员的超级块中,都会记录RAID的级别、成员、RAID的UUID等…… 这种方法把RAID的信息记录在各个成员的 superblocks(超级块)中。这种方法对于重装系统或系统发生灾难
来说,有利于现有RAID的恢复;这种方法是最常用的

如何清除一个RAID成员的超级块存储存的RAID信息? -->;     #  mdadm --zero-superblock   RAID成员

第二种方法
    用mdadm 通过-B或--build 参数来创建RAID。这种方法并不把RAID的信息写入RAID成员的 superblocks(超级块中),所以我们无法通过查看RAID成员信息来获得RAID的级别,以及RAID的成员等;这种方法对于重装系统或系统发生灾难来来说,不利于现有RAID的恢复;
 
# mdadm -- create --a uto=yes /dev/md[0-9] -- raid-devices=N  -- level=[015] -- spare-devices=N /dev/sdx /dev/hdx...
# mdadm     -C    -a yes    /dev/md0    -n    3  -c 32  -l    5    -x    1    /dev/sda{5,6,7,8}
                   
-- create :创建 RAID
-:指定chunk_size ,默认为64K
-- auto=yes :自动创建软件磁盘阵列装置,亦即 /dev/md0, /dev/md1...
-- raid-devices=N :使用几个 (partition) 作为磁盘阵
-- spare-devices=N :使用几个分区作为备用 (spare) 装置
-- level=[015] :配置这组磁盘阵列的等级。建议只要用 0, 1, 5
                           
      eg: # mdadm --create --auto=yes /dev/md0 -- level=5  --raid-devices=3 --spare-devices=1 /dev/sda{5,6,7,8}
           # mdadm -C  -a yes /dev/md0 -l 5 -n 3 -x 1 /dev/sda{5,6,7,8}
 
添加删除磁盘
# mdadm --manage /dev/md[0-9] [--add 装置] [--remove 装置] [--fail 装置]
      --a dd :会将后面的装置加入到这个 md 中       -->; �Ca      eg: mdadm  -a  /dev/md0  /dev/sda5
      -- remove :会将后面的装置由这个 md 中移除    -->; -r       eg: mdadm  -r  /dev/md0  /dev/sda5   
      -- fail :会将后面的装置配置成为出错的状态    -->; -f       eg: mdadm  -f  /dev/md0  /dev/sda5
 
RAID管理工具一些常用参数
# mdadm 参数  [RAID设备]  [RAID成员]
        - A 或  --assemble  激活一个RAID;
        - S 和--stop  停止正在运行的设备;
        - s 或 --scan  扫描RAID设备;
        - D 或 --detail 查看RAID的详细信息;
        -- examine  查看RAID成员的详细信息;      
--examine /dev/sdb 是查看其中一块硬盘的RAID信息,这个很有用。比如你忘记了RAID的成员和UUID,想恢复现有的RAID,就要用这个来查看
            eg: # mdadm --examine /dev/sdb5

你可能感兴趣的:(raid基础)