У нас есть большой аппаратный рейд-массив ~ 18 ТБ на Dell R720xd. В настоящее время массив RAID5 состоит из 6x4 ТБ, и мне нужно было его расширить.
Шаг 1: разверните аппаратный рейд-массив.
Достаточно просто, если у вас установлены инструменты администрирования dell.
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
tool) Все прошло нормально, хотя это заняло некоторое время, и я смог подтвердить, что массив был расширен.
% 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
...
Шаг 2 новый раздел
Таким образом, виртуальный диск теперь сообщает об увеличенном (26 ТБ) размере. и 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):
Теперь у меня на диске еще около 16 миллиардов секторов, но я не могу их использовать. Мне предлагаются только Секторы 34-2047. Я не могу выделить 8 ТБ нового пространства, хотя в настоящее время я настроен только с одним разделом.
Еще одна вещь, которая показалась мне странной, это то, что мне предложили номера разделов 2-128, а не просто 2-4. Таблица разделов не показывает никаких расширенных разделов, поэтому я ожидал, что изначально ограничит меня всего 4 разделами.
Что мне не хватает?
cfdisk
вместо этого просто сообщает о 2015 секторах, доступных в диапазоне 39 миллиардов, несмотря на то, что в целом сообщается о 25 ТБ.pvs
и vgs
не сообщают о дополнительном нераспределенном пространстве под LVMОбновление 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.
сообщение об ошибке. Не совсем понятно.
Я перешел с fdisk
к gdisk
и выход был немного другим. В gdisk у вас есть ...
r recovery and transformation options (experts only)
Вступая в это и бегая v
erify дал более полезное сообщение об ошибке ...
Recovery/transformation command (? for help): v
Problem: The secondary header's self-pointer indicates that it doesn't reside
at the end of the disk. If you've added a disk to a RAID array, use the 'e'
option on the experts' menu to adjust the secondary header's and partition
table's locations.
Identified 1 problems!
Под gdisk
в экспертном режиме есть следующий вариант ...
e relocate backup data structures to the end of the disk
... это прошло успешно, и теперь результат проверки был ...
Expert command (? for help): v
No problems found. 15625881566 free sectors (7.3 TiB) available in 2
segments, the largest of which is 15625879552 (7.3 TiB) in size.
Печать таблицы разделов теперь показывала последний используемый сектор как 56 миллиардов, а не 39 миллиардов, и я смог создать новый раздел и добавить его в LVM, который, если кому-то интересно, шаги для этого были ...
partprobe <-- add the /dev/sdb2 device if you don't want to reboot
pvcreate /dev/sdb2
vgextend bak /dev/sdb2
lvextend /dev/mapper/bak-bak -l 100%PVS -r
Ключ к этой путанице в следующем:
Last LBA: 39064698846
Ваш ярлык GPT не соответствует среднему размеру, который изменился. fdisk
выполняет поиск свободного пространства неидеальным, но, по крайней мере, логичным способом - он ищет первый доступный сектор в самом большом свободном пространстве, доступном между Ярлык GPT первый и последний LBA.
Один из способов обойти это может быть использование sfdisk
чтобы сбросить метку, отредактируйте ее до вашего среднего размера и запишите обратно, или лучше используйте parted
это должно решить эту проблему ИМО.