LVM: too many metadata areas for pvresize.
Еще один случай из будней администратора. Увеличив размер блочного устройства виртуальной машины обнаружил что при увеличении размера внутри машины, LVM отказывается расширять PV, выбрасывая сообщение "too many metadata areas for pvresize".Это сообщение говорит о том что pvresize не знает что делать с метаданными в конце устройства. Ниже описывается вариант как расширить PV том, однако такой способ предполагает остановку и деактивацию VG. Также предупреждаю что есть риск порчи или потери данных. Действуйте на свой страх и риск.
Собственно само сообщение
# pvresize /dev/vdb
/dev/vdb: too many metadata areas for pvresize
0 physical volume(s) resized / 1 physical volume(s) not resized
Приступаем! Сначала сделаем бэкап кофнигурации группы томов
Приступаем! Сначала сделаем бэкап кофнигурации группы томов
# vgcfgbackup -v -f /etc/lvm/archive/pg-before-pvresize-071720131844 pg
Using volume group(s) on command line
Finding volume group "pg"
Creating volume group backup "/etc/lvm/archive/pg-before-pvresize-071720131844" (seqno 6).
Volume group "pg" successfully backed up.
Останавливаем сервисы которые используют этот том, демонтируем его и отключаем тома в группе которой принадлежит PV том.
Останавливаем сервисы которые используют этот том, демонтируем его и отключаем тома в группе которой принадлежит PV том.
# umount /dev/pg/pgdb
# vgchange -an pg
Теперь нужно создать наш PV с новыми параметрами --metadatacopies 1. Также явно указываем UUID, его можно взять в файле бэкапа /etc/lvm/archive/pg-before-pvresize-071720131844 в секции которая описывает PV том (physical_volumes -> pv0).
Теперь нужно создать наш PV с новыми параметрами --metadatacopies 1. Также явно указываем UUID, его можно взять в файле бэкапа /etc/lvm/archive/pg-before-pvresize-071720131844 в секции которая описывает PV том (physical_volumes -> pv0).
# pvcreate -ff --metadatacopies 1 --restorefile /etc/lvm/archive/pg-before-pvresize-071720131844 --uuid 31H0NS-ecT2-vqVh-9017-XaH3-vqrx-zC97FB /dev/vdb
Really INITIALIZE physical volume "/dev/vdb" of volume group "pg" [y/n]? y
WARNING: Forcing physical volume creation on /dev/vdb of volume group "pg"
Physical volume "/dev/vdb" successfully created
Теперь восстанавливаем нашу конфигурацию группы томов с последуюшим pvresize
Теперь восстанавливаем нашу конфигурацию группы томов с последуюшим pvresize
# vgcfgrestore -vf /etc/lvm/archive/pg-before-pvresize-071720131844 pg
Restored volume group pg
# pvresize /dev/vdb
Physical volume "/dev/vdb" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
Смотрим на результат, размер тома PV должен измениться в большую сторону.
# pvs
PV VG Fmt Attr PSize PFree
/dev/vda storage lvm2 a- 20.00g 14.00g
/dev/vdb pg lvm2 a- 180.00g 70.00g
Теперь можно включить группу томов и смонтировать раздел обратно
# vgchange -ay pg
1 logical volume(s) in volume group "pg" now active
# mount /dev/pg/pgdb
Помню. Было такое.
ОтветитьУдалитьРаньше даже разделы создавали с одной копией --pvmetadatacopies=1
Решение может быть гораздо проще, менее опаснее и без даунтайма.
иногда посматриваю WHATS_NEW при обновлениях.
Когда-то давно заметил там эту радостные строки.
Version 2.02.85 - 29th April 2011
Allow pvresize on a PV with two metadata areas.
Сам LVM работает в userspace (не путать с device-mapper), соответственно, простое обновление пакета до 2.02.85+ решит все проблемы без перезагрузок.
класс
Удалить