LVM数据盘扩容
一、场景
现有1台Centos7虚拟机包含系统盘(sda)50G、数据盘(sdb)10G,由于业务增长,数据盘10G已用完,需要在不影响业务的情况下对sdb进行在线扩容
二、技术实现
LVM(Logical Volume Manager)逻辑卷管理:可实现零停机前提下,对文件系统的大小进行动态调整
三、实现步骤
1、lsblk查看现有分区情况,确认sdb分区类型为lvm(第9行)
[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda 18:1 0 1G 0 part /boot └─sda 28:2 0 49G 0 part ├─centos-root 253:0 0 44G 0 lvm / └─centos-swap 253:1 0 5G 0 lvm [SWAP] sdb 8:16 0 10G 0 disk └─vgtest-lvtest 253:2 0 10G 0 lvm /lvmtest sr0 11:01 1024M 0 rom
2、通过通过虚拟化平台增加sdb的容量至20G。lsblk再次查看,sdb容量仍为10G(第8行)
[root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda 18:1 0 1G 0 part /boot └─sda 28:2 0 49G 0 part ├─centos-root 253:0 0 44G 0 lvm / └─centos-swap 253:1 0 5G 0 lvm [SWAP] sdb 8:16 0 10G 0 disk └─vgtest-lvtest 253:2 0 10G 0 lvm /lvmtest sr0 11:01 1024M 0 rom
3、partprobe重新读取分区表,lsblk再次查看,sdb容量变为20G(第9行)
[root@localhost ~]# partprobe [root@localhost ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 50G 0 disk ├─sda 18:1 0 1G 0 part /boot └─sda 28:2 0 49G 0 part ├─centos-root 253:0 0 44G 0 lvm / └─centos-swap 253:1 0 5G 0 lvm [SWAP] sdb 8:16 0 20G 0 disk └─vgtest-lvtest 253:2 0 10G 0 lvm /lvmtest sr0 11:01 1024M 0 rom
4、pvresize /dev/sdb 调整物理卷/dev/sdb的大小
[root@localhost ~]# pvresize /dev/sdb Physical volume "/dev/sdb" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized
5、pvs查看到物理卷/dev/sdb的空闲空间有10G(第4行),vgs查看卷组vgtest的空闲空间有10G(第8行),lvs查看逻辑卷未体现出扩容的空间(第13行),即刚刚对数据盘扩充的10G
[root@localhost ~]# pvs PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <49.00g 0 /dev/sdb vgtest lvm2 a-- <20.00g 10.00g [root@localhost ~]# vgs VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <49.00g 0 vgtest 1 1 0 wz--n- <20.00g 10.00g [root@localhost ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <44.00g swap centos -wi-ao---- 5.00g lvtest vgtest -wi-a----- <10.00g
目前,物理卷、卷组空闲容量均已体现。接下来将卷组的空闲空间加入逻辑卷即可让逻辑卷扩大
6、lvextend -l +100%FREE /dev/vgtest/lvtest 将卷组中所有(100%)的空闲空间加入到逻辑卷中
[root@localhost ~]# lvextend -l +100%FREE /dev/vgtest/lvtest Size of logical volume vgtest/lvtest changed from <10.00 GiB (2559 extents) to <20.00 GiB (5119 extents). Logical volume vgtest/lvtest successfully resized.
7、lvs查看逻辑卷大小变为20G(第5行)
[root@localhost ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <44.00g swap centos -wi-ao---- 5.00g lvtest vgtest -wi-a----- <20.00g
8、df -Th查看到文件系统为xfs(第7行),故使用xfs_growfs命令同步文件系统
[root@localhost ~]# df -Th 文件系统 类型 容量 已用 可用 已用% 挂载点 devtmpfs devtmpfs 7.8G 0 7.8G 0% /dev tmpfs tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs tmpfs 7.8G 8.9M 7.8G 1% /run tmpfs tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/mapper/centos-root xfs 44G 1.5G 43G 4% / /dev/sda1 xfs 1014M 150M 865M 15% /boot tmpfs tmpfs 1.6G 0 1.6G 0% /run/user/0 [root@localhost ~]# xfs_growfs /dev/vgtest/lvtest xfs_growfs: /dev/vgtest/lvtest is not a mounted XFS filesystem
9、df -h再次查看,可用变为20G(第10行),扩容完成。
[root@localhost ~]# df -h 文件系统 容量 已用 可用 已用% 挂载点 devtmpfs 7.8G 0 7.8G 0% /dev tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs 7.8G 8.9M 7.8G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/mapper/centos-root 44G 1.5G 43G 4% / /dev/sda1 1014M 150M 865M 15% /boot tmpfs 1.6G 0 1.6G 0% /run/user/0 /dev/mapper/vgtest-lvtest 20G 33M 20G 1% /lvmtest

浙公网安备 33010602011771号