LVM磁盘扩容
大致步骤
1.磁盘扩容,或者新挂载一块盘
2.发现磁盘并分区(创建物理卷pv)
3.物理卷绑定卷组(vg)
4.逻辑卷lv扩容
查看磁盘信息
- fdisk分区
查看磁盘挂载后的信息
使用fdisk -l 或者lsblk查看磁盘是否被识别,及调整后的磁盘大小
磁盘分区
- 利用fdisk进程磁盘分区
fdisk /dev/vdb(磁盘名)
[root@postgres ~]# fdisk /dev/sda
命令(输入 m 获取帮助):m
命令(输入 m 获取帮助):n
Select (default p): p
分区号 (3,4,默认 3):3
起始 扇区 (209715200-268435455,默认为 209715200):
将使用默认值 209715200
Last 扇区, +扇区 or +size{K,M,G} (209715200-268435455,默认为 268435455):+10G
分区 3 已设置为 Linux 类型,大小设为 10 GiB
命令(输入 m 获取帮助):t
分区号 (1-3,默认 3):3
Hex 代码(输入 L 列出所有代码):L
ex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”
命令(输入 m 获取帮助):w
The partition table has been altered!
同步分区并创建物理卷
#同步分区
[root@postgres ~]# partprobe
#创建物理卷
[root@postgres ~]# pvcreate /dev/sdb1
Physical volume "/dev/sda3" successfully created.
#查看物理卷
[root@postgres ~]# pvdisplay
--- Physical volume ---
PV Name /dev/sda1
VG Name centos
PV Size <99.00 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 25343
Free PE 0
Allocated PE 25343
PV UUID rYKqk9-fhz6-DJeG-SGmE-WOA8-wQbJ-fEX1OZ
--- Physical volume ---
PV Name /dev/sdb1
VG Name centos
PV Size 10.00 GiB / not usable 4.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 2559
Free PE 0
Allocated PE 2559
PV UUID RYFcba-7kP7-bNSf-lyMC-nO0N-oUR1-dXYfZi
#输出格式化的物理卷信息报表,它主要显示物理卷的名称、所属卷组、格式、属性、总大小以及可用空间等信息
[root@postgres ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda1 centos lvm2 a-- <99.00g 0
/dev/sdb1 lvm2 --- 10.00g 10.00g
绑定逻辑卷组
- 查看卷组
[root@postgres ~]# vgdisplay
--- Volume group ---
VG Name centos
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 1
Act PV 1
VG Size <99.00 GiB
PE Size 4.00 MiB
Total PE 25343
Alloc PE / Size 25343 / <99.00 GiB
Free PE / Size 0 / 0
VG UUID mZQeMJ-sRF9-bnpv-gl7Y-PubR-krJY-WpOYfm
- 绑定卷组,
[root@postgres ~]# vgextend centos /dev/sdb1
Volume group "centos" successfully extended
[root@postgres ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda1 centos lvm2 a-- <99.00g 0
/dev/sdb1 centos lvm2 a-- <10.00g 0
将加入的卷组容量扩容至文件系统上
- 将加入卷组的容量扩容到文件系统上,首先选择自己要挂载的扩展的文件系统 df-Th
- 逻辑卷扩容命令
按百分比扩容命令lvextend -l +100%FREE /dev/mapper/centos-root
按大小扩容命令 lvextend -L +10G /dev/mapper/centos-root
[root@postgres ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 91G 14G 78G 15% /
devtmpfs devtmpfs 990M 0 990M 0% /dev
tmpfs tmpfs 1001M 608K 1000M 1% /dev/shm
tmpfs tmpfs 1001M 8.6M 992M 1% /run
tmpfs tmpfs 1001M 0 1001M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 125M 890M 13% /boot
tmpfs tmpfs 201M 0 201M 0% /run/user/0
[root@postgres ~]# lvextend -l +100%FREE /dev/mapper/centos-root
Size of logical volume centos/root changed from <91.00 GiB (23295 extents) to 100.99 GiB (25854 extents).
Logical volume centos/root successfully resized.
刷新文件系统的存储容量
-
df -T查看文件类型发现是xfs
刷新文件系统的存储容量
文件类型是ext4的使用:resize2fs /dev/mapper/centos-root
文件类型是xfs的使用:xfs_growfs /dev/mapper/centos-root
命令 xfs_growfs /dev/mapper/centos-root
执行命令后,使用命令”df -TH“可以看到这个盘的容量已经变成101G了。
[root@postgres ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 91G 14G 78G 15% /
devtmpfs devtmpfs 990M 0 990M 0% /dev
tmpfs tmpfs 1001M 608K 1000M 1% /dev/shm
tmpfs tmpfs 1001M 8.6M 992M 1% /run
tmpfs tmpfs 1001M 0 1001M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 125M 890M 13% /boot
tmpfs tmpfs 201M 0 201M 0% /run/user/0
[root@postgres ~]# xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512 agcount=4, agsize=5963520 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=23854080, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=11647, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 23854080 to 26474496
[root@postgres ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 101G 14G 88G 14% /
devtmpfs devtmpfs 990M 0 990M 0% /dev
tmpfs tmpfs 1001M 608K 1000M 1% /dev/shm
tmpfs tmpfs 1001M 8.6M 992M 1% /run
tmpfs tmpfs 1001M 0 1001M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 125M 890M 13% /boot
tmpfs tmpfs 201M 0 201M 0% /run/user/0