raid选型需匹配负载特性:数据库日志盘禁用raid 5,应选raid 10;raid 0无冗余仅适用临时场景;raid 1适合小关键系统;raid 5/6重建压力大、随机写性能差;raid 10为高频io首选。

RAID级别选错,性能和容错直接打折扣
RAID不是选“听起来高级”的那个,而是看你的负载到底在读多、写多、还是怕丢数据。比如数据库日志盘用RAID 5,写放大严重,重建时还容易拖垮整台机器;而RAID 10虽然贵一半容量,但随机写IOPS能稳在35K+,故障恢复也快得多。
-
RAID 0:只适合临时缓存或视频转码——没冗余,一块盘挂,全盘完蛋 -
RAID 1:两块盘镜像,读快、写慢、容错强,适合小关键系统(如监控告警库) -
RAID 5:三盘起步,单盘故障可扛,但小文件随机写性能差,重建压力大 -
RAID 6:四盘起步,双校验,适合大容量归档盘,但写延迟更高 -
RAID 10:四盘起(偶数最佳),兼顾速度与容错,高频数据库、虚拟化存储首选
mdadm创建阵列时,chunk size和元数据格式不能默认
默认chunk=64K对SSD是浪费,对机械盘又太小;--metadata=1.2比旧版0.90支持更大阵列、热备识别更稳——不指定,重启可能根本组不上阵列。
- 机械盘(如ST4000DM004):设
--chunk=256K,匹配顺序大文件吞吐 - NVMe SSD:建议
--chunk=1048576(1MB),减少元数据开销 - 务必加
--metadata=1.2,否则/dev/md0可能无法被initramfs识别 - 热备盘要提前分区为
FD00类型,用gdisk设,别用fdisk——后者不识别RAID元数据
阵列建好就完事?漏掉这三步,重启后大概率变md127
Linux不会自动记住你手敲的mdadm --create命令。没配mdadm.conf、没更新initramfs、没检查mdstat状态,开机就是降级或未组装状态。
响应式优雅大气集团企业网站模板自带内核安装即用,响应式模板,图片文本均已可视化,简单后台易上手。支持多种内容模型,可按需添加。模板特点: 1、安装即用,自带人人站CMS内核及企业站展示功能(产品,新闻,案例展示等),并可根据需要增加表单 搜索等功能(自带模板) 2、支持响应式 3、前端banner轮播图文本均已进行可视化配置 4、伪静态页面生成 5、支持内容模型、多语言、自定义表单、筛选、多条件搜
- 生成配置:
sudo mdadm --detail --scan --verbose >> /etc/mdadm/mdadm.conf,然后确认文件里真有ARRAY行 - Debian/Ubuntu必须跑:
sudo update-initramfs -u;RHEL/CentOS用sudo dracut -f - 启动后立刻查:
cat /proc/mdstat,看到active raid5且无degraded才算落地 - 别信
lsblk显示的md0——它可能只是设备节点存在,实际没激活
性能上不去?先关掉barrier=1和atime,再看iostat
默认挂载选项会拖慢RAID写入,尤其XFS/ext4下barrier=1强制刷盘,atime记录访问时间纯属IO浪费。但关之前得确认你的磁盘有没有断电保护(BBU/电容)。
- 安全前提:确认硬盘/阵列有掉电保护(如企业级SSD或带BBU的RAID卡),否则
barrier=0有丢数据风险 - 挂载时加:
noatime,barrier=0(XFS)或noatime,errors=remount-ro,barrier=0(ext4) - 验证效果:
iostat -x 1看%util是否长期>90%,await是否持续>20ms - 别一上来就调
/sys/block/md0/queue/nr_requests——先确保底层没被udev规则或BIOS SATA模式锁死
真正卡住人的地方,往往不是“怎么建RAID”,而是“为什么重启不认”“为什么写入卡在30MB/s不动”“为什么换新盘后同步慢得像爬”。这些都藏在/proc/mdstat、dmesg | grep md和mdadm --detail /dev/md0的输出里——别跳过它们。










