我们在戴尔 R720xd 上有一个约 18TB 的大型硬件 RAID 阵列。目前 RAID5 阵列由 6x4TB 组成,我需要对其进行扩展。
步骤 1 展开硬件 RAID 阵列。
如果您安装了戴尔管理工具,就足够简单了。
omconfig storage vdisk action=reconfigure controller=0 vdisk=1 raid=r5 pdisk=0:1:0,0:1:1,0:1:3,0:1:3,0:1:4,0:1:5,0:1:8,0:1:9
(新磁盘是最后两个,可以使用该omreport
工具确认)虽然需要一段时间,但一切都很好,我能够确认阵列已经扩展..
% omreport storage vdisk controller=0 vdisk=1
Virtual Disk 1 on Controller PERC H710P Mini (Embedded)
Controller PERC H710P Mini (Embedded)
ID : 1
Status : Ok
Name : bak
State : Ready
Hot Spare Policy violated : Not Assigned
Encrypted : No
Layout : RAID-5
Size : 26,078.50 GB (28001576157184 bytes)
...
Device Name : /dev/sdb
...
Step 2 新建分区
因此,虚拟磁盘现在报告增加的 (26TB) 大小。并且fdisk
同意...
Disk /dev/sdb: 25.5 TiB, 28001576157184 bytes, 54690578432 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A2D20632-37D1-4607-9AA0-B0ED6E457F91
Device Start End Sectors Size Type
/dev/sdb1 2048 39064698846 39064696799 18.2T Linux LVM
但是,当我去向磁盘添加一个额外的分区时,会发生以下情况......
Command (m for help): n
Partition number (2-128, default 2): 2
First sector (34-2047):
我现在磁盘上有大约 160 亿个扇区,但我无法使用它们。我只提供扇区 34-2047。即使我目前只设置了一个分区,我也无法分配 8TB 的新空间。
让我感到奇怪的另一件事是,我得到的分区号是 2-128,而不仅仅是 2-4。分区表没有显示任何扩展分区,所以我预计最初会将我限制为 4 个分区。
有什么我想念的吗?
- 扩展驱动器阵列后,机器已重新启动。在此之前 fdisk 只会报告原始的 18TB
- 尝试
cfdisk
仅报告 390 亿范围内的 2015 年可用扇区,尽管总体报告为 25TB。 - 如果可以避免,我们不想删除并重新创建分区,因为我们可能会丢失所有数据。我们更喜欢在完成后使用新分区简单地扩展 LVM 卷组。
- 它与另一个服务器故障问题类似,但我不受分区用完的限制,我不认为我受到扩展分区的限制。
- 它不是由驱动器扩展来扩展扇区大小。如果是 fdisk 就不会报告扇区数的增加,我会想到。另外
pvs
并且vgs
没有在 LVM 下报告任何额外的未分配空间 - 我在虚拟机上将其作为空运行运行,但没有遇到这种情况。但是我正在关闭虚拟机并增加其磁盘设备大小。所以在大小增加期间它不在线。此外,对于 vm,驱动器大小要小许多数量级。
更新 Micheal 请求的 1 'x'pert 模式输出...
Command (m for help): x
Expert command (m for help): p
Disk /dev/sdb: 25.5 TiB, 28001576157184 bytes, 54690578432 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: A2D20632-37D1-4607-9AA0-B0ED6E457F91
First LBA: 34
Last LBA: 39064698846
Alternative LBA: 39064698879
Partitions entries LBA: 2
Allocated partition entries: 128
Device Start End Sectors Type-UUID UUID Name Attrs
/dev/sdb1 2048 39064698846 39064696799 E6D6D379-F507-44C2-A23C-238F2A3DF928 E9CB58BF-F170-4480-A230-6E2A238367D1 Linux LVM
Expert command (m for help): v
MyLBA mismatch with real position at backup header.
1 error detected.
那么可能的 LBA 错误?
问题是备份分区表的位置。通常,您希望主分区表位于开始,备份分区表位于末尾。磁盘大小调整使更多扇区可用,但从未移动备份表。fdisk 不喜欢这样,我相信这是
MyLBA mismatch with real position at backup header.
错误消息。不是很清楚。我从 to 切换
fdisk
到gdisk
,输出有点不同。在 gdisk 你有...进入并运行
v
erify 给出了更有用的错误消息......在
gdisk
专家模式下,有以下选项......成功运行,验证输出现在...
打印分区表现在显示最后一个可用扇区为 560 亿而不是 390 亿,我能够创建新分区并将其添加到 LVM 中,如果有人对此感兴趣,步骤是......
这个混乱的关键是:
Last LBA: 39064698846
您的 GPT 标签未反映中等尺寸,已更改。
fdisk
确实以一种不完美但至少合乎逻辑的方式搜索可用空间 - 它在GPT Label 的第一个和最后一个 LBA 之间可用的最大可用空间中查找第一个可用扇区。解决它的一种方法可能是使用
sfdisk
转储标签,将其适当地编辑为您的中等大小并将其写回,或者更好地使用parted
应该解决该问题的 IMO。