独立磁盘冗余阵列 RAID

 

RAID

        独立磁盘冗余阵列(RAID,redundant array of independent disks,redundant array of inexpensivedisks)是把相同的数据存储在多个硬盘的不同的地方(因此,冗余地)的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错。 

  能够组合多个盘使用

   早期组合:IDE

    USB

    SCSI

   现在组合:SATA

    SAS

RAID level:级别  仅代表磁盘组织方式的不同,没有上下之分;

RAID不仅考虑数据的速度,还要考虑数据的可用性

保证数据速度

条带化技术

保证数据可用性:

磁盘镜像技术(mirror)  浪费空间

校验码技术

速度和可用性都得到提高

                                            (1)

  RAID 0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。RAID0运行时只要其中任一块硬盘出现问题就会导致整个数据的故障。一般不建议企业用户单独使用。

RAID 0:条带化技术

性能提升:读写

冗余能力(即容错能力):无

空间利用率:nS

至少2块盘

                                            (2)

  它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。 

RAID 1:磁盘镜像技术

性能表现:写性能下降、读性能提升

冗余能力:有

空间利用率:1/2

至少2块盘

   RAID4和RAID3很象,不同的是,它对数据的访问是按数据块进行的,每次是按磁盘进行。可以这么看,RAID3是一次一横条,而RAID4一次一竖条。但每次的数据存取都必须从同位元检查的那个硬盘中取出对应的同位元数据进行核对,由于过于频繁的使用,所以对硬盘的损耗可能会提高。

   它的特点:在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好。

RAID 5

 

(3)

   RAID 5可以理解为是RAID 0和RAID 1的折中方案。RAID 5可以为系统提供数据安全保障,但保障程度要比Mirror低而磁盘空间利用率要比Mirror高。RAID 5具有和RAID 0相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较低。 

RAID 5: 校验码(轮流做校验盘)

性能表现:读、写提升

冗余能力:有

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

至少需要3块盘

 

(4)

  Raid 10是一个Raid 0与Raid1的组合体,它是利用奇偶校验实现条带集镜像,所以它继承了Raid0的快速和Raid1的安全。我们知道,RAID 1在这里就是一个冗余的备份阵列,而RAID 0则负责数据的读写阵列。其实,图6只是一种RAID 10方式,更多的情况是从主通路分出两路,做Striping操作,即把数据分割,而这分出来的每一路则再分两路,做Mirroring操作,即互做镜像。

           RAID 10:先做镜像再条带化

性能表现:读、写提升

冗余能力: 有

空间利用率:1/2

至少需要4块盘

 

(5)

  把RAID0和RAID1技术结合起来,即RAID0+1也叫做raid01是区别于raid10。数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。要求至少4个硬盘才能作成RAID0+1      

RAID 01:先条带化再做镜像

性能表现:读、写提升

冗余能力:有

空间利用率:1/2

至少需要4块盘

RAID 50

 

(6)

  RAID 50阵列在每个RAID 5阵列中都有一块硬盘出现故障的情况下仍然能够正常工作,但是如果某一个RAID 5阵列中有多块硬盘出现故障,整个阵列就不能工作了。RAID 50提供了很好的顺序和随机读写能力。由于能够同时对多个磁盘进行读写,这些多层级别RAID通常会比同等的单层RAID的性能更加优秀。RAID 50更高的容错能力,具备更快数据读取速率的潜力。

  缺点:RAID 50比较复杂,实施起来费用也比较高。一个磁盘故障后的重建工作可能会严重影响整个阵列的性能。

RAID 50:先校验再做条带

性能表现:读、写提升

       冗余能力:有

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

至少需要5块盘

jbod: 实现将多个小盘组合成大盘使用

性能表现:无提升

冗余能力:无

空间利用率:100%

  至少需要2块

RAID分为硬件和软件

软件RAID:

md:multi disks  多磁盘

mdadm:允许将任何块设备做成RAID

模式化命令:

创建模式

-C

专用级别:

-l:级别

-n #:设备个数

-a {yes|no}:自动为其创建设备文件

-c:指定CHUNK(数据块)大小,2^n,默认为64k

-x #:指定空闲盘个数

管理模式

--add, --remove  --fail  损坏

mdadm /dev/md# --fail /dev/sda7

监控模式

-F

增长模式  

-G 

装配模式  

-A 

查看RAID阵列的详细信息

mdadm -D /dev/md#

      --detail

mdadm -f

停止阵列:

mdadm -S /dev/md#

     --stop

mke2fs -E 指定条带大小

条带=chunks/block的倍数

mke2fs -j -E stride=16 -b 4096 /dev/md0

which:周期性的执行指定命令,并以全屏方式显示结果

-n #:指定周期长度,单位为秒,默认为2

格式: which -n # 'COMMAND'

which ‘cat /proc/mdstat’

 

将当前RAID信息保存至装配文件,以便以后进行装配

mdadm -D --scan > /etc/mdadm.conf

 

fd:类型标记为软RAID   一般情况下不建议使用软RAID

 

例1:创建一个空间大小为2G的raid0设备,chunk为32k,要求设备开机时可以自动挂载在/backup下

1、先创建分区,由于raid0的空间用率是100%,所以我们可以

创建2个1G,或4个512M,文件系统类型为fd

2、创建完raid后格式化

3、挂载使用

注:raid0没有冗余能力,所以里面文件破坏不能还原!!!

一、新建磁盘分区,通知内核,更新磁盘分区信息。如图(7)、(8)所示:

 (7)

 

(8)

二、用sda5和sda6创建一个空间大小为2G的raid0设备,chunk为32k ,如图(9)所示 :

 

  (9) 

三、在/etc/fstab下设置开机自动挂载,如图(10)、(11)所示:

 

(10)

(11)

                        

 

 

 

本文出自 “非专业linux爱好者” 博客,转载请与作者联系!

你可能感兴趣的:(raid)