我在 RAID1 设置中拥有 2 个 500gb 驱动器,我需要升级它们以获得更多空间。我依次对每个驱动器执行了 mdadm --fail 命令,并使用 dd 将每个驱动器复制到其各自的较大驱动器(每个 2tb),移除较小的驱动器并用较大的驱动器替换它们,然后重新组装阵列并强制重新同步。所以现在我在 2TB 驱动器上拥有一个 500gb 的 RAID1,并希望扩大它们。
计划是使用 mdadm --manage /dev/md0 --grow 来增加它们,然后启动救援 CD,在该环境下组装阵列,然后对它们执行 resize2fs。我可以在已安装且活动的文件系统上使用 mdadm --grow 吗?此外,我是否需要更多选项来确保增加操作保持 raid1?
答案1
抱歉,我知道我没有以正确的方式回复,但我不知道如何让我的未注册用户注册。
我不能直接复制数据,因为我不能冒着丢失复制过程中旧驱动器上出现的新数据的风险。我必须让服务器尽可能少地失去正常运行时间,所以我不能在复制过程中关闭它。我实际上只能腾出足够的停机时间来交换驱动器。
设法让它工作:
移除一个旧驱动器,插入一个新驱动器,将 raid 分区同步到新驱动器,拔下剩余的旧驱动器,用剩余的新驱动器替换它,再次同步 mdadm --grow 对其进行 resize2fs 处理
增长和 resize2fs 实时发生。相当平淡无奇。
答案2
是的,你可以在线发展团队,但我不确定你是否可以在线发展 FS。你不需要更多具体选项。
标准重建速度是有限的,您可以通过将值回显到 /proc/sys/dev/raid/speed_limit_max 和 /proc/sys/dev/raid/speed_limit_min 来加快重建速度(使其使用更多资源)
答案3
错误的方法。
只需插入两个新驱动器,创建一个阵列并复制数据。
答案4
看着https://raid.wiki.kernel.org/index.php/Growing
添加新磁盘后,可以扩展现有 RAID 分区以使用新磁盘。对新磁盘进行分区后,可以使用以下命令扩展 RAID 级别 1/4/5/6 阵列(假设在扩展之前它包含三个驱动器):
mdadm --add /dev/md1 /dev/sdb3 mdadm --grow --raid-devices=4 /dev/md1
该过程可能需要数小时甚至数天。启动时有一个关键部分,无法备份。为了允许在意外断电后恢复,
--backup-file=
可以指定一个附加选项。确保此文件位于不同的磁盘上,否则会失去目的。