当 RAID 已加密(LUKS)并组成卷组(LVM)中的物理卷时,如何向 RAID(mdadm)添加新驱动器?

当 RAID 已加密(LUKS)并组成卷组(LVM)中的物理卷时,如何向 RAID(mdadm)添加新驱动器?

我想在现有的 NAS 服务器中添加一个新驱动器,希望在下定决心之前能再看看我的计划。挑战的一部分是新磁盘将添加到现有的 RAID,而 RAID 本身是加密的,并且还构成现有卷组中的物理卷。

当前设置:

有一个由两个物理卷('/dev/mapper/crypt1' 和 '/dev/mapper/crypt2')组成的逻辑卷('media')和卷组('raid')。每个物理卷都是一个 LUKS 加密的 RAID:由 4x4TB 驱动器('md0')组成的 (1) RAID-5,以及由 2x8TB 驱动器('md127')组成的 (2) RAID-1。

user@server:~$ lsblk

sdb                8:16   0   3.7T  0 disk  
└─md0              9:0    0  10.9T  0 raid5 
 └─crypt1        253:0    0  10.9T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media
sdc                8:32   0   3.7T  0 disk  
└─md0              9:0    0  10.9T  0 raid5 
 └─crypt1        253:0    0  10.9T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media
sdd                8:48   0   3.7T  0 disk  
└─md0              9:0    0  10.9T  0 raid5 
 └─crypt1        253:0    0  10.9T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media
sdf                8:80   0   3.7T  0 disk  
└─md0              9:0    0  10.9T  0 raid5 
 └─crypt1        253:0    0  10.9T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media
sdg                8:96   0   7.3T  0 disk  
└─md127            9:127  0   7.3T  0 raid1 
 └─crypt2        253:1    0   7.3T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media
sdh                8:112  0   7.3T  0 disk  
└─md127            9:127  0   7.3T  0 raid1 
 └─crypt2        253:1    0   7.3T  0 crypt 
   └─raid-media  253:2    0  18.1T  0 lvm   /media

客观的:

我想在不丢失现有数据的情况下向“md127”阵列添加第三个 8TB 磁盘。由于这会将阵列从两个驱动器扩展到三个,因此我想将阵列从 RAID-1 重塑为 RAID-5,以获得大约 8TB 的净可用存储空间。

步骤 0:卸载逻辑卷,并将 RAID-1 转换为 RAID-5

unmount /dev/raid/media
mdadm --grow /dev/md127 --level=5

步骤 1:将 HDD 添加到 RAID-5

假设新驱动器添加为“/dev/sda”:

$ mdadm --add /dev/md127 /dev/sda
$ mdadm --grow --raid-devices=3 --backup-file=~/md127_grow.bak /dev/md127

我知道这可能需要长的时间。可以使用 检查进度mdadm --detail /dev/md0

第 2 步:扩大物理驱动器、卷组和文件系统

pvresize /dev/mapper/crypt2 
lvextend -l +100%FREE /dev/raid/media
resize2fs /dev/raid/media

我从这一页这一页,两者都不考虑任何加密。我上面的计划不考虑加密,除非识别物理卷(例如“/dev/mapper/crypt2”)。我猜这是我唯一做不同的事情。

我会非常感激您提出的所有想法或评论。非常感谢您的帮助。

相关内容