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

 

posted @ 2022-01-24 21:47  zero450815  阅读(264)  评论(0)    收藏  举报