千家信息网

RAID的个级别特性

发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,RAID是英文Redundant Array of Independent Disks的缩写,中文简称为独立磁盘冗余阵列。RAID就是一种由多块硬盘构成的冗余阵列。虽然RAID包含多块硬盘,但是在操作
千家信息网最后更新 2024年11月23日RAID的个级别特性

RAID是英文Redundant Array of Independent Disks的缩写,中文简称为独立磁盘冗余阵列。RAID就是一种由多块硬盘构成的冗余阵列。虽然RAID包含多块硬盘,但是在操作系统下是作为一个独立的大型存储设备出现。利用RAID技术于存储系统的好处主要有以下三种:

1.通过把多个磁盘组织在一起作为一个逻辑卷提供磁盘跨越功能;

2.通过把数据分成多个数据块(Block)并行写入/读出多个磁盘以提高访问磁盘的速度;

3.通过镜像或校验操作提供容错能力。

RAID的特性

RAID-0:

RAID 0:将多个的磁盘合并成一个大的磁盘,不具有冗余,并行I/O,速度最快。RAID 0亦称为带区集。它是将多个磁盘并列起来,成为一个大硬盘。在存放数据时,其将数据按磁盘的个数来进行分段,然后同时将这些数据写进这些盘中。

所以,在所有的级别中,RAID 0的速度是最快的。但是RAID 0没有冗余功能的,如果一个磁盘(物理)损坏,则所有的数据都无法使用。

RAID-1:

RAID1 把磁盘阵列中的硬盘分成相同的两组,互为镜像,当任一磁盘介质出现故障时,可以利用其镜像上的数据恢复,从而提高系统的容错能力。对数据的操作仍采用分块后并行传输方式。所有RAID 1不仅提高了读写速度,也加强系统的可靠性。但其缺点是硬盘的利用率低,冗余度为50%。

RAID-2

..

RAID-5:

RAID 5:向阵列中的磁盘写数据,奇偶校验数据存放在阵列中的各个盘上,允许单个磁盘出错。RAID 5也是以数据的校验位来保证数据的安全,但它不是以单独硬盘来存放数据的校验位,而是将数据段的校验位交互存放于各个硬盘上。这样任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。硬盘的利用率为n-1。

RAID-6

读、写性能提升

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

有容错能力:2块磁盘

最少磁盘数:4, 4+

RAID10

读、写性能提升

可用空间:N*min(S1,S2,...)/2

有容错能力:每组镜像最多只能坏一块;

最少磁盘数:4, 4+

RAID01


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

这里我们用的是centos6 而这个的实现方式有两种,

硬件实现方式

软件实现方式

CentOS 6上的软件RAID的实现:

结合内核中的md(multi devices)


mdadm:模式化的工具

命令的语法格式:mdadm [mode] [options]

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


模式:

创建:-C

装配: -A

监控: -F

管理:-f, -r, -a


: /dev/md#

: 任意块设备



-C: 创建模式

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

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

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

-c CHUNK_SIZE: 指明块大小;

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


例如:创建一个10G可用空间的RAID5;


-D:显示raid的详细信息;

mdadm -D /dev/md#


管理模式:

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

-a: 添加磁盘

-r: 移除磁盘


观察md的状态:

cat /proc/mdstat


停止md设备:

mdadm -S /dev/md#

watch的命令:

语法使用:watch -n# 'COMMAND'

选项常用:-n #;刷新间隔,时间单位"秒"

0