概念澄清与定位
- 在 CentOS 语境中,“分卷”通常指使用 LVM(逻辑卷管理) 对磁盘进行抽象与容量管理,它提供物理卷(PV)/卷组(VG)/逻辑卷(LV)的层级,支持在线扩容、快照等能力,但本身不提供数据冗余或性能增益。与之相对,RAID 是将多块磁盘按不同级别(如 RAID0/1/5/6/10)组合成一个逻辑盘,以在性能、容量利用率与容错之间进行权衡。实际生产中常见做法是:先用硬件或软件 RAID 构建高可靠的“底座”,再在其上部署 LVM 做灵活的容量管理。
关键差异对比
| 维度 |
分卷 LVM |
RAID |
| 目标 |
容量抽象与灵活管理(在线扩容、快照、迁移) |
性能提升、数据冗余与可用性 |
| 冗余能力 |
无(依赖底层设备;RAID0 无冗余,RAID1/5/6/10 才有) |
有(级别决定:RAID1/5/6/10 等) |
| 性能 |
接近底层设备;不直接提升吞吐/时延 |
直接提升(RAID0 吞吐、RAID1/10 读写、RAID5/6 读优写弱) |
| 容量利用率 |
取决于底层设备与布局 |
RAID0:100%;RAID1:≈50%;RAID5:(n−1)/n;RAID6:(n−2)/n;RAID10:≈50% |
| 最少磁盘数 |
1(PV 可为单盘) |
RAID0:≥2;RAID1:≥2;RAID5:≥3;RAID6:≥4;RAID10:≥4 |
| 故障影响 |
不单独提供容错;底层 RAID 决定 |
依级别:RAID0 坏1盘全丢;RAID1/5/6/10 可容忍1/1/2/多盘(不同镜像对) |
| 在线扩容 |
典型支持(VG 加盘→LV 扩容→文件系统在线扩容) |
依级别与实现:硬件 RAID 多需停机或重建;部分软件 RAID/阵列支持在线扩容 |
| 实现方式 |
内核 LVM2(pvcreate/vgcreate/lvcreate/xfs_growfs 等) |
硬件 RAID 卡(HBA/RAID 控制器)或软件 mdadm(/dev/md0 等) |
| 成本与复杂度 |
成本低、运维简单 |
硬件成本高;软 RAID 占用 CPU,调优与维护复杂度更高 |
| 典型场景 |
业务分区、容量平滑扩容、按需分配 |
数据库、虚拟化、日志/大文件高吞吐、关键业务高可用底座 |
说明:容量利用率与最少磁盘数等数值为各 RAID 级别的通行定义;LVM 的在线扩容与 mdadm 的软件 RAID 能力在 CentOS 中均为常见实践。
如何选择与组合
- 仅追求容量灵活性与在线调整:优先用 LVM 管理单盘或已有 RAID 之上的空间;若底层是 RAID0,需知无冗余风险。
- 需要性能与/或冗余:用 RAID 做底座(如数据库选 RAID10;通用存储选 RAID5/6;纯吞吐选 RAID0),再在 RAID 之上用 LVM 做卷划分与扩容。
- 成本与稳定性优先:有 硬件 RAID 控制器 时优先硬件 RAID(性能、稳定性、维护与重建能力更佳);无控制器再考虑 mdadm 软 RAID(占用 CPU,需更谨慎的监控与测试)。
在 CentOS 上的快速实践
- LVM 在线扩容(以 XFS 为例)
- 新盘初始化:pvcreate /dev/sdb
- 加入卷组:vgextend centos /dev/sdb
- 扩展逻辑卷:lvextend -L +100G /dev/centos/root
- 扩展文件系统:xfs_growfs /(或 resize2fs 对应 ext4)
- 软件 RAID 创建与监控(以 RAID5 + 热备为例)
- 创建阵列:mdadm -C /dev/md0 -a yes -l 5 -n 3 -x 1 /dev/sd[bcd] /dev/sde
- 查看状态:cat /proc/mdstat 或 mdadm -D /dev/md0
- 模拟故障与替换:mdadm -f /dev/md0 /dev/sdb;mdadm -r /dev/md0 /dev/sdb;更换磁盘后 mdadm -a /dev/md0 /dev/sdb
提示:在生产变更前务必做好 完整备份,并在测试环境验证步骤与回退方案。