码迷,mamicode.com
首页 > 其他好文 > 详细

RAID级别和实现实例操作详解

时间:2015-12-20 02:07:21      阅读:338      评论:0      收藏:0      [点我收藏+]

标签:raid   等级   mdadm   watch   

一、RAID简史

    1.RAID由来

Berkeley:伯克利提出:A case for Redundent Arrays of Inexpensive Disks RAID(廉价冗余阵列)

如今:Redundant Arrays of Independent Disks 独立冗余阵列

    2.优点和表现方式

        1)通过磁盘并行读写提高IO能力:

        2)通过磁盘冗余(容错)机制来实现提高耐用性

    3.级别:多块磁盘组织在一起的工作方式有所不同

RAID0RAID1RAID2RAID3RAID4RAID5RAID6RAID7RAID10RAID01RAID50JBOD

    4.实现方式

         (1)软件模拟实现Software RAID结合内核中的md(multi devices)工具

生产环境中一般没有人使用

         (2)硬件实现:硬件级别的RAID配置多块硬盘在bios中实现

外接式磁盘阵列:通过扩展卡提供适配能力

内接式RAID:主板集成RAID控制器

技术分享

   1)可以通过SAS接口的适配器接口扩展出串行端口附加存储,以logical unit  number逻辑单元号表现

窄带:8个接口,7target

宽带:16个接口,15target

   2)RAID控制器需要系统驱动使用,在BIOS中可以设置,通过适配器连接到RAID磁盘阵列

   3)RAID控制器本身有CPU,还可以有内存来加速,另外设置电源方式断电时候的应急写入

 

           

 

二、RAID级别和工作模式

         常用级别:RAID-0, RAID-1, RAID-5, RAID-10, RAID-50, JBOD

    1.RAID-0:0, 条带卷,strip;

性能:读、写性能提升;无容错能力

空间使用:N*min(S1,S2,...)

最少需要磁盘数量:至少两块

技术分享

条带:会以磁盘容量最小的磁盘为主分块制作条带

技术分享

    2.RAID-1: 1, 镜像卷,mirror;

性能:读性能提升、写性能略有下降;有冗余能力

空间使用:1*min(S1,S2,...),每块存储内容都一样

空间利用率:1/2

最少需要硬盘数量:至少两块

技术分享

    3.RAID-4:单块硬盘作为集中校验盘

         采用独立存取方式,将条带由RAID3的小数据块改为更大的数据块

          校验较为迅速,但写入速度极差,控制器的设计更加复杂

通过异或运算将其中一块硬盘,集中存放校验码

允许有一块硬盘损坏,但因为集中校验会导致性能瓶颈

技术分享

    4.RAID-5循环校验存储机制

    性能:读、写性能提升有容错能力:1块磁盘

    空间使用:(N-1)*min(S1,S2,...) 短板效应

     空间利用率:(n-1)/n

    最少磁盘数:至少三块,可降级使用

技术分享

    5.RAID-6循环校验存储机制,一块硬盘专门做校验盘,校验码存储两次

性能:读、写性能提升;有容错能力:2块磁盘

空间使用:(N-2)*min(S1,S2,...)

最少磁盘数:最少四块

    6.RAID-7:商业版

新的RAID标准,一个独立的“存储计算机”自身带有智能化实时操作系统和用于存储管理的软件工具,可以完全独立与主机运行,不占用主机CPU资源

    7.RAID-10:先做镜像,再做条带

性能:读、写提升,有冗余能力

空间利用率:1/2

最少磁盘数至少需要4块

技术分享

    8.RAID-01:先做条带,再做镜像

性能:读、写提升,有冗余能力

空间利用率:1/2

最少磁盘数至少需要4块

    9.RAID-50

性能:读、写提升;有冗余能

空间利用率:(n-2)/n

最少磁盘数至少需要6块

技术分享

    10.JBOD:Just a Bunch Of Disks 将多块磁盘的空间合并一个大的连续空间使用

性能表现:无提升;无冗余能力

空间使用:磁盘大小之和sum(S1,S2,...)

空间利用率:100%

最少磁盘数至少需要2块

 

 

 

三、RAID内核实现观测相关命令

CentOS 6上的软件RAID的实现

    1.md(multi devices)工具mdadm:模式化的工具

命令的语法格式:mdadm [mode] <raiddevice> [options] <component-devices>

支持的RAID级别:LINEAR线性方式, RAID0, RAID1, RAID4, RAID5, RAID6, RAID10;

模式:创建:-C装配: -A监控: -F管理:-f, -r, -a

<raiddevice>: /dev/md#

<component-devices>: 任意块设备

(1)-C: 创建模式

-n #: 使用#个块设备来创建此RAID;

-l #:指明要创建的RAID的级别;

-a {yes|no}:自动创建目标RAID设备的设备文件;

-c CHUNK_SIZE: 指明块大小; 默认512k

-x #: 指明空闲盘的个数;

(2) 管理模式:

-f: 标记指定磁盘为损坏;

-a: 添加磁盘

-r: 移除磁盘

(3)-D:显示raid的详细信息;      mdadm -D /dev/md#

           (4)观察md的状态: cat /proc/mdstat

(5)停止md设备:mdadm -S /dev/md#

    2.watch:动态观测命令运行过程

格式:watch -n# ‘COMMAND‘

-n #: 刷新间隔,单位是秒;

 

RAID级别和实现实例操作详解

标签:raid   等级   mdadm   watch   

原文地址:http://xuding.blog.51cto.com/4890434/1726314

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!