Добавление дискового пространства LVM2

Добавление дискового пространства LVM2

В данной статье рассматривается способ добавления дискового пространства для ОС Linux с размещением данных на томах под управлением LVM2. Можно рассмотреть два несколько случаев, когда необходимо выполнить данную процедуру.

Данное руководство предоставляется как есть. Ни автор ни компания NetPoint не несут никакой ответственности за последствия, с которыми столкнулся пользователь, используя данное руководство. Пользователь принимает на себя полную ответственность за все последствия.

  1. добавление нового физического тома;
  2. добавление свободного дискового пространства после блочного переноса на большее устройство;
  3. расширение диска виртуальной машины.

Для дальнейшего изложения определимся с исходными данными. Будем рассматривать две ситуации:

  1. добавился новый диск (/dev/sdb) (I);
  2. изменился размер диска (/dev/sdb) (II) в большую сторону.

В случае виртуальных машин диски могут называться vda, vdb и т.д., а не sda, sdb…

Итак, напомним структуру LVM2:

  1. PV (физические тома — физические устройства /dev/sd{a,b,c,d} или их разделы /dev/sd{a,b,c}{1,2…}
  2. VG — группы томов, на которых будут размещаться логические тома (у нас vg);
  3. LV — логические тома, на которых хранятся данные (у нас sys, swap).

Сначала рассмотрим случай I для уровня PV:

# pvs
root@cloud-controller:~# pvs
  PV                VG              Fmt       Attr PSize     PFree
  /dev/sda               vg               lvm2 a-       136,46g      20,00m

 

Подключим /dev/sdb к физическим томам LVM2:

 

# cfdisk /dev/sdb
# pvcreate /dev/sdb1
# pvs
root@cloud-controller:~# pvs
  PV                VG               Fmt  Attr PSize   PFree
  /dev/sda1         vg               lvm2 a-   136,46g 20,00m
  /dev/sdb1                          lvm2 a-   136,46g 20,00m

Теперь рассмотрим случай II для уровня PV:

# pvs
root@cloud-controller:~# pvs
  PV                VG               Fmt  Attr PSize   PFree
  /dev/sda1         vg               lvm2 a-   136,46g 20,00m
  /dev/sdb1         vg               lvm2 a-   136,46g 20,00m

 

Подключим свободное пространство /dev/sdb к физическим томам LVM2. Для этого с помощью cfdisk необходимо добавить раздел /dev/sdb2 к диску /dev/sdb.

 

# cfdisk /dev/sdb
# pvcreate /dev/sdb2
# pvs
root@cloud-controller:~# pvs
  PV                 VG               Fmt  Attr PSize   PFree
  /dev/sda1          vg               lvm2 a-   136,46g 20,00m
  /dev/sdb1          vg               lvm2 a-   136,46g 20,00m
  /dev/sdb2                           lvm2 a-   200g    0m

Далее необходимо подключить данный физический том к группе томов. В нашем случае к группе vg.

Сначала рассмотрим случай I для уровня VG:

# vgextend vg /dev/sdb1
# vgs

Вы должны увидеть, что размер доступного места в группе увеличился.

Теперь рассмотрим случай II для уровня VG:

# vgextend vg /dev/sdb2
# vgs

 

Вы должны увидеть, что размер доступного места в группе увеличился.На следующем шаге мы добавим все свободное место к тому vg/sys.

 

# lvs
# lvextend -n vg/sys -l+100%FREE
# lvs

 

Теперь осталось выполнить только изменение размера файловой системы:

 

# resize2fs /dev/vg/sys