En una entrada anterior se configuraron tres discos para crear un VG (Volumen Group) y sobre él dos volúmenes con diferentes sistemas de archivos, en esta entrada agregaremos un nuevo disco que permita incrementar el tamaño del VG y a su vez el de los volúmenes.

Hasta el momento esta es la configuración de los discos en donde están montadas las particiones, el volumen lv1 tiene un sistema de archivos ext4 y el volumen lv2 xfs.

[tusysadmin@lvm ~]$ sudo lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0              11:0    1 1024M  0 rom  
vda             252:0    0    7G  0 disk 
├─vda1          252:1    0    1G  0 part /boot
└─vda2          252:2    0    6G  0 part 
  ├─centos-root 253:0    0  5.3G  0 lvm  /
  └─centos-swap 253:1    0  716M  0 lvm  [SWAP]
vdb             252:16   0   10G  0 disk 
└─vdb1          252:17   0   10G  0 part 
  └─vg1-lv1     253:2    0   12G  0 lvm  /lv1
vdc             252:32   0   10G  0 disk 
└─vdc1          252:33   0   10G  0 part 
  ├─vg1-lv1     253:2    0   12G  0 lvm  /lv1
  └─vg1-lv2     253:3    0   12G  0 lvm  /lv2
vdd             252:48   0   10G  0 disk 
└─vdd1          252:49   0   10G  0 part 
  └─vg1-lv2     253:3    0   12G  0 lvm  /lv2

[tusysadmin@lvm ~]$ sudo blkid | grep lv
/dev/mapper/vg1-lv1: UUID="53912dab-4d9d-4449-b366-aee3766c42c6" TYPE="ext4" 
/dev/mapper/vg1-lv2: UUID="14928bc2-7382-43e5-9f55-579e4115eaf1" TYPE="xfs"

El Volumen Group vg1 aun cuenta con espacio suficiente como para extender los volúmenes lógicos pero en esta entrada anexaremos la parte de agregar más discos para crecer el VG.

[tusysadmin@lvm ~]$ sudo vgs vg1
  VG  #PV #LV #SN Attr   VSize   VFree 
  vg1   3   2   0 wz--n- <29.99g <5.99g
[tusysadmin@lvm ~]$ 

Al esquema anterior se le ha agregado un disco de 5GB que está en el dispositivo vde. Como siempre, se crea la tabla de particiones y la etiqueta de lvm.

sudo parted /dev/vdb mklabel msdos
sudo parted /dev/vdb mkpart primary 0% 100%
sudo parted /dev/vdb set 1 lvm on

Para después agregar esta nueva partición al VG.

sudo vgextend vg1 /dev/vde1
[tusysadmin@lvm ~]$ sudo vgs vg1
  VG  #PV #LV #SN Attr   VSize  VFree 
  vg1   4   2   0 wz--n- 34.98g 10.98g

Como puede verse, el tamaño del VG aumentó y ya se cuenta con 10.98G para extender los volúmenes, en este momento son de 12G cada uno.

sudo lvs vg1
  LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv1  vg1 -wi-ao---- 12.00g                                                    
  lv2  vg1 -wi-ao---- 12.00g  

Para conservar equidad, a cada volumen se le asignan 5G.

sudo lvextend -L+5G /dev/vg1/lv1
sudo lvextend -L+5G /dev/vg1/lv2

Finalmente, se incrementan los sistemas de archivos, primero ext4.

sudo resize2fs /dev/vg1/lv1 
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg1/lv1 is mounted on /lv1; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/vg1/lv1 is now 4456448 blocks long.

Después incrementamos xfs.

sudo xfs_growfs /dev/vg1/lv2
meta-data=/dev/mapper/vg1-lv2    isize=512    agcount=4, agsize=786432 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=3145728, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3145728 to 4456448

Al revisar el espacio usado encontramos ambos volúmenes con su respectivo tamaño.

[tusysadmin@lvm ~]$ df -h
S.ficheros              Tamaño Usados  Disp Uso% Montado en
devtmpfs                  485M      0  485M   0% /dev
tmpfs                     496M      0  496M   0% /dev/shm
tmpfs                     496M   6.9M  489M   2% /run
tmpfs                     496M      0  496M   0% /sys/fs/cgroup
/dev/mapper/centos-root   5.1G   1.5G  3.4G  32% /
/dev/vda1                 976M   168M  742M  19% /boot
/dev/mapper/vg1-lv1        17G    44M   16G   1% /lv1
/dev/mapper/vg1-lv2        17G    33M   17G   1% /lv2
tmpfs                     100M      0  100M   0% /run/user/1000