我决定扩大我的 raid6 阵列:
- from: 7x 2TB drives (giving usable space of ~9TB in ext4/raid6)
- to: 7x 4TB drives (giving usable space of ~18TB in ext4/raid6)
我已经更换了所有七个驱动器,它们都包含以下结构并且已干净地添加到阵列中。
sda 3.6T
└─sda1 linux_raid_member 3.6T
└─md0 LVM2_member 18.2T
└─shared-c ext4 9.1T /shared
sdb 3.6T
└─sdb1 linux_raid_member 3.6T
└─md0 LVM2_member 18.2T
└─shared-c ext4 9.1T /shared
sdc 3.6T
└─sdc1 linux_raid_member 3.6T
└─md0 LVM2_member 18.2T
└─shared-c ext4 9.1T /shared
.. continues thru to sdg in same way ...
然后,我在数组上运行了 grow 命令,将其扩展到我期望的大小:
// command I ran:
mdadm --grow /dev/md0 --size=max
// output from mdadm --detail /dev/md0 after grow command
/dev/md0:
Version : 1.2
Creation Time : Sun May 15 08:22:07 2016
Raid Level : raid6
Array Size : 19535080000 (18.19 TiB 20.00 TB)
Used Dev Size : 3907016000 (3.64 TiB 4.00 TB)
Raid Devices : 7
Total Devices : 7
Persistence : Superblock is persistent
Update Time : Tue Jun 11 01:26:08 2024
State : clean
Active Devices : 7
Working Devices : 7
Failed Devices : 0
Spare Devices : 0
接下来我尝试使用 resize2fs 调整文件系统大小,命令如下:
resize2fs /dev/mapper/shared-c
但它说没什么可做的 - 我猜是它没有识别出阵列中的额外空间。此后我做了一些研究,建议我应该对物理卷和逻辑卷做些什么,但那里也没有显示可用空间...
// output of pvdisplay
--- Physical volume ---
PV Name /dev/md0
VG Name shared
PV Size 9.07 TiB / not usable <5.38 MiB
Allocatable yes
PE Size 64.00 MiB
Total PE 148681
Free PE 160
Allocated PE 148521
PV UUID 7wxoRZ-LhVL-3WV5-pRcs-LT9q-r0Em-KHClad
// output of lvdisplay
--- Logical volume ---
LV Path /dev/shared/c
LV Name c
VG Name shared
LV UUID IR9ohg-TWPk-loPX-OcVg-vajS-hSb9-eubJMa
LV Write Access read/write
LV Creation host, time ,
LV Status available
# open 1
LV Size <9.07 TiB
Current LE 148521
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 1280
Block device 253:0
我现在不确定这个过程的下一步是什么 —— 我一方面认为我应该做一个 pvresize,但它的输出只显示 5.38mb 的未使用空间,而我认为这个数字应该在 TB 范围内,这样 pvresize 才能起作用。
该阵列目前正在工作,并且阵列中的所有文件都完好无损 - 理想情况下,我希望保持这种状态。
决定穿上我的大男孩裤子,咬紧牙关,继续前进。
如果您的系统使用 LVM,我建议您阅读 LVM 入门指南,因为它可以让事情变得更清晰:https://www.techtarget.com/searchdatacenter/definition/logical-volume-management-LVM
这个答案也有很大的帮助: https://serverfault.com/questions/695902/extending-lvm-volume-groups-with-physical-extents-pvresize
pvdisplay 正在显示这个……
然而 lvmdiskscan 显示了这个...
这告诉我底层分区正在向 LVM 报告全部容量,但 [LVM] 物理卷(位于 /dev/md0)并未占用可用空间。
因此,接下来的步骤是:
已安装,所有数据均已存在并已成功扩展。过程非常紧张,但学到了很多东西。我希望这对未来的人们有所帮助。