首页/系统/服务器硬件与 RAID 速查/RAID 1 镜像:双盘冗余的基本盘
RAID 级别与计算68 条

RAID 1 镜像:双盘冗余的基本盘

RAID 1 把同一份数据写入两块盘,读可以并发、写需同时成功;单盘损坏不影响业务,重建只需一次全量复制。系统盘与小型数据库的常见选择。

RAID 1 是什么

RAID 1 是最直观的冗余方式:同一份数据同时写入两块盘,两块盘互为完整镜像。读操作可以从任一块盘取数,因此读性能接近单盘的两倍;写操作必须两块都成功,写惩罚为 2。单块盘损坏时业务不中断,重建也只需一次整盘复制,是所有级别中重建压力最小、处置最直观的一种,常被用在系统盘与小型数据库上。

基本信息

最少盘数2 块(双盘镜像),也可做 3 块的多路镜像
容量公式两块盘时为 1 × 单盘容量;多盘镜像组为 floor(N/2) × 单盘容量
容错通常 1 块;三路镜像(RAID 1 三副本)可容忍 2 块
写惩罚2(一次写两份)
读特性两盘可并行读,随机读约 2 倍,顺序读提升有限
典型平台mdadm --level=1、硬件卡 RAID 1、Windows Server 存储空间镜像

典型使用场景

  • 系统盘与引导盘:结构简单,换盘、重建、验收都不需要复杂操作
  • 小型数据库或账务系统(单机两盘位机型):容量需求不大但要求至少一块盘容错
  • 日志盘与配置盘:数据量小、写入频率不高,镜像代价可以接受
  • 需要「拔盘即换」的现场:坏盘拔下插上新盘,重建过程基本无感
  • 镜像作为快速回滚手段:升级前拆掉镜像中的一块盘作为物理回退点

mdadm 创建与验证

mdadm 创建与验证
mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
cat /proc/mdstat                 # 确认 [2/2] [UU]
mdadm --detail /dev/md1          # 查看成员盘、状态与 UUID
mdadm --manage /dev/md1 --fail /dev/sdb1 --remove /dev/sdb1  # 模拟换盘
mdadm --manage /dev/md1 --add /dev/sdb1                      # 加回后自动重建

RAID 1 与 RAID 10 对比

维度RAID 1RAID 10
盘数2 块(或多路镜像)4 块起、偶数
读并发2 倍单盘接近盘数
写并发等同单盘(写惩罚 2)随镜像对数量提升
容量利用率50%50%
典型位置系统盘、小数据盘数据库与虚拟化数据盘
RAID 1 重建只需读取镜像另一端的数据并整盘复制,不依赖校验运算,因此重建速度由单盘写带宽决定,是主流级别中重建最快的一种。
三块盘的镜像在不同控制器上有不同处理:有的做成三副本、有的闲置第三块做热备、有的只允许两块成员,建阵列前先看控制器手册,否则可用容量与容错预期都会算错。

易错点

  • 把 RAID 1 当数据备份:镜像会把误删除与加密同步到两块盘,删除与勒索场景下两块盘一起损失
  • 不了解三块盘镜像的布局差异:可用容量与容错盘数在控制器之间不一致,移交运维时容易被误解
  • 以为 RAID 1 能发现数据被写错:镜像不做校验比对,静默损坏会同时存在于两块盘,需要上层文件系统校验兜底
  • 换盘时直接拔掉故障盘后长期不补:双盘镜像只剩一块盘,此后任何一次故障都会导致数据不可用
  • 在需要高写并发的场景用 RAID 1:写性能等同单盘,多业务并发写会成为瓶颈,此时应改用 RAID 10

数据来源与参考

  • man 8 mdadm
  • Broadcom MegaRAID 用户指南(RAID 1)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌