我有一台 Ubuntu 服务器,配备 1x2TB HDD 和 1x128GB SSD(未使用)。有 2 个分区:/boot,以及一个用于 LVM 的物理卷,该卷有 1 个组和 5 个逻辑卷:/、/var/log、/home、/srv、/tmp。
最近,第二块 2TB 硬盘到了。我们需要更好的冗余,所以我正在考虑将 2 块硬盘合并到 1 个 RAID1(带有 /boot、/ 和一个带有 /home、/var/log、/srv、/tmp 的 LVM 分区),或者将第二块硬盘添加为 LVM 物理卷,并使用 LVM 镜像进行逻辑分区。
除了冗余之外,我还需要实现另外 2 个目标: - 从 1xHDD 到 2xHDD 的相对安全的改变(我正在远程管理实时系统) - 未来轻松扩展 LVM 分区。
这里,RAID1 是否优于 LVM 镜像?(我相信是的。我在这里谈论的是软件 RAID1。)
如果是 - 如果我只有一个空的 128GB SSD,并且所有 HDD 数据目前都可以轻松放入其中,那么将 1xHDD 实时系统远程转换为 1xRAID1 实时系统的最佳方法是什么?
答案1
假设 sda 是原始磁盘,sdb 是新磁盘:
- 对新驱动器进行分区。如果使用 fdisk,请确保命中
c
以使其对齐,然后将分区类型更改为da
。 sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 missing
从新分区的驱动器创建 raid 设备。sudo mdadm -Es
并将其输出复制到,/etc/mdadm/mdadm.conf
以便服务器重启时 raid 设备自动启动。sudo pvcreate /dev/md0
之后,只需在 /dev/md0 上执行 vgcreate 并像往常一样执行 lvcreate,或者您可以使用 pvmove
将数据从旧驱动器移到新驱动器后,您可以对旧驱动器重新分区,确保分区大小与新 raid 驱动器相同。然后使用以下命令将其添加到 raid 设备:sudo mdadm --manage --add /dev/md0 /dev/sda1
。由于听起来这些是启动驱动器,因此您需要将 grub 安装到两个驱动器上。
由于这是一个远程系统,您可能需要执行sudo dpkg-reconfigure mdadm
(假设这是一个基于 debian 的系统,例如 Ubuntu)并启用降级 raid 启动。
您还需要设置电子邮件,以便 mdadm 可以通知您 Raid 设备的问题(例如驱动器故障)。
sudo aptitude install postfix
- 选择一个卫星系统,我使用 fqdn 服务器名称(或任何您喜欢的名称),如果需要,输入智能主机。
- 编辑
/etc/aliases
并添加root: yourusername
以便 root 的邮件发送给您 - 编辑
~/.forward
以便[email protected]
您的电子邮件转到您的电子邮件帐户