RAID磁盘阵列与阵列卡

RAID(Redundant Array of Independent Disks,中文简称:独立冗余磁盘阵列)是多块独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术

RAID是把多块独立的物理硬盘按照不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份技术

在用户看来,组成的磁盘组就像时一个硬盘,用户可以对它进行分区,格式化等等。

组成磁盘阵列的不同方式成为RAID级别(RAID Levels)。RAID技术分为几种不同的等级,分别可以提供不同的速度,安全性和性价比。根据实际情况选择适当的RAID级别可以满足用户对存储系统可用性、性能和容量的要求

常用的RAID级别有以下几种:RAID0,RAID1,RAID5,RAID6,RAID1+0等

RAID 0(带区卷)

N块(N>=2)硬盘并行组成一个新的逻辑盘 (N容量总和)
  • RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上(速度相当于提升2倍),因此具有很高的数据传输率,但它没有数据冗rong余,因此并不能算是真正的RAID结构
  • RAID 0只是单纯的提高性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响所有数据
  • RAID 0不能应用于数据安全性要求高的场合,不建议企业用户单独使用。

RAID 1(镜像卷)

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

RAID 5

N(N>=3)块硬盘组成阵列 (N-1)/N容量
  • 一份数据产生N-1个条带,同时还有1份校验数据,共N份数据在N块盘上循环均衡存储

  • N块盘同时读写,读性能很高,但由于有校验机制的问题,写性能相对不高

  • 可靠性高,允许坏1块盘,不影响所有数据

RAID 6

N(N>=4)块盘组成阵列,(N-2)/N容量

  • 与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用
  • RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写损失”,因此写性能较差

RAID 1+0

N(偶数,N>=4)块盘两两镜像后,再组合成一个RAID 0 (N/2容量)

  • N/2块盘同时写入,N块盘同时读取
  • 性能高,可靠性高

阵列卡

阵列卡就是用来实现RAID功能的板卡,通常是由I/O处理器、硬盘控制器、硬盘连接器和缓存等一系列零组件构成的,不同的RAID卡支持的RAID功能不同,例如支持RAID0、RAID1、RAID5、RAID10等

RAID卡的接口类型:IDE接口、SCSI接口、 SATA接口、 SAS接口

  • IDE接口

    • IDE(Intergrated Drive Electronics),即“电子集成驱动器”,本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器
    • IDE这一接口技术从诞生至今就一直在不断发展,性能也不断的提高,特点时价格低廉、兼容性强
    • IDE属于并行接口
  • SCSI接口

    • SCSI(Small Computer System Interface),小型计算机系统接口,是同IDE完全不同的接口,IDE接口是普通PC的标准接口,而SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术
    • SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及支持热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此SCSI硬盘主要应用于中、高端和高档工作站中
  • SATA接口

    • SATA(Serial ATA)接口的硬盘又叫串口硬盘,由于采用串行方式传输数据而知名
    • Serial ATA 2.0的数据传输率将达到300MB/s,最终SATA将实现600MB/s的最高数据传输率
  • SAS接口

    • SAS是新一代的SCSI技术,和现在流行的 Serial ATA (SATA)硬盘相同,都是采用串行技术以获得更高的传输速度
    • SAS的接口技术可以向下兼容SATA
阵列卡的缓存

缓存(Cache)是RAID卡与外部总线交换数据的场所,RAID卡先将数据传送到缓存,再由缓存和外边数据总线交换数据。它是RAID卡电路板上的一块存储芯片,与硬盘盘片相比,具有极快的存取速度

缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,大缓存能够大幅度地提高数据命中率从而提高RAID卡整体性能

不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等

构建软RAID磁盘阵列

  • 需求描述:

    • 为Linux服务器添加4块SCSI硬盘
    • 使用madadm软件包,构建RAID5磁盘阵列,提高硬盘存储的性能和可靠性

    步骤:

  • 安装madadm

  • 准备用户RAID阵列的分区

    • 为Linux服务器添加4块SCSI硬盘,并使用fdisk工具各划分出一块2GB的分区,依次为:/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1
    • 将其类型ID更改为“fd”,对应为“Linux raid autodeted“,表示支持用于RAID磁盘阵列
  • 创建RAID设备

  • 在RAID设备中建立文件系统

  • 挂载并使用文件系统

查看是否安装mdadm:rpm -qa | grep mdadm

mdadm /dev/md0 -r /dev/sdb1 移除
mdadm /dev/md0 -a /dev/sdb1 添加

raid 0 (条带卷)

先创建分区,更换fd格式

mdadm -C(创建) -v(显示详细过程) /dev/md0(创建raid的名字,起名字) -l0(指定raid0) -n(几块磁盘的意思)2(两块磁盘) /dev/sd[b-c]1(哪几块磁盘)

[root@localhost ~]#mdadm  -C -v /dev/md0 -l0 -n2 /dev/sd[b-c]1      //创建[root@localhost ~]#cat /proc/mdstat                            //查看阵列实时信息,过程,方法1
Personalities : [raid0]
md0 : active raid0 sdc1[1] sdb1[0]41908224 blocks super 1.2 512k chunksunused devices: <none>
[root@localhost ~]#mdadm -D /dev/md0                           //查看raid阵列详细信息,方法2
/dev/md0:Version : 1.2Creation Time : Thu Nov  7 09:36:45 2019Raid Level : raid0Array Size : 41908224 (39.97 GiB 42.91 GB)Raid Devices : 2Total Devices : 2Persistence : Superblock is persistentUpdate Time : Thu Nov  7 09:36:45 2019State : clean Active Devices : 2Working Devices : 2Failed Devices : 0Spare Devices : 0Chunk Size : 512KConsistency Policy : noneName : localhost.localdomain:0  (local to host localhost.localdomain)UUID : ba69f781:dc5d3736:d7277806:2deca5f7Events : 0Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb11       8       33        1      active sync   /dev/sdc1[root@localhost ~]#mkfs.xfs /dev/md0                           //格式化[root@localhost ~]#mkdir /raid0                                //创建目录[root@localhost ~]#vim /etc/fstab                               //进入配置文件自动挂载[root@localhost ~]# mount -a                                 //启动挂载

这里配置的时自动挂载,也可使用命令单次挂载(重启后挂载失效,需重挂),详见:磁盘分区、格式化、挂载https://blog.csdn.net/ML908/article/details/102907347

raid 1 (镜像卷)2块镜像,加一块备用

mdadm -C(创建) -v(显示详细过程) /dev/md1(创建raid的名字,起名字) -l1(指定raid1) -n(几块磁盘的意思)2(两块磁盘) /dev/sd[d-e]1(哪几块磁盘) -x1(指定1块备用) /dev/sdf1(哪几块磁盘备用)

[root@localhost ~]#mdadm -C -v /dev/md1 -l1 -n2 /dev/sd[d-e]1 -x1 /dev/sdf1      //创建[root@localhost ~]#cat /proc/mdstat                            //查看阵列实时信息,方法1[root@localhost ~]#mdadm -D /dev/md1                        //查看阵列详细信息,方法2[root@localhost ~]#mkfs.xfs /dev/md1                          //格式化[root@localhost ~]#mkdir /raid1                            //创建目录[root@localhost ~]#vim /etc/fstab                          //进入配置文件自动挂载[root@localhost ~]# mount -a                                 //启动挂载 
查看raid1阵列详细信息:
[root@localhost ~]# mdadm -D /dev/md1     //查看阵列详细信息
/dev/md1:Version : 1.2Creation Time : Thu Nov  7 11:35:44 2019Raid Level : raid1…………省略部分内容Number   Major   Minor   RaidDevice State0       8       49        0      active sync   /dev/sdd1    //sdd1在使用1       8       65        1      active sync   /dev/sde1    //sde1在使用2       8       81        -      spare   /dev/sdf1           //sdf1备用磁盘

mdadm -f /dev/md1 dev/sdd1 删掉磁盘sdd1

sdf1将自动顶上

如下:

[root@localhost ~]# mdadm -f /dev/md1 /dev/sdd1   //删除磁盘sdd1
mdadm: set /dev/sdd1 faulty in /dev/md1
[root@localhost ~]# mdadm -D /dev/md1             //查看阵列详细信息
/dev/md1:Version : 1.2Creation Time : Thu Nov  7 11:35:44 2019Raid Level : raid1                       …………省略部分内容Number   Major   Minor   RaidDevice State2       8       81        0      spare rebuilding   /dev/sdf1   1       8       65        1      active sync   /dev/sde10       8       49        -      faulty   /dev/sdd1    //sdd1被替换下来,sdf1在使用中
raid 5 ( 3块盘 加一块备用)
[root@localhost ~]# mdadm -C -v /dev/md5 -l5 -n3 /dev/sd[b-d]1 -x1 /dev/sde    //创建
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: partition table exists on /dev/sde
mdadm: partition table exists on /dev/sde but will be lost ormeaningless after creating array
mdadm: size set to 20954112K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.
[root@localhost ~]# cat /proc/mdstat                 //查看阵列实时信息,方法1
Personalities : [raid6] [raid5] [raid4]
md5 : active raid5 sdd1[4] sde[3](S) sdc1[1] sdb1[0]41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_][===>.................]  recovery = 17.1% (3603584/20954112) finish=1.4min speed=200199K/secunused devices: <none>
[root@localhost ~]# mdadm -D /dev/md5                //查看阵列详细信息,方法2
/dev/md5:Version : 1.2Creation Time : Thu Nov  7 12:25:25 2019Raid Level : raid5Array Size : 41908224 (39.97 GiB 42.91 GB)Used Dev Size : 20954112 (19.98 GiB 21.46 GB)Raid Devices : 3Total Devices : 4Persistence : Superblock is persistentUpdate Time : Thu Nov  7 12:26:23 2019State : clean, degraded, recovering Active Devices : 2Working Devices : 4Failed Devices : 0Spare Devices : 2Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncRebuild Status : 57% completeName : localhost.localdomain:5  (local to host localhost.localdomain)UUID : 2dcb3007:89a72ec7:23ba6aee:93953214Events : 10Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb1         //sdb1在使用1       8       33        1      active sync   /dev/sdc1         //sdc1在使用4       8       49        2      spare rebuilding   /dev/sdd1    //sdd1在使用3       8       64        -      spare   /dev/sde         //sde备用磁盘[root@localhost ~]#mkfs.xfs /dev/md5                          //格式化[root@localhost ~]#mkdir /raid5                            //创建目录[root@localhost ~]#vim /etc/fstab                          //进入配置文件自动挂载[root@localhost ~]# mount -a                                 //启动挂载        
raid 6 ( 4块盘 加2块备用)
[root@localhost ~]# mdadm -C -v /dev/md6 -l6 -n4 /dev/sd[b-e]1 -x2 /dev/sd[f-g]1  //创建
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: size set to 20954112K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md6 started.
[root@localhost ~]# mdadm -D /dev/md6             //查看阵列详细信息,方法2
/dev/md6:Version : 1.2Creation Time : Thu Nov  7 13:31:00 2019Raid Level : raid6Array Size : 41908224 (39.97 GiB 42.91 GB)Used Dev Size : 20954112 (19.98 GiB 21.46 GB)Raid Devices : 4Total Devices : 6Persistence : Superblock is persistentUpdate Time : Thu Nov  7 13:31:19 2019State : clean, resyncing Active Devices : 4Working Devices : 6Failed Devices : 0Spare Devices : 2Layout : left-symmetricChunk Size : 512KConsistency Policy : resyncResync Status : 23% completeName : localhost.localdomain:6  (local to host localhost.localdomain)UUID : b6f625fc:037a6507:62b0ed91:668e7d0bEvents : 3Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb1    //sdb1在使用1       8       33        1      active sync   /dev/sdc1     //sdc1在使用2       8       49        2      active sync   /dev/sdd1    //sdd1在使用3       8       65        3      active sync   /dev/sde1    //sde1在使用4       8       81        -      spare   /dev/sdf1     //sdf1备用磁盘5       8       97        -      spare   /dev/sdg1     //sdg1备用磁盘
[root@localhost ~]# cat /proc/mdstat            //查看阵列实时信息,方法1
Personalities : [raid6] [raid5] [raid4]
md6 : active raid6 sdg1[5](S) sdf1[4](S) sde1[3] sdd1[2] sdc1[1] sdb1[0]41908224 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/4] [UUUU][===================>.]  resync = 95.3% (19973980/20954112) finish=0.0min speed=206534K/secunused devices: <none>[root@localhost ~]#mkfs.xfs /dev/md6                          //格式化[root@localhost ~]#mkdir /raid6                            //创建目录[root@localhost ~]#vim /etc/fstab                          //进入配置文件自动挂载[root@localhost ~]# mount -a                                 //启动挂载
raid 1+0(4块硬盘,加2块备用)
[root@localhost ~]# mdadm -C -v /dev/md10 -l1 -n2 /dev/sd[b-c]1 -x1 /dev/sdd1  //创建raid0
mdadm: Note: this array has metadata at the start andmay not be suitable as a boot device.  If you plan tostore '/boot' on this device please ensure thatyour boot-loader understands md/v1.x metadata, or use--metadata=0.90
mdadm: size set to 20954112K
Continue creating array?
Continue creating array? (y/n) y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md10 started.
[root@localhost ~]# mdadm -D /dev/md10              //查看阵列详细信息,方法2
/dev/md10:…………省略部分信息Number   Major   Minor   RaidDevice State0       8       17        0      active sync   /dev/sdb1   //sdb1在使用中1       8       33        1      active sync   /dev/sdc1   //sdc1在使用中2       8       49        -      spare   /dev/sdd1         //sdd1备用磁盘[root@localhost ~]# mdadm -C -v /dev/md1 -l1 -n2 /dev/sd[e-f]1 -x1 /dev/sdg1   //创建raid0
mdadm: Note: this array has metadata at the start andmay not be suitable as a boot device.  If you plan tostore '/boot' on this device please ensure thatyour boot-loader understands md/v1.x metadata, or use--metadata=0.90
mdadm: size set to 20954112K
Continue creating array?
Continue creating array? (y/n) y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost ~]# mdadm -D /dev/md1                //查看阵列详细信息,方法2
/dev/md1:Version : 1.2…………省略部分信息Number   Major   Minor   RaidDevice State0       8       65        0      active sync   /dev/sde1    //sde1在使用中1       8       81        1      active sync   /dev/sdf1    //sdf1在使用中2       8       97        -      spare   /dev/sdg1        //sdg1备用磁盘[root@localhost ~]# mdadm -C -v /dev/md110 -l0 -n2 /dev/md10 /dev/md1      //创建raid 1+0
mdadm: chunk size defaults to 512K
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md110 started.[root@localhost ~]# cat /proc/mdstat                 //查看阵列信息,过程,方法1
Personalities : [raid1] [raid0]
md110 : active raid0 md1[1] md10[0]41875456 blocks super 1.2 512k chunksmd1 : active raid1 sdg1[2](S) sdf1[1] sde1[0]20954112 blocks super 1.2 [2/2] [UU]md10 : active raid1 sdd1[2](S) sdc1[1] sdb1[0]20954112 blocks super 1.2 [2/2] [UU]unused devices: <none>
[root@localhost ~]# mdadm -D /dev/md110
/dev/md110:Version : 1.2Creation Time : Thu Nov  7 19:13:01 2019Raid Level : raid0Array Size : 41875456 (39.94 GiB 42.88 GB)Raid Devices : 2Total Devices : 2Persistence : Superblock is persistentUpdate Time : Thu Nov  7 19:13:01 2019State : clean Active Devices : 2Working Devices : 2Failed Devices : 0Spare Devices : 0Chunk Size : 512KConsistency Policy : noneName : localhost.localdomain:110  (local to host localhost.localdomain)UUID : 3c6d322f:b1da560b:b4a87bdf:bccee99aEvents : 0Number   Major   Minor   RaidDevice State0       9       10        0      active sync   /dev/md10   //md10使用中,raid11       9        1        1      active sync   /dev/md1    //md1使用中,raid1

raid1+0 在这里是创建两个raide1,并为两个raid1各加了一块磁盘作为备份,将两个raid1再做一个raid0。这里raid 1+0 的存储容量,因为是做了镜像的,所以是4块磁盘一半的容量,也就是2个磁盘的容量

Linux——磁盘Part 4:磁盘阵列(raid0、raid1、raid5、raid6、raid1+0)相关推荐

  1. 23. RAID磁盘阵列——RAID0,RAID1,RAID5,RAID6,RAID10,RAID01,软RAID,硬RAID

    1.        基本介绍: (1)RAID磁盘阵列(Redundant Array of Independent Disks)简称为独立冗余磁盘阵列. (2)磁盘阵列:其实就是把多块独立的硬盘组合 ...

  2. raid0 raid1 raid5 raid6 raid10的优缺点

    一.Raid 0:一块硬盘或者以上就可做raid0 优势:数据读取写入最快,最大优势提高硬盘容量,比如3块80G的硬盘做raid0 可用总容量为240G.速度是一样. 缺点:无冗余能力,一块硬盘损坏, ...

  3. raid0 raid1 raid5 raid6 raid10的优缺点和做各自raid需要几块硬盘

    一.Raid 0:一块硬盘或者以上就可做raid0 优势:数据读取写入最快,最大优势提高硬盘容量,比如3块80G的硬盘做raid0 可用总容量为240G.速度是一样. 缺点:无冗余能力,一块硬盘损坏, ...

  4. 文件服务器raid1+5,服务器上的raid1 raid5,什么意思啊!

    服务器上的raid1 raid5,什么意思啊!以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 服务器上的raid1 ra ...

  5. RAID磁盘阵列详解and软阵列(raid0,raid1,raid5,raid1+0 热备盘)配置实验

    文章目录 前言 一:RAID磁盘阵列详解 1.1:RAID 0磁盘阵列介绍 1.2:RAID容错对比表 二:阵列卡介绍 2.1:阵列卡介绍 2.2:RAID卡的接口类型 2.3:阵列卡的缓存 三. 软 ...

  6. 磁盘阵列Raid0,Raid1,Raid10,Raid5的创建

    项目 Raid0 Raid1 Raid10 Raid5 Raid6 最少磁盘数 2 2 4 3 4 最大容错磁盘数(1) 无 n-1 n/2 1 2 资料安全性(1) 完全沒有 最佳 最佳 好 比RA ...

  7. Linux磁盘阵列——四块硬盘组建RAID0和RAID5

    磁盘阵列--四块硬盘组建RAID0和RAID5 宇宙山河浪漫,生活点滴温暖,都值得我前进. 创建四个相同大小的硬盘 打开虚拟机,点击箭头所在位置 点击添加硬盘 一直点下一步,到出现磁盘大小(我这里定的 ...

  8. Linux学习笔记(十一):磁盘配额、磁盘阵列与逻辑卷

    Linux学习笔记(十一):磁盘配额.磁盘阵列与逻辑卷 磁盘配额Quota 磁盘阵列RAID RAID level 软件磁盘阵列 逻辑卷管理器LVM 基本概念:PV, VG, LV 逻辑卷创建与管理 ...

  9. Linux的基本学习(十一)——磁盘配额 与 磁盘阵列

    前言: 承接前面的内容来继续学习Linux 磁盘配额(Quota)的应用于实践 磁盘配额 由于Linux系统是多人多任务的环境,所以会有多人共同使用一个磁盘空间的情况发生.如果其中有少数几个用户大量地 ...

最新文章

  1. BERT大火却不懂Transformer?读这一篇就够了 原版 可视化机器学习 可视化神经网络 可视化深度学习...20201107
  2. 涉密文件检查工具_肇庆高要销毁资料文件公司粉碎销毁文件资料公司欢迎您
  3. asp.net 中GridView控件实现全选及反选的功能
  4. Android开发 asmack断线收不到通知的BUG解决
  5. AI技术已达如此高度:去码、上色6到飞起
  6. operator、explicit与implicit
  7. 2022. 将一维数组转变成二维数组
  8. 汇编Ring 3下实现 HOOK API
  9. 使用angular4和asp.net core 2 web api做个练习项目(二), 这部分都是angular
  10. windows iis 部署 django项目
  11. Flex JSP with HttpService
  12. 解决禁用IE设置代理检测不通过连不上网
  13. 无线射频识别技术与条形码的比较
  14. BugKu web题目(bp)弱密码top1000
  15. Re: 客户协作 OVER 合同谈判
  16. walking机器人入门教程-视觉转激光建图-cartographer算法建图
  17. C语言文件的读取和写入
  18. 《域渗透攻防指南》签名版预售来啦
  19. HDU 4411 Arrest
  20. 拥有什么“绝技”才能入选?Web3.0 训练营 15 支入营团队详解

热门文章

  1. 2016年中国信息无障碍十大进展
  2. 软著 --- 注册与实名认证
  3. 120个极品网站 收集历时2年 - 计算机应用 - 迅雷论坛
  4. 【极限精度】基于stm32f4xx的蜂鸣器音乐播放(生日快乐)及国际绝对音名标准频率定义(32位无符号整型精度、十二等律体系、A4=440.01000Hz)
  5. 用inno Setup做应用程序安装包的示例脚本 .iss文件
  6. 用Marvelous Designer是如何构建人物角色3d服装的
  7. 感知器算法(PLA)
  8. 2020/09-2020/11 读书摘录
  9. Ansible介绍、安装、远程执行命令、拷贝文件或者目录、远程执行脚本
  10. Pubwin 2007有奖“找茬”计划