Назад | Перейти на главную страницу

как выделить процент от PV на VG в lvm

У меня есть 3 RAID-массива на моем сервере, сопоставленные с 2 PV в моей настройке lvm2.

apollo:~# pvs
  PV         VG      Fmt  Attr PSize PFree
  /dev/sda1  apollo  lvm2 a-   3.64T    0 
  /dev/sda2  apollo  lvm2 a-   1.14T    0 
  /dev/sdb   apollo1 lvm2 a-   2.05T    0 
apollo:~# lvs
  LV        VG      Attr   LSize   Origin Snap%  Move Log Copy% 
  lvol0     apollo  -wi-ao   4.77T                              
  ling-ling apollo1 -wi-ao 895.41G                              
  lvol0     apollo1 -wi-ao   1.17T                              
  lvol1     apollo1 -wi-a-  32.00M                              

Я хочу удалить LV "ling-ling", чтобы освободить место, однако я хочу расширить lvol0 этим свободным пространством, которое находится на другом VG.

Есть ли способ в LVM распределить процент от PV между разными VG без перераспределения? Единственное решение, которое я могу придумать, - это переразбить / dev / sdb, но я бы предпочел не делать этого, поскольку это живой сервер.

Спасибо :)

Нет. VG потребляют PV целиком.

Если вы хотите разделить диск / LUN между VG, вам нужно будет создать два раздела и PV для каждого. У этого есть ряд недостатков, не последним из которых является то, что вам нужно будет уничтожить PV и переразбить, чтобы изменить макет!

Кроме перераспределения диска, нет чистого способа получить именно то, что вы хотели.

Быстрое и грязное решение - создать LV и использовать его как PV. Это не то, что часто используется и поэтому не тестировалось много, поэтому вы можете столкнуться с проблемами, например, с активацией при загрузке. Это может быть так просто:

vgextend apollo /dev/apollo1/ling-ling

Другая альтернатива - использовать vgmerge и сделаем одиночный VG apollo:

vgmerge apollo apollo1

Вам следует обновить все ссылки в fstab (если вы используете имена устройств, а не LABEL / UUID)