我如何提升我的软件RAID1驱动器集?

在物理Debian服务器上的软件RAID1设置中有两个600GB的驱动器。

我希望能够通过将驱动器克隆到一对匹配的2TB驱动器来升级服务器的容量。 然后,我可以擦拭600GB的驱动器,并使用它们作为存储或其他。

最好的办法是什么呢?

slave:~# mount /dev/md0 on / type ext3 (rw,errors=remount-ro) tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755) proc on /proc type proc (rw,noexec,nosuid,nodev) sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) procbususb on /proc/bus/usb type usbfs (rw) udev on /dev type tmpfs (rw,mode=0755) tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620) 

你应该能够replace第一个驱动器,分区添加到arrays,并让RAID重新同步。 然后更换第二个驱动器,让它重新同步,然后展开raid和文件系统占用整个空间。 当你分区你的新驱动器,使他们占据了新的布局所需的所有空间。

man mdadm , resize2fs

从arrays中删除设备

 mdadm /dev/md0 --remove /dev/olddevice 

添加一个设备到arrays

 mdadm /dev/md0 --add /dev/newdevice 

增长arrays占据分区允许的整个空间

 mdadm /dev/md0 --grow --size=max 

增大文件系统占用arrays的空间

 resize2fs /dev/md0 

你还应该做一个备份。 只是要确定。 如果你想练习和testing,你可能想先在虚拟机上试试这个,这样你就可以放心。

为了防止有人使用这个function,我的经验是从mdadm RAID1 + LVM上的2x150Gb到2x1Tb的驱动器。

假设,我们有2个驱动器 – small1,small2在mdadm镜像(md0),新的是big1和big2。 在它们之上是具有卷组VG1和逻辑卷LV1的LVM

确保一切OK与当前md:

 cat /proc/mdadm 

告诉mdadm失败一个驱动器,并将其从md数组中删除:

 mdadm /dev/md0 --set-faulty /dev/small1 && mdadm /dev/md0 --remove /dev/small1 

用大的replacesmall1驱动器(无论是热插拔,或系统下电)。

在FD型(Linux RAID autodetect)的大硬盘上做新的分区。 使它成为你想要的新RAID的大小。 我更喜欢cfdisk,但这可能会有所不同:

 cfdisk /dev/big1 

添加新磁盘(或者,正确的话,你新创build的分区,例如/ dev / sda1):

 mdadm /dev/md0 --add /dev/big1 

等待数组同步:

 watch cat /proc/mdstat 

对另一对驱动器重复此操作。 最后你会得到两个大的磁盘arrays。

将arrays扩展到组件设备允许的最大大小,等待同步:

 mdadm /dev/md0 --grow --size=max watch cat /proc/mdstat 

现在是时候调整LVM的大小了。 注意–test选项,它将模拟操作,但不会更改元数据(在实际resize之前查看是否有任何错误configuration很有用)。

调整物理卷的大小:

 pvresize --verbose --test /dev/md0 

调整逻辑卷大小:

 lvresize --verbose -L <SIZE> --test /dev/VG1/LV1 

最后,调整ext3 FS的大小:

 resize2fs /dev/VG1/LV1 

有了两个1TB硬盘,我花了大约20个小时(我已经从LVM和FS中删除了一个磁盘,所以它是3个同步+arrays的增长)。

所有这些都是在生产服务器上完成的,不会中断正在运行的服务。

但是在做任何改变之前不要忘记备份你的数据

假设其中一个被replace的磁盘是一个引导磁盘,在开始取出磁盘之前,您不需要担心在两个磁盘上都有 GRUB吗? (我假设GRUB寻找的东西,在/ boot中,镜像到两个磁盘上。)

我很确定,当我没有得到这个权利时,我已经注意到一个不太GRUB的提示。