三块硬盘做RAID,最优先的答案是组RAID 5,兼顾性能、容量利用率和数据安全;如果业务对写入性能不敏感、更看重冗余,则RAID 1加一块热备盘是更稳妥的方案。
很多朋友在配置服务器时,面对三块一样的硬盘会犯难:做RAID 0吧,速度快但挂一块盘数据全没;做RAID 1吧,又只能用到一块盘的容量,另外两块纯属浪费,别慌,三块盘其实有一个非常成熟的解法组合,下面把方案选择、实操步骤和注意事项一次讲清楚。
三块盘组RAID 5和RAID 1热备怎么选
对于三块硬盘的阵列配置,行业共识认为RAID 5是性价比最高的选择,RIAD 5把数据和对应的奇偶校验信息分散存储在三块盘上,允许其中任意一块盘故障而不丢数据,容量利用率是(n-1)/n,也就是三块4TB盘能获得约8TB可用空间,只牺牲一块盘的容量换来了冗余,这笔账非常划算。
三块硬盘RAID 5与RAID 1热备的关键差异
| 对比维度 | RAID 5(三块盘) | RAID 1 + 热备盘 |
|---|---|---|
| 可用容量 | 两块盘的容量 | 一块盘的容量 |
| 容错能力 | 允许坏一块盘 | 允许坏一块盘,热备盘自动顶上 |
| 写入性能 | 较好,需计算校验 | 较弱,需同步写两份 |
| 读取性能 | 较快(并行读取) | 较快(可从多盘读取) |
| 重建机制 | 换盘后手动重建 | 故障后自动启用热备盘 |
| 适合场景 | 文件服务器、数据库、虚拟化存储 | 对数据安全要求极高、写入量不大的系统 |
如果你盘位有限、又想最大化利用存储空间,无脑选RAID 5不会有错,但要注意,RAID 5在坏盘后重建期间如果第二块盘也出问题,数据依然会丢,所以建议保留一块冷备盘或热备盘。
什么场景下更推荐RAID 1加热备盘
据统计,相当一部分中小企业服务器跑的都是轻量级应用,比如OA系统、财务软件、小规模数据库,这类场景每天写入的数据量不大,但对数据完整性要求极高。三块盘做RAID 1阵列加一块热备盘的思路是:两块盘组成RAID 1镜像,第三块盘设为热备(Hot Spare),一旦镜像中任何一块盘故障,热备盘自动顶替并开始数据重建,全程无需人工干预,多数情况下,这种配置能明显降低业务中断风险。
服务器三块硬盘RAID配置实操步骤
确定了RAID方案后,剩下的事就是动手配置,无论你是用主板自带的软RAID还是独立阵列卡,思路大同小异,下面以常见的LSI/Avago阵列卡为例(戴尔、惠普、浪潮服务器多数用这类芯片),走一遍完整流程。
第一步:确认硬盘状态和阵列卡型号
开机自检时按 Ctrl + R(戴尔PERC卡)或 Ctrl + H(LSI原厂卡)进入阵列配置界面,先确认三块盘都被正确识别,注意检查硬盘的健康状态(Foreign/Ready状态),如果有外来配置(Foreign),需要先清掉或导入,否则没法新建阵列。
第二步:创建RAID 5阵列
在配置界面选择”Configuration Wizard”或”Create Virtual Drive”,按以下步骤操作:
- 选择阵列级别为RAID 5
- 按住Ctrl键把三块物理盘全部选中
- 设置条带大小(Strip Size),默认64KB适合大多数业务场景
- 初始化策略选”Fast Init”(快速初始化)即可
- 写入策略推荐”Write Back”(回写),配合BBU电池保护效果更好
提交配置后,等待阵列初始化完成,初始化期间服务器可以正常使用,但建议不要跑重负载任务。
第三步:创建热备盘(如果选RAID 1方案)
阵列级别选RAID 1,选中两块盘做镜像,然后在”Dedicated Hot Spare”或”Global Hot Spare”选项中,把第三块盘指定为热备盘,注意热备盘建议选同型号、同容量的盘,避免因容量差异导致重建失败。
第四步:安装系统和驱动
新阵列创建后会显示为一个虚拟磁盘(Virtual Disk),此时用系统安装盘引导,加载阵列卡驱动,就能正常分区安装了,Windows Server和主流Linux发行版都自带常见阵列卡驱动,但保险起见,安装前准备好对应系统的驱动,尤其是在老型号服务器上装新系统时,成功率会高不少。
三块盘RAID阵列卡设置与性能调优
阵列搭好只是第一步,后续的性能调优和状态监控同样重要,多数情况下,RAID 5的瓶颈不在硬盘本身,而在阵列卡的缓存策略和系统层面的读写调度。
缓存策略和条带大小的调整建议
阵列卡设置的合理与否,直接决定三块盘跑出来的真实速度,对于RAID 5阵列,业内专家指出,以下设置值得你花两分钟检查一下:
- 写策略:有BBU(电池备份单元)或Flash Cache的卡,务必开Write Back,随机写入性能能提升一个档次
- 读策略:默认”Read Ahead”(预读)适合顺序读取多的场景,比如视频监控、文件共享
- 条带大小:数据库系统建议设128KB,文件存储用64KB即可,虚拟化平台则推荐256KB
用命令查看和监控阵列状态
在Linux系统下,用megacli或storcli工具查看状态最直观,以storcli为例:
storcli /c0 /vall show
这条命令会返回所有虚拟磁盘的健康状态,如果看到状态是”Optl”(Optimal),说明阵列正常;如果是”Dgrd”(Degraded),说明有一块盘掉线了,需要尽快更换硬盘并重建阵列。
在Windows系统下,可以装厂商提供的管理工具,比如戴尔的OpenManage、惠普的Smart Storage Administrator,图形界面点开就知道哪块盘亮红灯。
三块盘RAID损坏重建与故障排查
再好的阵列也有坏盘的那一天,RAID的意义就是让你在坏盘时不慌,但前提是你知道正确的处理流程。
硬盘报警后的标准处理动作
当阵列卡发出持续蜂鸣声,或者管理界面显示某块盘Status为Failed时,按以下步骤操作:
- 不要立刻重启服务器,先确认是哪块物理盘故障(看盘位的LED灯)
- 拔下故障盘,换上同规格的新盘
- 进入阵列管理界面,把新盘设为Rebuild目标
- 等待重建完成,期间阵列仍然可用,但性能和安全性处于降级状态
注意:RAID 5只允许坏一块盘,如果在重建过程中又报警了,立刻备份能导出的所有数据,别再折腾了。
重建时间多久,期间能否跑业务
重建耗时主要取决于硬盘容量和阵列负载,一块16TB的盘在空载状态下重建可能需要10到20个小时,期间如果持续有业务读写,时间会拉得更长,这不是阵列卡慢,而是校验数据计算本身需要时间,建议重建操作安排在业务低峰期进行,但别因为怕影响业务就拖延换盘,拖得越久,第二块盘故障的风险就越高。
三块盘RAID常见问题与性能答疑
三块硬盘做RAID 5之后,实际可用空间怎么算?
可用空间 = (硬盘总数 – 1) × 单盘容量,三块4TB硬盘组RAID 5,实际可用约8TB,因为要扣掉一块盘的容量存校验数据,同时注意硬盘厂商的1TB按1000GB算,系统里看到的是按1024GB算,最终显示的可用容量会比标称值略少。
RAID 5和RAID 10同样是冗余阵列,三块盘能组RAID 10吗?
不能,RAID 10要求至少四块盘,且盘数必须为偶数,如果你只有三块盘,硬要组RAID 10唯一的办法是再接一块盘,倒过来想,如果想留足扩展空间,预算允许的话直接上四块盘组RAID 10反而更省心。
阵列卡电池没电了会影响RAID 5性能吗?
会有一定影响,阵列卡检测到BBU电池失效或未充满时,会强制把写策略从Write Back降级为Write Through,以保护数据一致性,反映到实际体验上,就是写入速度明显下降,有时候能掉一半还多,处理办法是更换阵列卡电池,或者在确认服务器有稳定UPS供电后,在管理界面里手动关闭Write Back强制降级策略,但不建议这么干,毕竟一旦突然断电,回写缓存里的数据会直接丢失。
说了这么多,最后给你一句总结:三块硬盘做RAID,别再纠结了,RAID 5是通用答案,RAID 1加热备是求稳答案,在动手配置前,把硬盘型号确认好、阵列卡驱动准备好、BIOS启动模式设置对(UEFI还是Legacy),这波操作基本就稳了。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/787235.html


