Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

前言

RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余的技术。 RAID 是一类多磁盘管理技术,其向主机环境提供了成本适中、数据可靠性高的高性能存储。 SNIA 对 RAID 的定义是 :一种磁盘阵列,部分物理存储空间用来记录保存在剩余空间上的用户数据的冗余信息。当其中某一个磁盘或访问路径发生故障时,冗余信息可用来重建用户数据。磁盘条带化虽然与 RAID 定义不符,通常还是称为 RAID (即 RAID0 )。

一:RAID磁盘阵列详解

RAID 将一组硬盘连结成来,组成一个阵列,以避免单个硬盘损坏而带来的数据损失, 同时亦提供了比单个硬盘高的可用性及容错性。常见的组合方式有:RAID0、RAID1、RAID5、RAID6、RAID01、RAID10,下面分别介绍它们的特性。

1.1:RAID 0 磁盘阵列介绍

RAID0 是一种非常简单的的方式,它将多块磁盘组合在一起形成一个大容量的存储。当我们要写数据的时候,会将数据分为N份,以独立的方式实现N块磁盘的读写,那么这N份数据会同时并发的写到磁盘中,因此执行性能非常的高。

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

RAID0 的读写性能理论上是单块磁盘的N倍(仅限理论,因为实际中磁盘的寻址时间也是性能占用的大头)

但RAID0的问题是,它并不提供数据校验或冗余备份,因此一旦某块磁盘损坏了,数据就直接丢失,无法恢复了。因此RAID0就不可能用于高要求的业务中,但可以用在对可靠性要求不高,对读写性能要求高的场景中。

那有没有可以让存储可靠性变高的方案呢?
有的,下面的RAID1就是。

1.2:RAID 1 磁盘阵列介绍

RAID1 俗称“镜像”,它最少由两个硬盘组成,且两个硬盘上存储的数据均相同,以实现数据冗余。RAID1 读操作速度有所提高,写操作理论上与单硬盘速度一样,但由于数据需要同时写入所有硬盘,实际上稍为下降。容错性是所有组合方式里最好的,只要有一块硬盘正常,则能保持正常工作。但它对硬盘容量的利用率则是最低,只有 50%,因而成本也是最高。RAID1 适合对数据安全性要求非常高的场景,比如存储数据库数据文件之类.

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

RAID1其实与RAID0效果刚好相反。RAID1 这种写双份的做法,就给数据做了一个冗余备份。这样的话,任何一块磁盘损坏了,都可以再基于另外一块磁盘去恢复数据,数据的可靠性非常强,但性能就没那么好了。

了解了RAID0和RAID1之后,我们发现这两个方案都不完美啊。
这时候就该 性能又好、可靠性也高 的方案 RAID5 登场了。

1.3:RAID 5 磁盘阵列介绍

RAID5 最少由三个硬盘组成,它将数据分散存储于阵列中的每个硬盘,并且还伴有一个数据校验位,数据位与校验位通过算法能相互验证,当丢失其中的一位时,RAID 控制器能通过算法,利用其它两位数据将丢失的数据进行计算还原。因而 RAID5 最多能允许一个硬盘损坏,有容错性。RAID5 相对于其它的组合方式,在容错与成本方面有一个平衡,因而受到大多数使用者的欢迎。一般的磁盘阵列,最常使用的就是 RAID5 这种方式,

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

验,xor为异或运算)

RAID5的方式,最少需要三块磁盘来组建磁盘阵列,允许最多同时坏一块磁盘。如果有两块磁盘同时损坏了,那数据就无法恢复了。

1.4:RAID 6 磁盘阵列介绍

RAID6 是在 RAID5 的基础上改良而成的,RAID6 再将数据校验位增加一位,所以允许损坏的硬盘数量也由RAID5 的一个增加到二个。由于同一阵列中两个硬盘同时损坏的概率非常少,所以,RAID6 用增加一块硬盘的代价,换来了比 RAID5 更高的数据安全性

况下,也能保障数据可恢复。

为什么RAID6这么牛呢,因为RAID6在RAID5的基础上再次改进,引入了双重校验的概念。

RAID6除了每块磁盘上都有同级数据XOR校验区以外,还有针对每个数据块的XOR校验区,这样的话,相当于每个数据块有两个校验保护措施,因此数据的冗余性更高了。

但是RAID6的这种设计也带来了很高的复杂度,虽然数据冗余性好,读取的效率也比较高,但是写数据的性能就很差。相对于RAID5 有更大的“写损失”因此RAID6在实际环境中应用的比较少。

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

1.5:RAID容错表

  • RAID 1 , RAID 5, RAID 6都具有容错性,我们做个对比
RAID 0 RAID 1 RAID 5 RAID 6
是否有校验
保护能力 允许一个设备故障 允许一个设备故障 允许两个设备故障
写性能 增加一倍 需写两个存储设备 需写计算校验 需双重写计算校验
磁盘利用率 100% 50% N-1/N(N>=3) N-2/N(N>=4)

1.6:RAID 1+0(10)磁盘陈列介绍

RAID1+0兼备了RAID1和RAID0的有优点。首先基于RAID1模式将磁盘分为2份,当要写入数据的时候,将所有的数据在两份磁盘上同时写入,相当于写了双份数据,起到了数据保障的作用。且在每一份磁盘上又会基于RAID0技术讲数据分为N份并发的读写,这样也保障了数据的效率。

但也可以看出RAID1+0模式是有一半的磁盘空间用于存储冗余数据的,浪费的很严重,因此用的也不是很多。

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

1.7:RAID 0+1磁盘介绍

是RAID0与RAID1的组合,先RAID0分段存储数据,再RAID1镜像备份数据(假设有4块磁盘,就先分2组RAID0,再视2组为两块盘,做镜像备份)

允许有坏多个磁盘,但必须在同一个RAID0中,因为可以用RAID1中的镜像恢复

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

二:阵列卡介绍

阵列卡的全称叫磁盘阵列卡 是用来做 RAID 的。磁盘阵列是一种把若干硬磁盘驱动器按照一定要求组成一个整体,整个磁盘阵列由阵列控制器管理的系统。冗余磁盘阵列RAID(Redundant Array of Independent Disks)技术 1987 年由加州大学伯克利分校提出, 最初的研制目的是为了组合小的廉价磁盘来代替大的昂贵磁盘,以降低大批量数据存储的费用(当时 RAID 称为 dundant Array of Inexpensive Disks 廉价的磁盘阵列),同时也希望采用冗余信息的方式,使得磁盘失效时不会使对数据的访问受损失,从而开发出一定水平的数据保护技术。

2.1:阵列卡接口类型

接口类型目前主要有几种:IDE 接口、SCSI 接口、SATA 接口和 SAS 接口。

2.11:IDE接口

IDE全称即“电子集成驱动器”,俗称PATA并口。IDE接口,也称之为ATA接口,英文含义是“高级技术附加装置”。ATA接口在九十年代初开始应用于台式机。它使用一个40芯电缆与主板进行连接。

IDE 是传统的并行接口ATA硬盘,但在实际的应用中,人们也习惯用IDE来称呼最早出现IDE类型硬盘ATA-1,这种类型的接口随着接口技术的发展已经被淘汰了,而其后发展分支出更多类型的硬盘接口,比如ATA、Ultra ATA、DMA、Ultra DMA等接口都属于IDE硬盘。

IDE接口缺点: 数据传输速度慢、线缆长度过短、连接设备少、针脚40-80针,导致线路拥塞,不利于机箱内散热。(已淘汰)

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

2.12:SATA接口

SATA硬盘与传统的并口IDE硬盘相比,具有显著优势。首先是SATA的传输速度快,除此之外,SATA硬盘还具有安装方便、容易散热、支持热插拔等优点,这些都是并口IDE硬盘无法相比的。正因如此,SATA硬盘上市后,便成为市场关注的焦点。

总之,SATA采用串行连接方式,串行IDE总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比,其最大的区别在于能对传输指令(不仅仅是数据)进行检查。如果发现错误会自动矫正。SATA的优势:支持热插拔 ,传输速度快,执行效率高

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

2.13:SAS接口

SAS 是新一代的 SCSI 技术,和现在流行的 Serial ATA(SATA)硬盘相同,都是采用串行

技术以获得更高的传输速度,并通过缩短连结线改善内部空间等。SAS 是并行 SCSI 接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效能、可用性和扩充性,提供与串行 ATA (Serial ATA,缩写为 SATA)硬盘的兼容性。

SAS 的接口技术可以向下兼容 SATA。SAS 系统的背板(Backpanel)既可以连接具有双端口、高性能的 SAS 驱动器,也可以连接高容量、低成本的 SATA 驱动器。因为 SAS 驱动器的端口与 SATA 驱动器的端口形状看上去类似,所以 SAS 驱动器和 SATA 驱动器可以同时存在于一个存储系统之中。但需要注意的是,SATA 系统并不兼容 SAS,所以 SAS 驱动器不能连接到SATA 背板上。由于 SAS 系统的兼容性,IT 人员能够运用不同接口的硬盘来满足各类应用在容量上或效能上的需求,因此在扩充存储系统时拥有更多的弹性,让存储设备发挥最大的投资效益。

串行 SCSI 是点到点的结构,可以建立磁盘到控制器的直接连接。具有以下特点:

  • 更好的性能

点到点的技术减少了地址冲突以及菊花链连结的减速; 为每个设备提供了专用的信号通路来保证最大的带宽; 全双工方式下的数据操作保证最有效的数据吞吐量;

  • 简便的线缆连结

更细的电缆搭配更小的连接器;

  • 更好的扩展性

可以同时连结更多的磁盘设备。

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

2.14:SCSI接口

SCSI 的英文全称为“Small Computer System Interface”(小型计算机系统接口), 是同 IDE 完全不同的接口,IDE 接口是普通 PC 的标准接口,而 SCSI 并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。SCSI 接口具有应用范围广、多任务、带宽大、CPU 占用率低,以及支持热插拔等优点,但较高的价格使得它很难如 IDE 硬盘般普及,因此 SCSI 硬盘主要应用于中、高端和高档工作站中。SCSI 硬盘和普通 IDE 硬盘相比有很多优点:接口速度快,并且由于主要用于服务器,因此硬盘本身的性能也比较高, 硬盘转速快,缓存容量大,CPU 占用率低,扩展性远优于 IDE 硬盘,并且支持热插拔

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

2.2:阵列卡的缓存

缓存(Cache)是RAID卡与外部总线交换数据的场所,是RAID卡电路板上的一块存储芯片,与硬盘盘片相比,具有极快的存取速度。RAID卡现将数据传送到缓存,再经由缓存和外边数据总线交换数据
缓存的大小与速度是直接关系到RAID卡的实际传输速度的重要因素,大缓存能够大幅度的提高数据命中率从而提高RAID卡整体性能
不同的RAID卡出厂时配备的内存容量不同,一般为几兆到数百兆容量不等,主要取决于磁盘阵列产品所应用的范围。

三:构建软RAID磁盘阵列实验

3.1:启动服务器

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.2:跟windiws差不多 要先进入bios管理界面

鼠标移动到最上面根目录;

点击F2;

点击Clear Config;

点击回车;

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.3:界面初始化

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.4:下一步就是新增VD

选择根目录,点击F2;

弹出菜单选择“Create New VD”创建;

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.5:创建新的磁盘阵列

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.6:配置RAID 1 磁盘阵列

系统盘 Raid 1 分配两个磁盘

按回车弹出界面;

选择“RAID-1”;

Physical Disks这个选项按回车,前面两个选项变成“X”;

按TAB键跳转到下一个配置;

其它不用修改,点击“OK”按键;

确认一下“OK”;

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.61:添加磁盘,进行高级设置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.7:配置RAID 5 磁盘阵列

数据盘配Raid5 分三个磁盘

RAID Level:RAID-5

Physical Disks:选择接下来的3个修改成”X“

Read Policy:No Read Ah

修改完成保存退出

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.71:设置RAID 5 热备盘

跳转菜单:Ctrl+N

选择最后一个Ready的盘,回车

选择热备份:”Make Global HS“,回车

修改完成,状态变更为:Hotspare

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.8:退出重启

点”esc“按钮;

点”OK“继续;

点”Ctrl+Alt+Del“重启机器;

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.9安装操作系统

先点击F11;

跳出管理界面,点击菜单”BIOS Boot Menu“;

选择C盘;

选择”Integrated RAID PERC H71OP Mini

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.10:进入Linux操作

选择第一个

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置

3.11:优化操作

vim /etc/ssh/sshd_config;

修改内容,修改后结果为:UseDMS no

!wq 保存并退出

…(img-iS0KI8Ve-1593926032762)]

[外链图片转存中…(img-PjZryXVk-1593926032762)]

3.10:进入Linux操作

选择第一个

[外链图片转存中…(img-RTDYbDek-1593926032762)]

[外链图片转存中…(img-Ao4ImR01-1593926032763)]

3.11:优化操作

vim /etc/ssh/sshd_config;

修改内容,修改后结果为:UseDMS no

!wq 保存并退出

Linux--RAID磁盘阵列与阵列卡详解-----理论+服务器RAID磁盘阵列配置