最近开始整理RAID卡相关规格信息,所以再重新汇总整理一下RAID相关的知识点及细节,尽量写的详细简单使用图示让大家更好理解
1.什么是Raid?
RAID 是英文 Redundant Array of Independent Disks 的缩写,中文简称为独立磁盘冗余阵列。简单的说,RAID 是一种把多块独立的硬盘(单个物理硬盘)按不同的方式组合起来形 成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据备份的技术。 组成磁盘阵列的不同方式称为 RAID 级别(RAID Levels)。数据备份的功能是在用户数据一 旦发生损坏后,利用备份信息可以使损坏数据得以恢复,从而保障用户数据的安全性。在用 户看来,组成的磁盘组就像是一个硬盘,用户可以对它进行分区,格式化等操作。总之,对 磁盘阵列的操作与单个硬盘基本一样。不同的是,磁盘阵列的存储速度要比单个硬盘高,而 且可以提供自动数据冗余备份。
RAID 具有如下基本功能特点:
支持自动检测故障硬盘
支持重建硬盘坏道数据
支持硬盘备份
支持硬盘热插拔
支持硬盘扩容
2.什么是RAID卡?
RAID卡就是用独立的硬件板卡来实现RAID功能的办法,一块自带CPU的RAID卡俨然就是一个小型的计算机系统,有自己的CPU、内存、ROM、总线和IO接口,不过这个系统内的微型计算机专门用于处理RAID运算。
RAID卡实物图示
RAID卡工作图示
3.Raid级别
按照用户实际应用需求,RAID 技术分为很多不同的等级,分别可以提供不同的速度、安全性 和性价比。根据用户实际情况选择适当的 RAID 级别可以满足用户对存储系统可用性、性能 和容量的要求。目前常用的 RAID 级别有:RAID 0,RAID 1,RAID 5,RAID 6,RAID 10, RAID 1E,## RAID 50,RAID 60 等。
RAID 0 一种数据条带化(striping)技术
RAID 0是把数据分成若干相等大小的数据块,并把它们写到阵列中不同的硬盘上,这种技术 又称【Striping】(即将数据条带化)。这种把数据分布在多个硬盘上的布局,在数据读写 时是以并行的方式对各硬盘同时进行操作,因此,从理论上讲,其容量和数据传输率是单个 硬盘的 N 倍(N 为构成 RAID 0 的硬盘总数)。但由于其没有数据冗余,无法保护数据的安 2 全性,只能适用于 I/O 要求高,但数据安全性要求低的场合。
如图所示数据会依次条带化写入到各块硬盘上,提升了读写速率,但是如果HDD3损坏则数据丢失
RAID 1 又称镜像
即每个数据盘都有一个镜像盘,每次写数据时必须同时写入镜像盘,读数 据时只从数据盘读出,一旦数据盘发生故障立即转入镜像盘,从镜像盘中读出数据。当更换 故障盘后,数据可以重构,恢复数据盘正确数据。RAID 1 可靠性高,但其有效容量减小到总 容量的一半,因此常用于对容错要求较高的应用场合
如图所示数据会写入同样的数据到两块硬盘上,如果HDD2损坏则会读取HDD1的数据,更换新硬盘到HDD2后会自动rebuild复制HDD1数据到HDD2
RAID2 位级条带化(带海明码校验)
RAID 2是为大型机和超级计算机开发的带海明码校验磁盘阵列。将数据条块化地分布于不同的硬盘上,条块单位为位或字节,并使用称为“加重平均纠错码(海明码)”的编码技术来提供错误检查及恢复。这种编码技术需要多个磁盘存放检查及恢复信息,使得RAID 2技术实施更复杂,因此在商业环境中很少使用。由于RAID 2的特殊性,只要我们使用的磁盘驱动器越多,校验盘在其中占的百分比越少。如果希望达到比较理想的速度和较好的磁盘利用率,那最好可以增加保存校验码ECC码的硬盘,但是这就要付出更多硬盘的购买成本,来确保数据冗余。
RAID3 字节级条带化(带独立奇偶校验)
带奇偶校验码的并行传送校验磁盘阵列,这种校验码与RAID2不同,只能查错不能纠错。它访问数据时一次处理一个带区,这样可以提高读取和写入速度,它像RAID 0一样以并行的方式来存放数据,但速度没有RAID 0快。校验码在写入数据时产生并保存在另一个磁盘上。需要实现时用户必须要有三个以上的驱动器,写入速率与读出速率都很高,因为校验位比较少,因此计算时间相对而言比较少。用软件实现RAID控制将是十分困难的,控制器的实现也不是很容易。它主要用于图形(包括动画)等要求吞吐率比较高的场合。不同于RAID 2,RAID 3使用单块磁盘存放奇偶校验信息。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据。 如果奇偶盘失效,则不影响数据使用。RAID 3对于大量的连续数据可提供很好的传输率,但对于随机数据,奇偶盘会成为写操作的瓶颈。 利用单独的校验盘来保护数据虽然没有镜像的安全性高,但是硬盘利用率得到了很大的提高,为n-1。
RAID4 块级条带化(带独立奇偶校验)
带奇偶校验码的独立磁盘结构。 RAID4和RAID3很象,不同的是,它对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。在图上可以这么看,RAID3是一次一横条,而RAID4一次一竖条。它的特点的RAID3也挺象,不过在失败恢复时,它的难度可要比RAID3大得多了,控制器的设计难度也要大许多,而且访问数据的效率不怎么好
RAID 5 分布式奇偶校验
RAID 5 是一种旋转奇偶校验独立存取的阵列方式,没有固定的校验盘,而是按某种规则把奇 偶校验信息均匀地分布在阵列所属的硬盘上,所以在每块硬盘上,既有数据信息也有校验信 息。如果阵列内的某个磁盘出现故障,丢失的数据可以根据其它磁盘上的奇偶位数据进行重 建。RAID 5 配置要求至少 3 块硬盘。优势:更有效地利用所有冗余 RAID 配置的磁盘容量。 保持良好的读写性能。需要注意的是:磁盘故障会影响吞吐速率。故障后重建信息的时间比 3 镜像配置情况下要长。
RAID 6 双重分布式奇偶校验
RAID 6与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块,进行双重校验。两个独 立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数 据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写 损失”,因此“写性能”较差
RAID7 比较少见
raid7 优化的高速数据传送磁盘结构。RAID7所有的I/O传送均是同步进行的,可以分别控制,这样提高了系统的并行性,提高系统访问数据的速度;每个磁盘都带有高速缓冲存储器,实时操作系统可以使用任何实时操作芯片,达到不同实时系统的需要。允许使用SNMP协议进行管理和监视,可以对校验区指定独立的传送信道以提高效率。可以连接多台主机,因为加入高速缓冲存储器,当多用户访问系统时,访问时间几乎接近于0。由于采用并行结构,因此数据访问效率大大提高。需要注意的是它引入了一个高速缓冲存储器,这有利有弊,因为一旦系统断电,在高速缓冲存储器内的数据就会全部丢失,因此需要和UPS一起工作。当然了,这么快的东西,价格也非常昂贵。
RAID 10
是 RAID 1 和 RAID 0 的结合。此配置要求至少 4 块硬盘,在所有 RAID 等级中,性 能、保护功能及容量都是最佳的。RAID 10 包含成对的镜像磁盘,其数据在整个阵列上进行 剥离。多数情况下,RAID 10 能够承受多个磁盘出现故障的情况,因此更能保证系统的正常 4 运行。其数据丢失的几率最小。优势:与 RAID 1(镜像)有同样的冗余特性,是数据保护的 理想选择
RAID 1E
RAID 1E 是 RAID 1 的增强版本,整合了镜像和数据条带,RAID 1E 的数据恢复能力更强,但 由于 RAID 1E 写一份数据至少要两次,因此,导致 RAID 处理器的负载增大,从而造成磁盘 读写能力的下降。跟 RAID 1 一样,数据是镜像的,逻辑盘的容量是硬盘总容量的一半。RAID 1E 至少需要 3 块硬盘才能实现
RAID 50 分布式奇偶校验条带化
RAID 50 即 RAID (5+0),也被称为镜像阵列条带,像 RAID 0 一样,数据被分区成条带,在 同一时间内向多块磁盘写入;像 RAID 5 一样,也是以数据的校验位来保证数据的安全,且校 验条带均匀分布在各个磁盘上。因此 RAID 50 较 RAID 0 而言提高了其安全性,较 RAID 5 而 言提高了其读写性能
RAID 60 双重分布式奇偶校验条带化
RAID 60即 RAID (6+0),产生的背景与 RAID 50 相同
RAID00
之前见过RAID00但是比较少用,和RAID0的性能利用率是一样的
RAID 00是一种条带化的RAID级别,它将数据同时分成多个条带,并将这些条带分布在多个磁盘组中。RAID 00至少需要4个磁盘驱动器来创建,它提供了更高的性能和容量,但没有冗余。如果其中一个磁盘驱动器出现故障,整个系统都会受到影响,数据可能会丢失,
RAID 0是另一种条带化的RAID级别,它将数据块分成多个条带,并将这些条带分布在多个磁盘驱动器上,RAID 0至少需要两个磁盘驱动器来创建,它提供了更高的性能和容量,但同样没有冗余。与RAID 00相似,如果其中一个磁盘驱动器出现故障,整个系统都会受到影响,数据可能会丢失。
RAID 0+1和RAID 1+0
RAID 0+1和RAID 1+0都是将RAID 0和RAID 1组合起来的RAID级别,性能硬盘利用率是一样的,它们的区别在于数据的存储方式不同。
RAID 0+1:将多个磁盘分成若干组,每组中的磁盘采用RAID 0的方式进行数据分块和条带化,然后将这些组中的数据进行镜像,即采用RAID 1的方式进行备份。这样做的好处是读写速度快,但是如果其中一个磁盘损坏,整个系统就会出现问题。
RAID 1+0:将多个磁盘分成若干组,每组中的磁盘采用RAID 1的方式进行数据备份,然后将这些组中的数据采用RAID 0的方式进行条带化。这样做的好处是数据安全性高,但是读写速度相对较。因此,RAID 0+1和RAID 1+0的区别在于数据存储方式不同,前者先进行条带化再进行镜像,后者先进行镜像再进行条带化。同时,两者都具有高速读写和数据安全性的优点。
RAID 100
通常看作 RAID 1+0+0 ,有时也称为 RAID 10+0 ,即条带化的 RAID 10 。最顶层的 RAID 0 ,即条带化任务,通常由软件层来完成。RAID 100 突破了单个 RAID 控制器对物理磁盘数量的限制,可以获得更高的 I/O 负载均衡, I/O 压力分散到更多的磁盘上,进一步提高随机读性能,并有效降低热点盘故障风险。因此, RAID 100 通常是大数据库的最佳选择。
其他
RAID5E:在RAID5的基础上每块盘预留一部分空间做热备空间使用;
RAID5EE:在RAID5E的基础上将预留的热备空间条带化;
RAID1E:将数据条带化后任一份数据在不同的磁盘上写两次,至少需要3块硬盘才能实现;
JBOD(Just a Bunch of Drives):磁盘控制器把每个磁盘看做独立的磁盘;不提供数据冗余。
RAID 6R:一种改进的RAID 6,使用更高效的奇偶校验算法
RAID 控制器支持的各级别 RAID 的性能及硬盘利用率总结
RAID级别 可靠性 读性能 写性能 硬盘空间利用率
4.Raid规格信息
4.1 raid卡型号
RAID卡的型号众多,它们通常由不同的制造商生产,例如博通(Broadcom)、浪潮(Inspur)、戴尔(Dell)等。以下是一些常见的RAID卡型号,博通为原厂,自研芯片做raid卡,其他OEM厂商多为使用博通芯片加自研固件:
博通(Broadcom) 系列:9361-8i、9305-16i、9305-24i、9311-8i、9440-8i、9460-16i、9500-8i、9500-16i、9540-8i、9560-8i 和 9560-16i 277。
浪潮(Inspur) 系列:2120-8i/16i、3008(IR)/9311-8i、9540-8i 。
戴尔(Dell) 系列:某些型号可能包括 PERC(PowerEdge Expansion ROM Chip)系列,如 PERC H330、H730、H730P 等。
HP(惠普) 系列:智能阵列系列,如 P440ar、P420i 等。
LSI(现为博通旗下) 系列:包括 MegaRAID 系列,如 9260-8i、9270-8i、9341-4i、9300-8i 等 278。
HighPoint 系列:支持SATA接口的RAID控制卡,如 RocketRAID 1640、ROCKETRAID 1542 等 280。
4.2 raid卡型号含义
MegaRAID 9560(W)-16i
MegaRAID Storage Manager(以下简称MSM)是一款能对RAID控制器进行配置,监视和维护的软件,用户可以在服务器系统下直接安装使用。MSM功能全面,具有配置阵列,阵列迁移扩容,删除阵列,阵列信息导入,调整硬盘状态等功能。
MegaRAID Storage Manager只能在GUI图形化界面进行使用,不支持命令行操作。
MegaRAID :Brand Name MegaRAID=MegaRAID Entry, Value, FeatureHBA= Host Bus Adapters
9 Technology 9= SATA+SAS+PCle
5表示接口速率参考下表
6 表示 Subcategory
0= HBA Initiator / Target
1 = HBA Integrated RAlD
2 = MegaRAID Entry (EVP)
4= MegaRAID Entry (iMR)
6= MegaRAID Performance
7= MegaRAlD High Performance
8= MegaRAID External Feature
0表示 Linear Variant Digit
Starts at “0"; This digit is used for changes that are meant
show succession from an older version to a newer version
W 表示PCle Host Interface Width
W=x16
No W = x8
16i 表示Connectors
“X"i = # of Internal ports
“X"e = # of External ports
“X"i”X"e = # of Internal and External ports
4.3 厂商
各家厂商Broadcom LSI avago qlogic emulex之间并购时间,
2005年12月2日HP的安捷伦半导体事业部宣布更名为安华高科技(Avago Technologies)
2013年12月: Avago公司以66亿美元收购LSI。
2014年,Avago以3.09亿美元收购PCI Express交换器与桥接器从业者PLX
2015年2月,安华高Avago正式宣布收购了Emulex,收购价格约为现金6.06亿美元又搞定了Emulex。
2015年5月28日,安华高科技(Avago Tech)与博通公司(Broadcom Corp.)在2015年5月28日宣布双方达成一项最终协议——Avago将以总价高达370亿美元的现金与股票价值收购Broadcom
2016年6月Cavium收购服务器与存储网络链接产品供应商QLogic
2017年11月,59亿美元,Brocade就这样被卖给了收购狂人Broadcom
2010年5月10日PMC-Sierra用区区3400万美元收购了Adaptec渠道存储业务的收购。
2014年到2015年,美高森美集成电路Microsemi收购了以通信和数据中心为重点的公司包括:Mingoa,Centellax,Vitesse,PMC-Sierra。
凭借AT&T /贝尔实验室,朗讯和惠普/安捷伦丰富的技术传统,Broadcom专注于连接我们世界的技术。通过行业领导者Avago Technologies,LSI,Broadcom Corporation,Brocade和CA Technologies的结合,该公司拥有规模,范围和工程人才,成为行业龙头。
4.4 固件版本
RAID卡的固件(Firmware,简称FW)是RAID卡正常工作的重要组成部分,它负责初始化和管理RAID卡的硬件资源,以及执行RAID相关的操作和算法
LSI(现为Broadcom)的RAID卡固件有多个系列,包括IT、IR、iMR和MR,每个系列支持不同的RAID级别和功能
LSI的RAID卡不同固件系列
IT模式 (Initiator Target mode):
IT模式是指RAID卡作为存储系统的主机端,直接连接到存储设备,如磁盘阵列或磁带库。在这种模式下,RAID卡充当初始化器(Initiator),负责发起和管理与存储目标的通信。不支持任何级别RAID
IR模式 (Intelligent RAID mode):
这种模式可能指的是一种智能RAID模式,它具备高级功能,如自动数据管理和优化。IR模式可能包括对RAID卷的智能监控、预测性维护和自动故障恢复。支持RAID0/1/10/1E,最多支持2个虚拟磁盘,单个虚拟磁盘中最多支持10个硬盘,最多可以配置2个全局热备盘,提升数据安全性(SAS3008以后的芯片不再支持IR)
iMR模式 (integrated Memory RAID mode):
iMR模式可能指的是一种集成了内存管理功能的RAID模式,它允许RAID卡更有效地使用其板载缓存,提高性能和响应速度。支持AID0/1/5/10/50/JBOD·无DDR缓存,支持在线容量扩展使用MegaRAID架构,但是没有缓存,只支持RAID0/1/5/10/50;(Broadcom官方8端口以上的产品不支持iMR)
MR模式 (Memory RAID mode):
MR模式可能指的是一种利用大量内存作为缓存来提高RAID性能的模式。在这种模式下,RAID卡可能会使用更多的RAM来暂存数据,从而减少对磁盘的读写次数,提高整体性能,MegaRAID软件内核,有缓存,为硬件RAID
升级raid卡固件
执行./storcli64 /cController_ID download file=9460-8i_nopad.rom noverchk命令,进行升级。
服务器启动完成后,在OS下通过RAID卡命令行工具storcli64进行查询FW Version
./storcli64 /c0 show
[root@localhost]# ./storcli64 /c0 show
Generating detailed summary of the adapter, it may take a while to complete.
CLI Version = 007.0504.0000.0000 Nov 22, 2017
Operating system = Linux 4.19.36-vhulk1907.1.0.h453.eulerosv2r8.aarch64
Controller = 0
Status = Success
Description = None
Product Name = AVAGO MegaRAID SAS 9460-8i
Serial Number = SP01022668
SAS Address = 500062b206129f00
PCI Address = 00:01:00:00
System Time = 11/13/2019 04:33:58
Mfg. Date = 03/12/20
Controller Time = 11/13/2019 09:33:56
FW Package Build = 51.13.0-3223
BIOS Version = 7.13.00.0_070D0300
FW Version = 5.130.00-3059
Driver Name = megaraid_sas
BIOS查看raid卡固件信息
PMC raid卡型号固件查看
MegaCli adpallinfo -aAll
MegaCli adpallinfo -aAll | grep -E “FW Package Build”
MegaCli adpallinfo -aAll | grep -E “Product Name”
4.5 芯片型号-控制器
SAS 3616W芯片型号含义
SAS :Brand NameBCL SAS = SAS/SATA andTri-Mode ROC/OC
3 Technology
4 = Gen4 Tri-Mode
3=Gen3 Tri-Mode
2=SAS Gen3
6 Linear Variant Digit
Starts at“0”_increments for successive
products with similar SAS/PCle Technology
Even indicates an lOC
Odd indicates ROC
16 of Lanes
Total number of PhysDoes not indicate thenumber of Ports cipotential porthidths
W PCle Host Width
W=x16 Host Width CAPABLE“blank”= x8 Host Width
控制器芯片和raid卡型号是一对多的关系,一个控制器芯片可能对应多个raid卡型号
Raid卡型号及芯片型号对照表
4.6 卡外形
PCIe形态Half-Height, Half-Length、Full-Height, Half-Length
H和L分别是High 和Length
F和H分别是全和半。全高和半高。
半高的意思:这里半高是网卡相对于挡板,只有他的一半。所以叫半高。
半长的意思:是网卡长度只有一半,对于一些显卡比如P100相比于网卡,网卡只有一半长。
OCP3.0 SFF:这是一个缩写,表示开放计算项目规范(OCP)版本3.0中的"Small Form Factor",即薄型尺寸,是一种用于高密度服务器的规范。9562-16i为OCP形态OCP 3.0 NIC SFF
HHHL:半高半长
FHHL:全高半长
4.7 插槽类型
PCIe是串行总线,PCIe1.0的线上比特传输速率为2.5Gb/s,物理层使用8/10编码,即8比特的数据,实际在物理线路上是需要传输10比特的,因此:
PCIe1.0 x 1的带宽=(2.5Gb/s )/ 10bit =250MB/s
这是单条Lane的带宽,有几条Lane,那么整个带宽就是250MB乘以Lane的数目。
PCIe2.0的线上比特传输速率在PCIe1.0的基础上翻了一倍,为5Gb/s,物理层同样使用8/10编码,所以:
PCIe2.0 x 1的带宽=(5Gb/s )/ 10bit = 500MB/s
同样,有多少条Lane,带宽就是500MB/s乘以Lane的数目。
PCIe3.0的线上比特传输速率没有在PCIe2.0的基础上翻倍,不是10Gb/s,而是8Gb/s,但物理层使用的是128/130编码进行数据传输,所以:
PCIe3.0 x 1的带宽=(8Gb/s)/ 8bit = 1GB/s
同样,有多少条Lane,带宽就是1GB/s乘以Lane的数目。
由于采用了128/130编码,128比特的数据,只额外增加了2bit的开销,有效数据传输比率增大,虽然线上比特传输率没有翻倍,但有效数据带宽还是在PCIe2.0的基础上做到翻倍。
4.8 插槽宽度
Width(带宽):通常用x1、x2、x4、x8等表示,表示该链路由几条lane组成。
Speed(速率):通常用2.5GT/s、5GT/s、8GT/s,表示每条lane上的传输速率。PCIe1.0为2.5GT/s,PCIe2.0为5GT/s,PCIe3.0为8GT/s,
GT/s —— Giga transation per second (千兆传输/秒),即每一秒内传输的次数。重点在于描述物理层通信协议的速率属性,可以不和链路宽度等关联。
Gbps —— Giga Bits Per Second (千兆位/秒)。GT/s 与Gbps 之间不存在成比例的换算关系。
PCIe 链路吞吐量计算方法:
吞吐量 = 速率 * 带宽 * 2方向(全双工) * 编码方式
例如:PCI-e2.0 协议支持 5.0 GT/s,即每一条Lane 上支持每秒钟内传输 5G个bit;但这并不意味着 PCIe 2.0协议的每一条Lane支持 5Gbps 的速率。为什么这么说呢?因为PCIe 2.0 的物理层协议中使用的是 8b/10b 的编码方式。 即每传输8个bit,需要发送10个bit;这多出的2个bit并不是对上层有意义的信息。那么, PCIe 2.0协议的每一条Lane支持 5 * 8 / 10 = 4 Gbps 的速率。以一个PCIe 2.0 x8的通道为例,该链路的吞吐量=5GT * 8 * 2 * 8/10 = 64 Gbps = 8GB/s。
同理,PCI-e3.0 协议支持 8.0 GT/s, 即每一条Lane 上支持每秒钟内传输 8G个Bit。而PCIe 3.0 的物理层协议中使用的是 128b/130b 的编码方案。 即每传输128个bit,需要发送130个bit。那么, PCIe 3.0协议的每一条Lane支持 8 * 128 / 130 = 7.877 Gbps = 984.6 MB/s 的速率。以PCIe 3.0 x8的通道为例,该链路的吞吐量= 8GT * 8 * 2 * 128/130 = 126.031 Gbps = 15.754 GB/s。
4.9 设备内部物理接口(mini/slim)
Mini SAS(SFF-8087)和Slim SAS(SFF-8644)是两种小型化的SAS(Serial Attached SCSI)连接器,它们用于服务器和存储系统中连接SAS硬盘或SAS扩展器。以下是这两种连接器的一些关键特点:
Mini SAS:
Mini SAS连接器是一种较小的连接器,通常用于内部连接。
它支持4个SAS或SATA通道,提供数据传输和电源供应。
Mini SAS连接器通常用于连接硬盘驱动器和RAID卡。
Slim SAS:
Slim SAS连接器比Mini SAS更小,设计用于节省空间的应用。
它支持2个SAS或SATA通道,适用于紧凑型系统。
Slim SAS连接器常用于外部连接,如连接外部存储设备。
尺寸和形状:
Mini SAS连接器比传统的SAS连接器小,而Slim SAS则更进一步减小了尺寸。
这两种连接器的设计都是为了适应高密度的存储需求。
4.10 接口速率
12Gb/s SAS:
这指的是12Gbps的串行连接SCSI(Serial Attached SCSI)接口,它是一种用于连接存储设备的高速串行接口。
SAS接口通常用于连接高性能存储系统,如企业级服务器和存储阵列,支持更高的数据传输速率和更可靠的连接。
6Gb/s SATA:
这指的是6Gbps的串行ATA(Serial ATA)接口,它是一种广泛用于连接硬盘驱动器和固态硬盘的
4.11 接口
常见8i ,8e ,16i, 16e
内置接口
Internal Ports(内部端口)定义:内部端口是指位于设备内部的连接点,通常用于连接内部组件或扩展卡。
External Ports(外部端口)定义:外部端口是指位于设备外部的接口,用于连接外部设备或进行数据传输。
4.12电容
电池/电容:提供缓存数据的意外断电保护
4.13缓存容量Cache
一些高端的RAID卡会配备缓存,通常是电池备份写入缓存(BBWC)或超级电容备份,以提供数据保护和提高性能。缓存RAID卡与外部总线进行数据交换的场所,常见缓存容量1GB 2GB 4GB 8GB
RAID卡的缓存可能是易失性(如SRAM)或非易失性(如使用电池备份的DRAM)。
MRAM:(磁阻随机存取存储器)缓存是一种关键技术,它可以显著提高数据读写速度并减少操作延迟,从而提升系统性能334。MRAM是一种非易失性存储器,与基于DRAM的缓存相比,MRAM在系统掉电时能够保持数据不丢失,因此它在RAID卡中的应用可以免去额外的掉电保护措施如超级电容,简化了系统设计并解决了异常掉电导致的写洞问题
4.14 raid卡类型
SAS HBA卡( Tri-Mode HBA卡)
Host Bus Adapters,主机总线适配器实现服务器内部的!/0通道与存储系统的I0通道之间的物理连接、协议转换的板卡
扩展出更多的接口来连接更多种类的外部设备,提高存储方案的灵活性和可扩展性
SAS RAID卡( Tri-Mode RAID卡)
实现RAID功能的板卡
兼备HBA卡的功能
提供更多的数据保护、硬盘管理功能
RAID卡和HBA卡是两种不同的硬件接口卡,它们在服务器存储系统中扮演着重要角色。
RAID卡(Redundant Array of Independent Disks)的主要功能是管理磁盘阵列,提供数据冗余和提高存储性能。RAID卡通过不同RAID级别(如RAID 0、1、5、6等)将多个硬盘组合成一个逻辑硬盘,实现数据的条带化、镜像或校验,从而提高读写速度和数据安全性。RAID卡通常包含I/O处理器、SCSI控制器、SCSI连接器和缓存等组件 。
HBA卡(Host Bus Adapter)则是一种硬件接口卡,用于连接服务器和存储设备,使服务器能够直接访问存储设备而无需经过网络。HBA卡支持多种存储协议,如SCSI、SAS和SATA,提供高速数据传输和降低CPU负载的优势。HBA卡分为两种类型:FC-HBA卡(光纤通道卡)和iSCSI-HBA卡(通过RJ45接口连接),分别用于连接光纤通道交换机和iSCSI存储设备。
两者的主要区别在于它们的应用场景和功能:
RAID卡专注于磁盘阵列的管理,提供数据保护和性能优化。
HBA卡则专注于服务器与存储设备之间的直接连接,提供高速数据访问和协议转换。
4.15 支持类型raid0/1/5/6/10
常用RAID卡支持0、1、5、6、10、50、60的类型
常见系统盘做raid1 数据盘做raid5
具体不同型号支持哪些raid level要参考官网规格书
4.16 RAID卡驱动
驱动类型
HBA卡:mpt3sas
RAID卡:megaraid_sas
linux系统安装驱动
系统安装界面,进入安装选项时点ESC取消加载,出现boot命令行,输入linux dd
选择driver所在的U盘,加载dd.iso文件
Linux系统升级驱动
RHEL/CentOS
rpm -ivh kmod_xxx.rpm
Debian系
dpkg –i kmod_xxx.deb
4.17 最大功耗
RAID卡的功耗范围可以从几瓦到几十瓦不等
4.18 硬raid 、软raid 、半软raid
软件RAID(software-basedRAID)是基于软件的RAID
通过用操作系统来完成 RAID 功能的就是软 RAID ,比如:在 Linux 操作系统下,用3块硬盘做 RAID5 。也就是不使用 RAID 控制器(业界称其为 RAID 协处理器―RAID Co-Processor )与 I/O 芯片,直接通过软件层实现的 RAID,所有功能都是操作系统(OS)与CPU来完成,可想而知这是效率最低的一种 RAID。
很不少服务器操作系统都集成了RAID功能,但是它的CPU占用率非常高,并且只有非常有限的阵列操作功能。
软件RAID是在操作系统下实现RAID,软件RAID不能保护系统盘。部分操作系统,RAID的配置信息存在系统信息中,而不是存在硬盘上;当系统崩溃需要重新安装时,RAID信息也会丢失。
软件RAID5对CPU的消耗较大,会导致I/O功能的降低,所以不建议使用软件RAID5。
硬件RAID
主要通过外插卡来实现,部分主板固化RAID芯片支持硬RAID功能,各种 RAID 卡,还有主板集成能够做的 RAID 都是硬 RAID。所以硬 RAID 就是用专门的 RAID 控制器(RAID 卡)将硬盘和电脑连接起来,RAID 控制器负责将所有的RAID成员磁盘配置成一个虚拟的 RAID 磁盘卷。对于操作系统而言,他只能识别到由 RAID 控制器配置后的虚拟磁盘,而无法识别到组成 RAID 的各个成员盘。硬 RAID 全面具备了自己的 RAID 控制/处理与 I/O 处理芯片,甚至还有阵列缓冲(Array Buffer),对 CPU 的占用率以及整体性能中最有优势。
支持较高的RAID级别,如RAID5/6/50/60等;
较高的稳定性、可靠性;
支持更多高级功能,如:
Online Capacity Expansion(OCE);
Online RAID Level Migration(RLM);
S.M.A.R.T support;
Configurable stripe size up to 1MB;
Global and dedicated Hot Spare with Revertible Hot Spare support.
半软raid
硬件辅助磁盘阵列(Hardware-Assisted RAID),Host RAID是基于硬和软RAID之间的一种产品,Host RAID把软件RAID的功能集成到产品的固件上,从而提高了产品的功能和容错能力。
半软 RAID 需要一张 RAID 卡,以及厂商所提供的驱动程序。但是半软半硬 RAID 缺乏自己的 I/O 处理芯片,所以这方面的工作仍要由 CPU 与驱动程序来完成。而且,半软半硬 RAID 所采用的 RAID 控制/处理芯片的能力一般都比较弱,不能支持高的 RAID 等级。这款 RAID 较易迁移到其他电脑。 优点:性能以及稳定性较软 RAID 有不少提升较易迁移到其他电脑。
mdadm 是 多磁盘和设备管理(Multiple Disk and Device Administration) 的缩写。它是一个命令行工具,可用于管理 Linux 上的软件 RAID 阵列
能够实现简单的RAID功能,如RAID0/1/10。
部分主板集成了IO控制芯片,如LSI SAS2008/SAS3008,也可以实现一定的Host RAID功能。
5. 配置RAID的四种方式
5.1命令行使用工具配置
命令行配置raid工具介绍Storcli、 Megacli、 sas3ircu、 arcconf、mdadm、
Megacli官方已经不再更新
StorCli基本能够实现megacli的全部功能
StorCli输出格式更为标准,有利于字段处理
sas3ircu对LSI3008阵列卡的管理
arcconf适用于PMC阵列卡
mdadm可用于软件raid
OS操作系统下或者EFI shell 系统使用storcli工具配置RAID指令
64位系统命令的绝对路径为:/opt/MegaRAID/storcli/storcli64;32位系统命令的绝对路径为:/opt/MegaRAID/storcli/storcli。
常用命令
./storcli64 /c0 show all # 查看第一块RAID卡版本、功能、状态、以及raid卡下的物理磁、逻辑盘信息。c0代表第一块raid卡
./storcli64 /c0 /e251 /s2 set jbod 设置s2盘为jbod模式
./storcli64 /c0 add vd each type=raid0 drives=252:0,1,2,3 # 单独为一块物理磁盘创建raid0
./storcli64 /c0 add vd type=raid5 size=all names=tmp1 drives=32:2-4
#由第3、4 、5块物理磁盘来构建RAID5,分配所有空间的逻辑磁盘命名tmp1
./storcli64 /c0 /e252 /s3 start initialization # 初始化某个物理磁盘
./storcli64 /c0 flushcache 清除第一块RAID卡缓存
更多storcli指令参考:https://docs.broadcom.com/doc/12352476
以下 5 个命令是你使用 mdadm 的基础功能:
创建 RAID 阵列:mdadm --create /dev/md/test --homehost=any --metadata=1.0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1
组合(并启动)RAID 阵列:mdadm --assemble /dev/md/test /dev/sda1 /dev/sdb1
停止 RAID 阵列:mdadm --stop /dev/md/test
删除 RAID 阵列:mdadm --zero-superblock /dev/sda1 /dev/sdb1
检查所有已组合的 RAID 阵列的状态:cat /proc/mdstat
如果做raid提示失败报错creat raid fail,可进BIOS对raid卡恢复出厂设置或者使用erase命令擦除硬盘
开机del进入BIOS–找到Device Manager–选择要操作的卡AUAG0 MegaRAID Configuration Utility03.21.14.00–main menu–set factory defaults–save 保存退出重启做RAID
擦除硬盘指令
$ sudo storcli /c0/e0/s8 show erase
$ sudo storcli /c0/e0/s8 stop erase
EFI shell下配置raid
将storcli.efi文件放在U盘里,插到服务器上,开机看post页面提示,按F12进入EFI Shell下执行storcli命令
EFI 可扩展固件接口:可扩展固件接口(英文名Extensible Firmware Interface 或EFI)是由英特尔,是介于平台固件和操作系统之间的一层软件接口,一个主导个人电脑技术研发的公司推出的一种在未来的类PC的电脑系统中替代BIOS的升级方案。 EFI在概念上非常类似于一个低阶的操作系统,并且具有操控所有硬件资源的能力。电脑开机后按下F12(不同主板按键不同,请参考电脑主板说明),选择EFI开头的光驱或者USB设备,就会自动引导EFI的安装程序
EFI Shell是EFI提供的一个交互式的命令行Shell环境,在这里你可以执行一些efi应用程序,加载efi设备驱动程序,以及引导操作系统,从引导菜单项中选择”efi shell”,回车,待出现”shell]”提示符时即表明你已进入efi shell环境中,下面对一些常用的efi shell环境下的命令作些简要介绍:
fsn:改变当前驱动器。例如:fs0当前映射到了ls-240 驱动器的话, fs0: [回车]就将提供对ls-240 驱动器的访如:fs0:
attrib[-b] [+/- rhs] [file] 察看或设置文件属性
break设置执行断点
cd[path] 改变当前目录
cls[background color] 清屏
compfile1 file2 进行文件比较
cp[-r] file [file] … [dest] 拷贝文件和目录
5.2 RAID卡图形管理页面配置
RAID卡管理工具配置
BIOS下设置卡为raid mode
SATA SW RAID Option”,将其值更改为“LSI RAID”
开机 按ctrl + M进入管理页面
按照提示配置好raid后保存重启
5.3 BIOS下配置
开机按del进入BIOS–advanced–LSI Megaraid configure–Virtual Drive Management–Create Configuration–Select RAID Level(选择要设置的raid等级)–Create Configuration–Drive Selections(选中要设置的硬盘)–save configure–OK
DELL机器配置raid
开机后,按F2键进入BIOS–进入 “Device Settings”–选择“RAID Controller in Slot 6:Dell Configuration Utility”–通过Tab键进行切换,选择“Main Menu”–选择“Configuration Management”,配置Raid–选择“Create Virtual Disk”创建一个虚拟磁盘–点击“Select Physical Disks”选择需要加入此Raid的磁盘–将本地的两块磁盘全部选择上,然后点击“Apply Changes”进行提交,并点击“OK”–使用“Esc”键返回到主界面,并再次按“Esc”退出键,提示是否退出,选择“Yes”退出–接下来将操作系统的ISO文件映射到服务器,开始安装操作系统
5.4 BMC页面配置
浪潮机器登录BMC界面查看RAID卡型号和硬盘信息
存储–视图:
选择PCIE2-RAID可以列出阵列卡详细信息
选择disk-*可以查看硬盘信息
择物理盘目录,把需要做JBOD的硬盘改为unconfig good状态并保存
选择控制器目录,把JBOD模式选择启用并保存;
删除阵列:选择逻辑盘,举例删除logical disk0,点保存生效
Lenovo xcc 配置raid
登录Lenovo XClarity Controller–从服务器中选择RAID 设置 左侧导航窗格上的配置或存储–单击启用编辑模式–单击“创建虚拟磁盘” --选择磁盘做raid配置–单击“应用”–单击“开始创建” --虚拟磁盘完成后,页面将恢复到“Raid 设置”选项卡并显示创建的虚拟磁盘
6.在 软Raid 中扩展现有的 RAID 阵列和删除故障的磁盘
假设磁盘中的一个有问题了需要删除该磁盘,但我们需要在删除磁盘前添加一个备用磁盘来扩展该镜像,因为我们需要保存我们的数据。当磁盘发生故障时我们需要从阵列中删除它,这是这个主题中我们将要学习到的。
有了两个磁盘在 RAID 阵列中,级别为 RAID 1。现在我们增加一个磁盘到现有的阵列里。
现在让我们添加新的磁盘“sdd”
要添加新的分区 /dev/sdd1 到现有的阵列 md0,请使用以下命令。
#mdadm --manage /dev/md0 --add /dev/sdd1
要扩展阵列,我们需要使用下面的命令。
#mdadm --grow --raid-devices=3 /dev/md0
现在我们可以看到第三块磁盘(sdd1)已被添加到阵列中,在第三块磁盘被添加后,它将从另外两块磁盘上同步数据。
#mdadm --detail /dev/md0
注意: 对于大容量磁盘会需要几个小时来同步数据。在这里,我们使用的是1GB的虚拟磁盘,所以它非常快在几秒钟内便会完成。
从阵列中删除磁盘
在数据被从其他两个磁盘同步到新磁盘sdd1后,现在三个磁盘中的数据已经相同了(镜像)。
正如我前面所说的,假定一个磁盘出问题了需要被删除。所以,现在假设磁盘sdc1出问题了,需要从现有阵列中删除。
在删除磁盘前我们要将其标记为失效,然后我们才可以将其删除。
#mdadm --fail /dev/md0 /dev/sdc1
#mdadm --detail /dev/md0
现在我们要从阵列中删除 faulty 的磁盘,raid 设备将像之前一样继续有2个设备。
#mdadm --remove /dev/md0 /dev/sdc1
一旦故障的磁盘被删除,然后我们只能使用2个磁盘来扩展 raid 阵列了。
#mdadm --grow --raid-devices=2 /dev/md0
#mdadm --detail /dev/md0
7. 性能问题分析方向
PCIE带宽和插槽限制性能,PCIe 3.0 x8理论8000 MB/s(实际效率 6400 MB/s )
RAID卡/Expander背板损耗,10~20%
JBOD模式更有助于发挥Drive的最大带宽
RAID cache(write back)有效提升写性能
raid level影响,RAID1 写性能低于单盘
Write through模式下RAID5/6随机写性能接近单盘(RAID5为例,因为校验盘的存在,每次写伴随着数据盘的读写和校验盘的读写,至少两次读+两次写)
固件驱动版本影响,过旧的FW或driver
RAID卡的后台初始化等任务后降低IO性能
Strip Size越大,磁盘顺序读写性能越高Strip Size越小,不磁盘随机性能越好