我有一批使用软件 raid 1 的 Linux 服务器,需要交换两个磁盘。虽然这可以一次交换一个磁盘,但我想知道是否可以通过以下过程同时执行两个操作,以减少所需的停机时间:
1)通过 USB 连接新驱动器 2)将两个新驱动器添加到阵列,重建数据 3)在新驱动器上安装 grub 4)关闭并交换驱动器
此计划需要能够在 4 个设备上镜像阵列中的信息,快速测试表明 mdadm 使 RAID 1 阵列中前两个设备之后的所有设备都成为备用磁盘。有没有办法覆盖这一点,还是我需要进行两次中断来逐个交换磁盘?
答案1
是的,您可以扩展 RAID-1 组以包含任意数量的驱动器。您需要做的是添加新驱动器作为备用驱动器,然后运行mdadm /dev/mdX --grow -n 4
(或您想要在组中拥有的任意数量的设备)。然后它们将被同步,完成后您就可以随意进行交换了。
答案2
正如已经说过的,你可以——我的回答是对这一事实的延伸。
我通常保留一个写入率较低的低配置根文件系统,然后使用 raid1(通常为 4 个或更多设备)将此文件系统分布在系统中的所有磁盘上。基本上,我在每个磁盘的开头创建一个 512M 分区,作为包含根的 raid1 的一部分。在这种情况下,我可以丢失任何磁盘而不会冒启动系统的风险。
你应该考虑一下这个。