У меня есть виртуальная машина, работающая на LVM. Он работает нормально, за исключением того, что теперь я не могу расширять или создавать логические тома. Это дает мне ошибку:
# lvcreate -L10G -n test LocalVG
Insufficient free space: 320 extents needed, but only 0 available
Но группе томов доступно гораздо больше:
# vgdisplay LocalVG
--- Volume group ---
VG Name LocalVG
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 13
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 9
Open LV 9
Max PV 0
Cur PV 1
Act PV 1
VG Size 299.84 GB
PE Size 32.00 MB
Total PE 9595
Alloc PE / Size 6656 / 208.00 GB
Free PE / Size 2939 / 91.84 GB
И образ коровы, на котором находится эта виртуальная машина, имеет размер 300 МБ и находится в файловой системе на хосте, на котором в настоящее время свободно 101 ГБ. Так что не должно быть сбоев. Я заметил, что физический том, который VG использует в виртуальной машине, установлен как нераспределяемый:
# pvdisplay
--- Physical volume ---
PV Name /dev/vda2
VG Name LocalVG
PV Size 299.85 GB / not usable 6.83 MB
Allocatable NO
PE Size (KByte) 32768
Total PE 9595
Free PE 2939
Allocated PE 6656
Возможно, это нормально, но другие мои хосты показывают, что их PV установлен в allocateable = yes. Итак, мои вопросы: следует ли мне запускать "pvchange -x y / dev / vda2" на этом PV или что-то еще не так? Может ли хост быть в сети, когда я это сделаю? Должен ли PV быть доступным для распределения, чтобы LV мог получать экстенты от VG?
Что ж, это было некоторое время назад, но в то время я пытался переключить PV, чтобы он был размещен, как показано выше, и это устранило проблему. С тех пор прошло два года, и у меня больше не было проблем. Должно быть, это была неясная ошибка. Надеюсь, эта информация когда-нибудь поможет кому-нибудь в той же лодке.
Вы можете пометить физический том как доступный для размещения с помощью pvchange
.
# pvchange -x y /dev/volume
Я думаю, он должен быть доступным для размещения, но попробуйте использовать lvresize с параметром -l (маленькая L) и после добавления количества бесплатных PE, которые вы хотите ей передать.
Что-то вроде этого :
# lvcreate -l 2939 -n test LocalVG