扩容的顺序与前提
扩容通常从最底层开始:加入物理磁盘、扩充存储卷或阵列,然后在操作系统层扩展逻辑卷,最后扩展文件系统并让上层可见。顺序颠倒会导致空间增加了但文件系统仍用不到。此外要确认文件系统是否支持在线扩缩:多数文件系统可以在线扩大,缩小则常常不被支持,规划时必须留出冗余而不是指望事后缩容。
基本信息
| 适用平台 | Windows 与 Linux 文件服务器、RAID 与存储卷 |
|---|---|
| 底层 | 加盘、换盘或扩大阵列与卷 |
| 系统层 | 扩展逻辑卷或分区 |
| 文件系统层 | 在线扩展并确认新容量可见 |
| 上层 | 同步配额、监控阈值与共享可见容量 |
分层扩容与风险
| 层次 | 典型操作 | 主要风险 |
|---|---|---|
| 物理与阵列 | 加盘并重建阵列 | 重建期间再坏一块盘即数据不可用 |
| 存储卷 | 扩大卷或映射 | 映射与主机侧识别不一致 |
| 逻辑卷与分区 | 扩展卷并刷新 | 顺序错误导致文件系统看不到新空间 |
| 文件系统 | 在线扩展 | 部分文件系统不支持缩小,规划需留余量 |
| 共享与配额 | 调整配额与阈值 | 配额未同步导致用户仍被限制 |
Linux 侧扩容顺序
Linux 侧扩容顺序
# 1. 确认底层已识别到新空间
lsblk; vgs; lvs
# 2. 扩展逻辑卷
lvextend -L +500G /dev/vg0/data
# 3. 扩展文件系统(XFS 只能扩大,不能缩小)
xfs_growfs /srv/data
# 4. 核对结果
df -h /srv/data; lvs扩容前检查
扩容前检查
df -h /srv/data # 当前使用率与文件系统类型
vgs && lvs # 是否还有可分配空间
mdadm --detail /dev/md0 2>/dev/null | head -n 20 # 阵列健康与同步状态
dmesg | tail -n 20 # 确认没有磁盘错误阵列重建期间应避免任何其他可能影响数据可用性的操作:重建本身在读取全部成员盘,此时再发生一块盘故障就可能直接丢数据。扩容窗口的选择与备份都必须提前安排。
扩容完成后不要忘记上层:配额、告警阈值与监控中的容量基线都需要同步更新,否则用户仍会因为配额不足而写入失败,看起来像扩容没有生效。客户端侧的可用空间显示也可能因为缓存而滞后一段时间。