Created
June 7, 2019 07:55
-
-
Save Kiran01bm/ae025bd0040639b7c7c36a29d10c854c to your computer and use it in GitHub Desktop.
EBS expansion of LVM Backed volumes
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Procedure: | |
1. Expand EBS volume | |
2. Grow Partition - growpart | |
3. Physical Volume Resize - pvresize | |
4. Logical Volume Resize - lvresize | |
5. Resize File System - resize2fs | |
In this Example we have - 2 Disks, 1 VG, 2 PVs, 3 LVs and EXT4 Filesystem. For XFS use xfs_growfs instead of resize2fs | |
[root@ip-masked docker-compose-related]# pvs | |
PV VG Fmt Attr PSize PFree | |
/dev/sdb1 vg1 lvm2 a-- <12.00g 0 | |
/dev/sdb2 vg1 lvm2 a-- <13.00g <5.01g | |
[root@ip-masked docker-compose-related]# | |
[root@ip-masked ~]# lsblk -a | |
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | |
nvme1n1 259:0 0 25G 0 disk | |
├─nvme1n1p1 259:1 0 12G 0 part | |
│ ├─vg1-nexuslv 253:0 0 9G 0 lvm /nexus-data | |
│ ├─vg1-jenkinslv 253:1 0 4G 0 lvm /jenkins-data | |
│ └─vg1-redislv 253:2 0 2G 0 lvm /redis-data | |
└─nvme1n1p2 259:2 0 3G 0 part | |
└─vg1-nexuslv 253:0 0 9G 0 lvm /nexus-data | |
nvme0n1 259:3 0 8G 0 disk | |
├─nvme0n1p1 259:4 0 8G 0 part / | |
└─nvme0n1p128 259:5 0 1M 0 part | |
[root@ip-masked ~]# sudo growpart /dev/nvme1n1 2 | |
CHANGED: partition=2 start=25165824 old: size=6291456 end=31457280 new: size=27262943,end=52428767 | |
[root@ip-masked ~]# | |
[root@ip-masked ~]# | |
[root@ip-masked ~]# | |
[root@ip-masked ~]# lsblk -a | |
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT | |
nvme1n1 259:0 0 25G 0 disk | |
├─nvme1n1p1 259:1 0 12G 0 part | |
│ ├─vg1-nexuslv 253:0 0 9G 0 lvm /nexus-data | |
│ ├─vg1-jenkinslv 253:1 0 4G 0 lvm /jenkins-data | |
│ └─vg1-redislv 253:2 0 2G 0 lvm /redis-data | |
└─nvme1n1p2 259:2 0 13G 0 part | |
└─vg1-nexuslv 253:0 0 9G 0 lvm /nexus-data | |
nvme0n1 259:3 0 8G 0 disk | |
├─nvme0n1p1 259:4 0 8G 0 part / | |
└─nvme0n1p128 259:5 0 1M 0 part | |
[root@ip-masked ~]# | |
[root@ip-masked /]# vgs | |
WARNING: Not using lvmetad because duplicate PVs were found. | |
WARNING: Use multipath or vgimportclone to resolve duplicate PVs? | |
WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad. | |
VG #PV #LV #SN Attr VSize VFree | |
vg1 2 3 0 wz--n- 14.99g 8.00m | |
[root@ip-masked /]# lvs | |
WARNING: Not using lvmetad because duplicate PVs were found. | |
WARNING: Use multipath or vgimportclone to resolve duplicate PVs? | |
WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad. | |
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert | |
jenkinslv vg1 -wi-ao---- 4.00g | |
nexuslv vg1 -wi-ao---- 8.98g | |
redislv vg1 -wi-ao---- 2.00g | |
[root@ip-masked /]# | |
[root@ip-masked /]# pvresize -v /dev/sdb1 | |
Wiping internal VG cache | |
Wiping cache of LVM-capable devices | |
Archiving volume group "vg1" metadata (seqno 12). | |
Resizing volume "/dev/sdb1" to 25163776 sectors. | |
No change to size of physical volume /dev/sdb1. | |
Updating physical volume "/dev/sdb1" | |
Creating volume group backup "/etc/lvm/backup/vg1" (seqno 13). | |
Physical volume "/dev/sdb1" changed | |
1 physical volume(s) resized / 0 physical volume(s) not resized | |
[root@ip-masked /]# pvresize -v /dev/sdb2 | |
Wiping internal VG cache | |
Wiping cache of LVM-capable devices | |
Archiving volume group "vg1" metadata (seqno 13). | |
Resizing volume "/dev/sdb2" to 27262943 sectors. | |
Resizing physical volume /dev/sdb2 from 767 to 3327 extents. | |
Updating physical volume "/dev/sdb2" | |
Creating volume group backup "/etc/lvm/backup/vg1" (seqno 14). | |
Physical volume "/dev/sdb2" changed | |
1 physical volume(s) resized / 0 physical volume(s) not resized | |
[root@ip-masked /]# | |
[root@ip-masked /]# vgs | |
WARNING: Not using lvmetad because duplicate PVs were found. | |
WARNING: Use multipath or vgimportclone to resolve duplicate PVs? | |
WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad. | |
VG #PV #LV #SN Attr VSize VFree | |
vg1 2 3 0 wz--n- 24.99g <10.01g | |
[root@ip-masked /]# | |
[root@ip-masked /]# lvresize --size +5G /dev/vg1/nexuslv | |
WARNING: Not using lvmetad because duplicate PVs were found. | |
WARNING: Use multipath or vgimportclone to resolve duplicate PVs? | |
WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad. | |
Size of logical volume vg1/nexuslv changed from 8.98 GiB (2300 extents) to 13.98 GiB (3580 extents). | |
Logical volume vg1/nexuslv successfully resized. | |
[root@ip-masked /]# | |
[root@ip-masked /]# lvs | |
WARNING: Not using lvmetad because duplicate PVs were found. | |
WARNING: Use multipath or vgimportclone to resolve duplicate PVs? | |
WARNING: After duplicates are resolved, run "pvscan --cache" to enable lvmetad. | |
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert | |
jenkinslv vg1 -wi-ao---- 4.00g | |
nexuslv vg1 -wi-ao---- 13.98g | |
redislv vg1 -wi-ao---- 2.00g | |
[root@ip-masked /]# | |
[root@ip-masked docker-compose-related]# df -kh | |
Filesystem Size Used Avail Use% Mounted on | |
devtmpfs 1.9G 0 1.9G 0% /dev | |
tmpfs 1.9G 0 1.9G 0% /dev/shm | |
tmpfs 1.9G 600K 1.9G 1% /run | |
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup | |
/dev/nvme0n1p1 8.0G 4.9G 3.2G 62% / | |
/dev/mapper/vg1-nexuslv 8.8G 4.8G 3.6G 58% /nexus-data | |
/dev/mapper/vg1-jenkinslv 3.9G 16M 3.6G 1% /jenkins-data | |
/dev/mapper/vg1-redislv 2.0G 6.1M 1.8G 1% /redis-data | |
tmpfs 389M 0 389M 0% /run/user/1000 | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/8d287410355fbb98abff379d4812574506b5227986cf3f4ea0fec4d895d420e5/merged | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/a81da302b6b5f1fc0c94f8ce238bd3b1fb27986c6ade633ee0c001c6537c0dfc/merged | |
shm 64M 0 64M 0% /var/lib/docker/containers/c36bf79f21651ae3e75a71dcf17042c5bb9b66feb20526ed3cdff67d3036a460/mounts/shm | |
shm 64M 0 64M 0% /var/lib/docker/containers/07db9882adba3255c83ef2054092c77abe5790f05f60e1bfeafebb97177960c0/mounts/shm | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/bd106117c05184562c61916168e072f2cca5a5e9d3edece368d0786957fad996/merged | |
shm 64M 0 64M 0% /var/lib/docker/containers/80b9d1df39e359905dccc700fac5ce1e42530350dbd6070a9269c16c40631580/mounts/shm | |
[root@ip-masked docker-compose-related]# | |
root@ip-masked docker-compose-related]# resize2fs /dev/vg1/nexuslv | |
resize2fs 1.42.9 (28-Dec-2013) | |
Filesystem at /dev/vg1/nexuslv is mounted on /nexus-data; on-line resizing required | |
old_desc_blocks = 2, new_desc_blocks = 2 | |
The filesystem on /dev/vg1/nexuslv is now 3665920 blocks long. | |
[root@ip-masked docker-compose-related]# | |
[root@ip-masked docker-compose-related]# df -kh | |
Filesystem Size Used Avail Use% Mounted on | |
devtmpfs 1.9G 0 1.9G 0% /dev | |
tmpfs 1.9G 0 1.9G 0% /dev/shm | |
tmpfs 1.9G 600K 1.9G 1% /run | |
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup | |
/dev/nvme0n1p1 8.0G 4.9G 3.2G 62% / | |
/dev/mapper/vg1-nexuslv 14G 4.8G 8.3G 37% /nexus-data | |
/dev/mapper/vg1-jenkinslv 3.9G 16M 3.6G 1% /jenkins-data | |
/dev/mapper/vg1-redislv 2.0G 6.1M 1.8G 1% /redis-data | |
tmpfs 389M 0 389M 0% /run/user/1000 | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/8d287410355fbb98abff379d4812574506b5227986cf3f4ea0fec4d895d420e5/merged | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/a81da302b6b5f1fc0c94f8ce238bd3b1fb27986c6ade633ee0c001c6537c0dfc/merged | |
shm 64M 0 64M 0% /var/lib/docker/containers/c36bf79f21651ae3e75a71dcf17042c5bb9b66feb20526ed3cdff67d3036a460/mounts/shm | |
shm 64M 0 64M 0% /var/lib/docker/containers/07db9882adba3255c83ef2054092c77abe5790f05f60e1bfeafebb97177960c0/mounts/shm | |
overlay 8.0G 4.9G 3.2G 62% /var/lib/docker/overlay2/bd106117c05184562c61916168e072f2cca5a5e9d3edece368d0786957fad996/merged | |
shm 64M 0 64M 0% /var/lib/docker/containers/80b9d1df39e359905dccc700fac5ce1e42530350dbd6070a9269c16c40631580/mounts/shm | |
[root@ip-masked docker-compose-related]# |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment