LVM基础概念
逻辑卷管理器(Logical Volume Manager),它允许用户对磁盘分区进行动态调整,LVM是在磁盘分区和文件系统之间添加了一个逻辑层,它提供一个抽象的卷组,可以把多个磁盘进行卷组合并,这样一来,用户不必关心物理硬盘设备的底层架构和布局。
物理卷处于LVM的最底层,可以将其理解为物理磁盘,磁盘分区,或者RAID磁盘阵列,卷组建立在物理卷上,一个卷组可以包含多个物理卷,而且在卷组创建后也可以向其添加新的物理卷,逻辑卷是用卷组中空闲的资源创建的,并且逻辑卷在创建后可以动态地扩大或缩小空间。
PV 物理卷 Physical Volume 处于LVM的最底层,是指一个物理磁盘或分区,将一个物理磁盘创建为PV
VG 卷组 Volume Group 由多个PV组成的逻辑盘,卷组的大小就是所有PV的大小的合。
LV 逻辑卷 Logical Volume 类似VG的一个分区, 它的大小是从VG中分出来一部分空间,文件系统就是在LV中创建的。
PE 物理区域 Physical Extent lvm中最小的存储单位,一个VG是由多个PE组成的,假如VG的大小为1024MB,PE的大小为4MB,那个PE的数量为1024/4=256
动态调整大小:创建LV 即分配多少个PE给LV,LV的大小是PE的数量乘以PE的大小,当LV空间不足,就可以从VG中调取更多的PE分配给LV,然后扩容LV中的文件系统,这就实现了在线调整文件系统的大小。
部署LVM时,需要逐个配置物理卷,卷组,逻辑卷
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvcreate
删除 pvremove vgremove lvremove
扩容 — vgextend lvextend
缩容 — vgreduce lvreduce
实例:
部署逻辑卷
1.使新添加的两个硬盘支持LVM技术:
pvcreate /dev/nvme0n3 /dev/nvme0n4
2.将两个硬盘加入vg1卷组中,然后查看卷组状态
vgcreate vg1 /dev/nvme0n3 /dev/nvme0n4
vgdisplay
3.从vg1卷组中切割出一个约150MB的vg1逻辑卷,
lvcreate -n lv1 -L 150M vg1
4.将切割出来的vg1进行格式化,然后挂载使用
mkfs.ext4 /dev/vg1/lv1
mkdir /mnt/lv1
mount /dev/vg1/lv1 /mnt/lv1
5.查看
df -h
给逻辑卷扩容
1.增加新的物理卷到卷组中
umount /mnt/lv1(先取消挂载)
pvcreate /dev/nvme0n5
vgextend vg1 /dev/nvme0n5
vgdisplay
2.将lv1的大小扩展至7G
lvextend -L 7G /dev/vg1/lv1
3.检查硬盘文件完整性
fsck -t ext4 /dev/vg1/lv1
resize2fs /dev/vg1/lv1 (重置硬盘容量)
4.重新挂载硬盘
mount -a
df -h
给逻辑卷缩容(记得备份数据)
取消挂载,检查硬盘文件完整性,将lv1缩容150M,查看挂载文件系统
umount /mnt/lv1
e2fsck -f /dev/vg1/lv1
resize2fs /dev/vg1lv1 150M
mount -a
df -h
删除逻辑卷
1.取消挂载,删除配置文件中永久生效的设备参数
umount /mnt/lv1
vim /etc/fstab
2.删除逻辑卷
lvremove /dev/vg1/lv1
3.删除卷组
vgremove vg1
4.删除物理卷
pvremove /dev/nvme0n3 /dev/nvme0n4 /dev/nvme0n5