I have a LVM partition that uses 3 physical drives. I need to increase size of this LVM partition by adding a new disk.
I have a drive with 452 GB free disk space.
[root@sok ~]# parted /dev/nvme0n1 print Model: NVMe Device (nvme) Disk /dev/nvme0n1: 512GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 4296MB 4295MB primary linux-swap(v1) 2 4296MB 6443MB 2147MB primary ext3 3 6443MB 60.1GB 53.7GB primary ext4 4 60.1GB 512GB 452GB primary [root@sok ~]#
Create Physical volume with pvcreate comand
[root@sok ~]# pvcreate /dev/nvme0n1p4 Physical volume "/dev/nvme0n1p4" successfully created. [root@sok ~]#
Extend Volume Group
Current volume group size is 4.19 TB
[root@sok ~]# vgs VG #PV #LV #SN Attr VSize VFree vg1 3 1 0 wz--n- 4.19t 0 [root@sok ~]#
Lets extend the volume group vg1 by adding the newly created physical volume
[root@sok ~]# vgextend vg1 /dev/nvme0n1p4 Volume group "vg1" successfully extended [root@sok ~]#
Now the volume group size is 4.6 TB
[root@sok ~]# vgs VG #PV #LV #SN Attr VSize VFree vg1 4 1 0 wz--n- 4.60t <420.94g [root@sok ~]#
Increase size of LVM
Lets find details about the current logical volumes
[root@sok ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert data1 vg1 -wi-a----- 4.19t [root@sok ~]#
We have one logical volume with name data1, size is 4.9 TB.
To extend the logical volume, rune the command
[root@sok ~]# lvextend -l +100%FREE /dev/vg1/data1 Size of logical volume vg1/data1 changed from 4.19 TiB (1098852 extents) to 4.60 TiB (1206612 extents). Logical volume vg1/data1 successfully resized. [root@sok ~]#
This will extend logical volume "data1" to use all available free disk space on the volume group vg1.
Lets check the new size of LVM with lvs command
[root@sok ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert data1 vg1 -wi-a----- 4.60t [root@sok ~]#
Now LVM size is increased to 4.6 TB.
Reszie filesystem
Let us find more info on the logical volume using blkid command
[root@sok ~]# blkid | grep data1 /dev/mapper/vg1-data1: UUID="55a38b6b-a0a7-48a2-b314-36b1f0ce2f05" BLOCK_SIZE="512" TYPE="xfs" [root@sok ~]#
The volume is formatted as xfs file system.
Let us find out the mount point.
[root@sok ~]# df -h | grep data1 /dev/mapper/vg1-data1 4.2T 1.1T 3.2T 25% /usr/share/nginx/html [root@sok ~]#
The volume is mounted at /usr/share/nginx/html
To resize the xfs filesystem, run the command
[root@sok ~]# xfs_growfs /usr/share/nginx/html meta-data=/dev/mapper/vg1-data1 isize=512 agcount=5, agsize=268435455 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 bigtime=0 inobtcount=0 data = bsize=4096 blocks=1125224448, imaxpct=5 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=521728, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 1125224448 to 1235570688 [root@sok ~]#
If the file system is not mounted, you need to mount it before resizing.
Let us verify the size
[root@sok ~]# df -h | grep data1 /dev/mapper/vg1-data1 4.7T 1.1T 3.6T 23% /usr/share/nginx/html [root@sok ~]#
Size of the volume now changed from 4.2T to 4.7T.
Back to lvm
Leave a Reply