一、概念

LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。#使用LVM主要是方便管理、增加了系统的扩展性。可以跨分区,多个硬盘组合

1.1、特点

传统分区的缺点:
传统的文件系统是基于分区的,一个文件系统对应一个分区。这种方式比较直观,但不易改变:
1.不同的分区相对独立,无相互联系,空间不能充分利用;
2.当一个分区空间已满时,无法对其扩充,只能采用重新分区/建立文件系统,非常麻烦;或把分区中的数据移到另一个更大的分区中。

当采用LVM时:
1.硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;
2.文件系统建立在LVM上,可以跨分区,方便使用;
3.当系统空间不足而加入新的硬盘时,不必把用户的数据从原硬盘迁移到新硬盘,而只须把新的分区加入卷组并扩充逻辑卷即可。

lvm的制作
lvm的使用
lvm扩容-------在线扩容。可以在有数据的情况下去扩容。

基本分区(MBR|GPT) ----> Filesystem(制作文件系统类型) ----> mount(挂载)
逻辑卷LVM ----> Filesystem(制作文件系统类型) ----> mount(挂载)

LVM扩容方法,是通过添加新的磁盘或者磁盘分区来建立新的PV,再将PV加入到VG中,从而扩大VG空间,再对相关的LV进行扩容,最后增加文件系统空间完成整个扩容工作。这种方法比较适合使用本地存储的物理机,因为磁盘空间都是固定的,只能通过增加硬盘来增加磁盘空间,这种方法可以在线完成,无需停机重启。

二、扩容

2.1、新增磁盘

新增一块5G的硬盘

点击添加:

image-20231020122756709

默认下一步即可:

image-20231020122833058

image-20231020122845978

添加磁盘大小:

image-20231020122931172

image-20231020123005190

image-20231020123018993

image-20231020124736729

2.2、磁盘查看

image-20231020124918423

添加完新硬盘之后,通过fdisk -l查看不到,需要执行如下指令,然后发现新硬盘设备名称为:/dev/sdb(重启即可查看到新增磁盘,但是实际生产中不会重启服务器使其生效)

[root@web02 ~]# grep mpt /sys/class/scsi_host/host?/proc_name
/sys/class/scsi_host/host2/proc_name:mptspi
[root@web02 ~]# echo "- - -" > /sys/class/scsi_host/host2/scan

image-20231020125050508

2.3、创建PV卷

[root@web02 ~]# pvcreate /dev/sdb
  Physical volume "/dev/sdb" successfully created.

查看PV

[root@web02 ~]# pvs
  PV         VG     Fmt  Attr PSize   PFree
  /dev/sda2  centos lvm2 a--  <19.00g    0 
  /dev/sdb          lvm2 ---    5.00g 5.00g
[root@web02 ~]# pvscan
PV /dev/sda2   VG centos          lvm2 [<19.00 GiB / 0    free]
PV /dev/sdb                       lvm2 [5.00 GiB]
Total: 2 [<24.00 GiB] / in use: 1 [<19.00 GiB] / in no VG: 1 [5.00 GiB]

pvs:用于显示物理卷(PV)的摘要信息,包括它们所属的卷组、格式、属性和使用情况。
pvscan: 用于主动扫描系统上的物理卷,列出所有被发现的物理卷,包括已被使用和未被使用的物理卷。

2.4、创建vg

查看原Linux系统磁盘VG卷组

[root@web02 ~]# vgdisplay

image-20231020125901017

将新的PV扩展进VG centos

[root@web02 ~]# vgextend centos /dev/sdb
  Volume group "centos" successfully extended

将centos卷组上的root逻辑卷增加容量

[root@web02 ~]# lvextend -l +100%free /dev/mapper/centos-root
  New size (5119 extents) matches existing size (5119 extents).

格式化扩展后的卷组

[root@web02 ~]#  xfs_growfs /dev/mapper/centos-root
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=983040 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=3932160, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3932160 to 5241856

扩容前:

image-20231020125649129

扩容后:

image-20231020132046451

三、LVM工作原理总结

将分区按照LVM的格式首先创建成PV(物理卷),把物理卷加到卷组(VG)里,再通过逻辑卷分出LV(逻辑卷),实现分区的扩容,所以使用LVM进行扩容实际上是将分出的逻辑卷扩容给根分区。

如何使用LVM扩容步骤总结

准备一个分好区的新磁盘修改磁盘类型为8e→创建逻辑卷(PV)(将新添加的磁盘分区作为物理卷)→创建卷组(VG)→创建逻辑卷(LV)→格式化和挂载逻辑卷→实现扩容

LVM逻辑卷
许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评
估不准确,一旦系统分区不够用时可能不得不备份、删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足
应用系统的需要。
LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,
可提高磁盘分区管理的灵活性。RHEL 5默认安装的分区格式就是LVM逻辑卷的格式,需要注意的是/boot分区不能基
于LVM创建,必须独立出来。
要想理解好LVM的原理,我们必须首先要掌握4个基本的LVM术语。

  • ①PE
    (Physical Extend)
    每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一-编号的
    PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。
  • ②PV (Physical Volume)物理卷就是指硬盘分区或从逻辑 上与磁盘分区具有同样功能的设备(如RAID),
    是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。
  • ③VG
    (Volume Group)
    LVM卷组类似于非LVM系统中的物理硬盘,其由物理卷组成。可以在卷组上创建
    -个或多个"LVM分区" (逻辑卷),LVM卷组由- -个或多个物理卷组成。
  • ④LV
    (Logical Volume) LVM的逻辑卷类似于非LVM系统中的硬盘分区, 在逻辑卷之上可以建立文件系统
    (此如/home或者/usr等)。
  • ⑤LE (Logical Extent)逻辑卷也被划分为被称为LE(Logical Extents)的可被寻址的基本单位。在同一个卷组
    中,LE的大小和PE是相同的,并且一- -对应。
    我们知道在使用LVM对磁盘进行动态管理以后,我们是以逻辑卷的方式呈现给上层的服务的。所以我们所有的操
    作目的,其实就是去创建一个LV(Logical Volume),逻辑卷就是用来取代我们之前的分区,我们通过对逻辑卷进行格式
    化,然后进行挂载操作就可以使用了。那么LVM的工作原理是什么呢?咱们下面通过图来对逻辑卷的原理进行解
    释! !

简单来说就是:

  • PV:是物理的磁盘分区
  • VG:LVM中的物理的磁盘分区,也就是PV,必须加入VG,可以将VG理解为一个仓库或者是几个大的硬盘
  • LV:也就是从VG中划分的逻辑分区