Raid
1、什么是Raid
1988 年美国加州大学伯克利分校的 D. A. Patterson 教授等首次在论文 “A Case of Redundant Array of Inexpensive Disks” 中提出了 RAID 概念 [1] ,即廉价冗余磁盘阵列( Redundant Array of Inexpensive Disks )。由于当时大容量磁盘比较昂贵, RAID 的基本思想是将多个容量较小、相对廉价的磁盘进行有机组合,从而以较低的成本获得与昂贵大容量磁盘相当的容量、性能、可靠性。随着磁盘成本和价格的不断降低, RAID 可以使用大部分的磁盘, “廉价” 已经毫无意义。因此, RAID 咨询委员会( RAID Advisory Board, RAB )决定用 “ 独立 ” 替代 “ 廉价 ” ,于时 RAID 变成了独立磁盘冗余阵列( Redundant Array of Independent Disks )。但这仅仅是名称的变化,实质内容没有改变。
从实现角度看, RAID 主要分为软 RAID、硬 RAID 以及软硬混合 RAID 三种。软 RAID 所有功能均有操作系统和 CPU 来完成,没有独立的 RAID 控制 / 处理芯片和 I/O 处理芯片,效率自然最低。硬 RAID 配备了专门的 RAID 控制 / 处理芯片和 I/O 处理芯片以及阵列缓冲,不占用 CPU 资源,但成本很高。软硬混合 RAID 具备 RAID 控制 / 处理芯片,但缺乏 I/O 处理芯片,需要 CPU 和驱动程序来完成,性能和成本 在软 RAID 和硬 RAID 之间。
2、基本原理
RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余的技术。 RAID 是一类多磁盘管理技术,其向主机环境提供了成本适中、数据可靠性高的高性能存储。 SNIA 对 RAID 的定义是 [2] :一种磁盘阵列,部分物理存储空间用来记录保存在剩余空间上的用户数据的冗余信息。当其中某一个磁盘或访问路径发生故障时,冗余信息可用来重建用户数据。磁盘条带化虽然与 RAID 定义不符,通常还是称为 RAID (即 RAID0 )。
2.1优点
- 大容量:通常, RAID 容量利用率在 50% ~ 90% 之间。
- 高性能: RAID 的高性能受益于数据条带化技术。
- 可靠性:RAID 冗余技术大幅提升数据可用性和可靠性,保证了若干磁盘出错时,不 会导致数据的丢失,不影响系统的连续运行。
- 可管理性:RAID 可以动态增减磁盘驱动器,可自动进行数据校验和数据重建,这些都可以 大大简化管理工作。
2.2功能实现
-
提高IO能力
-
提高耐用性
-
磁盘冗余备份
2.3实现的方式
-
外接式磁盘阵列:通过扩展卡提供适配能力
-
内接式RAID:主板集成RAID控制器,安装OS前在BIOS里配置
-
软件RAID:通过OS实现,比如:群晖的NAS存储
3、常用Raid
3.1 RAID 0(条带化存储)
RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余;
RAID 0只是单纯地提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据;
RAID 0不能应用于数据安全性要求高的场合。
3.2 RAID 1(镜像存储)
通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据;
当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能;
RAID 1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当个磁盘失效时, 系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。
3.3 RAID 5
N (N>=3) 块盘组成阵列,一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储
N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高;
(N-1) /N磁盘利用率;
可靠性高,允许坏1块盘,不影响所有数据(如果坏了2块硬盘,则恢复不了)
RAID5取代了RAID3,RAID3是将校验数据放在一个磁盘上,所以此硬盘是动态频繁变化的,故障率极高
RAID5将校验数据分摊到每个硬盘上,可靠性高
3.4 RAID 6
N (N>=4) 块盘组成阵列,(N-2) /N磁盘利用率;
与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块;
两个独立的奇偶系统使用不同的算法,即使两块磁盘同时失效也不会影响数据的使用;
相对于RAID 5有更大的“写损失"因此写性能较差。
RAID 等级 |
RAID0 |
RAID1 |
RAID5 |
RAID6 |
RAID10 |
别名 |
条带 |
镜像 |
分布奇偶校验条带 |
双重奇偶校验条带 |
镜像加条带 |
容错性 |
无 |
有 |
有 |
有 |
有 |
冗余类型 |
无 |
有 |
有 |
有 |
有 |
热备份选择 |
无 |
有 |
有 |
有 |
有 |
读性能 |
高 |
低 |
高 |
高 |
高 |
随机写性能 |
高 |
低 |
一般 |
低 |
一般 |
连续写性能 |
高 |
低 |
低 |
低 |
一般 |
需要磁盘数 |
n≥1 |
2n (n≥1) |
n≥3 |
n≥4 |
2n(n≥2)≥4 |
可用容量 |
全部 |
50% |
(n-1)/n |
(n-2)/n |
50% |
4、实现软Raid
mdadm工具:为软RAID提供管理界面,为空余磁盘添加冗余,结合内核中的md(multi devices)RAID设备可命名 为/dev/md0、/dev/md1、/dev/md2、/dev/md3等
做raid(分区)
建立文件系统
挂载
4.1命令
mdadm |
[mode] |
<raiddevice> |
[options] |
<component-devices> |
命令 |
模式 |
阵列名字(md0) |
选项 |
选择/dev/sdb /dev/sdd |
mdadm -Cv /dev/md0 -l 10(raid) -n 4 -x 1 /dev/sd[bcde] {b,c,d,e,f} |
标签:RAID,条带,dev,磁盘,Raid,数据,冗余 From: https://www.cnblogs.com/mcl0914/p/16746712.html