Chinaunix首页 | 论坛 | 博客
  • 博客访问: 238368
  • 博文数量: 65
  • 博客积分: 1430
  • 博客等级: 中尉
  • 技术积分: 700
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-27 00:30
文章分类
文章存档

2011年(65)

分类: LINUX

2011-07-31 15:54:40

一,RAID0:(别名:条带)
    将多个磁盘合并成一个大的磁盘,不具有冗余,并行I/O,速度最快。RAID 0亦称为带区集。它是将
    多个磁盘并列起来,成为一个大磁盘。在存放数据时,其将数据按磁盘的个数来进行分段,然后同时
    将这些数据写进这些盘中。 所以,在所有的级别中,RAID 0的速度是最快的。但是RAID 0没有冗余
    功能,如果一个磁盘(物理)损坏,则所有的数据都会丢失。
二,RAID1:(别名:镜像)
    两组以上的N个磁盘相互作镜像,在一些多线程操作系统中能有很好的读取速度,另外写入速度有微
    小的降低。除非拥有相同数据的主磁盘与镜像同时损坏,否则只要一个磁盘正常即可维持运作,可      靠、  性最高。RAID 1就是镜像。其原理为在主硬盘上存放数据的同时也在镜像硬盘上写一样的
    数据。当主硬盘(物理)损坏时,镜像硬盘则代替主硬盘的工作。因为有镜像硬盘做数据备份,所
    以RAID 1的数据安全性在所有的RAID级别上来说是最好的。但无论用多少磁盘做RAID 1,仅算一个
    磁盘的容量,是所有RAID上磁盘利用率最低的一个级别。
三,RAID5:(分布基偶位带条)
    RAID Level 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。它使用的是Disk Striping(硬盘分区)技术。RAID 5 至少需要三颗硬盘, RAID 5不对存储的数据进行备份,而是把数据和相对应
   的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的
   磁盘上。当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的
   数据。 RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保
   障程度要比镜像低而磁盘空间利用率要比镜像高。RAID 5具有和RAID 0相近似的数据读取速度,只是
   多了一个奇偶校验信息,写入数据的速度相当的慢同时由于多个数据对应一个奇偶校验信息,RAID 5
   的磁盘空间利用率要比RAID 1高,存储成本相对较便宜。
四,RAID 10/01RAID 10/01其实可细分为RAID 1+0或RAID 0+1。
   RAID 1+0是先镜射再分区数据。是将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各
            自视为RAID 1运作。RAID 1+0有着不错的读取速度,而且拥有比RAID 0更高的数据保护性。
   RAID 0+1则是跟RAID 1+0的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两
            组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。RAID 0+1比起RAID 1+0有
            着更快的读写速度,不过也多了一些会让整个硬盘组停止运转的机率;因为只要同一组的硬
            盘全部损毁,RAID 0+1就会停止运作,而RAID 1+0则可以在牺牲RAID 0的优势下正常运作。
    RAID 10巧妙的利用了RAID 0的速度以及RAID 1的保护两种特性,不过它的缺点是需要的硬盘数较多
            因为至少必须拥有四个以上的偶数硬盘才能使用。
五,使用mdadm创建软RAID
    mdadm (manage MD devices aka linux)
software RAID
 MODES
 模式:assemble
       create 
        -n
        -x
       follow or monitor (监控一个或多个md设备)  
       Grow(缩减模式)
       Manage (管理模式)
option:
  -A (assemble)
  -C (create)
  -F (follow or monitor)
  -G (grow)
例一:如何创建一个RAID0
/dev/sda5,/dev/sda6
2G:RAID0(总大小是2G)
新建两大小都是1G的分区
使用t修改分区id改为fd类型
partprobe /dev/sda
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sda5 /dev/sda6
(-a yes 自动创建
 -l 0 级别
 -n 2 2块磁盘
 -c 指定chunk的大小

mke2fs -L RAID0 -j /dev/md0
mkdir /mnt/radi0
mount /dev/md0 /mnt/raid0
cd !$
ls
cat /proc/mdstat

例二:如何创建一个2G的raid1
两个分区都必须是2G
/dev/sda7 /dev/sda8
使用t修改为fd类型
partprobe /dev/sda
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sda7 /dev/sda8
cat /proc/mdstat
 
watch -n 1 'cat /proc/mdstat'
mkfs.ext3 /dev/md1
mkdir /mnt/raid1
mount /dev/md1 /mnt/raid1
cd !$
ls
mdadm -D /dev/md1
弄坏一个磁盘,看另一个磁盘是否还能正常工作
mdadm -f /dev/mdl /dev/sda7 (模拟把/dev/sda7弄坏了)
mdadm -D /dev/md1
cd /mnt/raid1
ls
mdadm --remove /dev/md1 /dev/sda7 (模拟把/dev/sda7把下来,热拔)
再建一个新的分区,替换那个拔掉的
mdadm -a /dev/md1 /dev/sda9(把/dev/sda9插上去)
watch -n 1 ‘cat /proc/mdstat'
spare空闲设备(热备,用于自动替补)
mdadm -a /dev/md1 /dev/sda7(强行加一个空闲的磁盘进去)
mdadm -f /dev/mdl /dev/sda7(模拟把/dev/sda8弄坏)
/dev/sda7会自动替补
 
mdadm
它的配置文件在/etc/mdadm.conf,此文件本身不存在,需要手动生成
mdadm -D --scan >> /etc/mdadm.conf
mdadm -D --scan
mdadm -S /dev/md1 (停止设备)
mdadm -A --scan(扫描系统上的整个设备并全装备上)
阅读(1558) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~