🔖 Note 2: In the example below I assume that we are using linear volumes.
Extend existing Logical Volume
Each of logical volumes divided on LEs (logical extents), and each volume groups have PEs (physical extents).To extend Logical Volume we have to have enough free PE on the volume group.
1.1 Lets check what disks do we have:
[root@rifle ~]# lvmdiskscan/dev/centos_rifle/root [ <6.20 GiB]
/dev/sda1 [ 1.00 GiB]
/dev/centos_rifle/swap [ 820.00 MiB]
/dev/sda2 [ <7.00 GiB] LVM physical volume
/dev/vg_mydata/lv_mydata [ 1.00 GiB]
/dev/sdb [ <1.04 GiB] LVM physical volume
/dev/sdc [ 519.34 MiB]
3 disks
1 partition
2 LVM physical volume whole disks
1 LVM physical volume
So we have free disk /dev/sdc
1.2 Check how many free PEs are on the /dev/sdc:
[root@rifle ~]# pvdisplay /dev/sdc--- Physical volume ---
PV Name /dev/sdc
VG Name vg_mydata
PV Size 519.34 MiB / not usable 3.34 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 129
Free PE 129
Allocated PE 0
PV UUID SQEy8B-b3df-rIF2-1dgu-67FV-dM3a-UuarFu
There are 129 free PEs.
1.3 Adding disk /dev/sdc to the volume group vg_mydata
Creating Physical Volume from /dev/sdc:
[root@rifle ~]# pvcreate /dev/sdc
Physical volume "/dev/sdc" successfully created.
Adding Physical Volume /dev/sdc to the Volume Group vg_mydata:
[root@rifle ~]# vgextend vg_mydata /dev/sdc
Physical volume "/dev/sdc" successfully created.
Volume group "vg_mydata" successfully extended
Check how many free space do we have on the Volume Group now:
[root@rifle ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg_mydata 2 1 0 wz--n- <1.54g 548.00m
[root@rifle ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos_rifle lvm2 a-- <7.00g 0
/dev/sdb vg_mydata lvm2 a-- 1.03g 32.00m
/dev/sdc vg_mydata lvm2 a-- 516.00m 516.00m
Now we have 2 Physical Volumes and 516Mb (there are two figures: 548M and 516M 516 = 129 PE multiply 4K PE size) free space on our Volume Group vg_mydata.
File system space before expansion:
[root@rifle ~]# df -h /mydata/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_mydata-lv_mydata 976M 2.6M 907M 1% /mydata
1.4 Extend Logical Volume and resize the file system
[root@rifle ~]# lvextend -L +516M -r /dev/vg_mydata/lv_mydata
Size of logical volume vg_mydata/lv_mydata changed from 1.00 GiB (256 extents) to 1.50 GiB (385 extents).
Logical volume vg_mydata/lv_mydata successfully resized.
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/mapper/vg_mydata-lv_mydata is mounted on /mydata; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/mapper/vg_mydata-lv_mydata is now 394240 blocks long.
🔖 Note 3: Parameter -r means also resize file system.
What size do we have now:
[root@rifle ~]# df -h /mydata/
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_mydata-lv_mydata 1.5G 3.0M 1.4G 1% /mydata
Lets check the map of LV:
[root@rifle ~]# lvdisplay /dev/vg_mydata/lv_mydata -m
--- Logical volume ---
LV Path /dev/vg_mydata/lv_mydata
LV Name lv_mydata
VG Name vg_mydata
LV UUID 23DwLN-jLgw-cbbr-vaXw-Pgc2-VGQV-V43H9G
LV Write Access read/write
LV Creation host, time rifle, 2019-10-28 13:01:27 +0300
LV Status available
# open 1
LV Size 1.50 GiB
Current LE 385
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 8192
Block device 253:2
--- Segments ---
Logical extents 0 to 263:
Type linear
Physical volume /dev/sdb
Physical extents 0 to 263
Logical extents 264 to 384:
Type linear
Physical volume /dev/sdc
Physical extents 0 to 120
Logical Extents from 0 to 263 are on disk /dev/sdb and LEs from 264 to 384 are on /dev/sdc
No comments:
Post a comment