美文网首页随笔
【计算机基础】Linux 存储 PV、VG 和 LV 及其使用

【计算机基础】Linux 存储 PV、VG 和 LV 及其使用

作者: 熊本极客 | 来源:发表于2022-05-17 22:50 被阅读0次

    1.PV、VG、LV 的概念及其关系

    1.1 了解 LVM

    LVM (Logical Volume Manager) 架构采用分层结构,可以让分区变得弹性,可以随时随地的扩大和缩小分区大小。

    说明:LVM 是将几个实体的磁盘 Disk 通过软件组合成为一块看起来是独立的大磁盘 VG ,然后将这块大磁盘 VG 再经过分区成为可使用分区 LV, 最终利用挂载把。

    image.png

    1.2 PV、VG、LV 的概念

    image.png
    ① 物理卷 PV (Physical Volume)

    磁盘分区后使用 pvcreate 命令可以将分区创建为物理卷 PV。

    # 格式:pvcreate 物理磁盘目录
    $pvcreate /dev/vda
    # 查看已创建的物理卷
    $pvdisplay 
      --- Physical volume ---
      PV Name               /dev/vda                   # 物理卷名
      VG Name               datavg                     # 这个是之后创建的卷组名
      PV Size               500.00 GiB / not usable 4.00 MiB  # 物理卷大小
      Allocatable           yes 
      PE Size               4.00 MiB                   # 单个extend的大小,默认4M
      Total PE              127999
      Free PE               2559
      Allocated PE          125440
      PV UUID               TAFUmM-bn0x-nMmu-WSYc-sRW2-gXFd-AdByK5
    
    ② 卷组 VG (Volume Group)

    将多个 PV 组合起来,使用 vgcreate 命令创建成卷组 VG。

    物理扩展 PE (Physical Extend)
    PE 是 VG 中的存储单元,但实际还是存在了磁盘的 Block 中。

    # 格式:vgcreate 卷组名 物理磁盘目录1 物理磁盘目录2
    $vgcreate datavg /dev/vda
    # 查看已经创建的卷组
    $vgdisplay
      --- Volume group ---
      VG Name               datavg  # 卷组名
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  9
      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               500.00 GiB      # 卷组的总大小
      PE Size               4.00 MiB
      Total PE              127999
      Alloc PE / Size       125440 / 490.00 GiB  # 已分配的大小(已创建有LV)
      Free  PE / Size       2559 / 10.00 GiB     # 未分配的大小
      VG UUID               twmovy-yiJ3-F6vq-SxCK-sIg9-oreK-psnpb9
    
    ③ 逻辑卷 LV (Logical Volume)

    VG 相当于整合过的硬盘,LV 则相当于分区,使用 lvcreate 创建 lV。

    逻辑扩展 LE (Logical Extent)
    LE 是逻辑存储单元,即 LV 中的逻辑存储单元。

    # 格式: lvcreate -n 逻辑卷名 -L 逻辑卷大小 卷组名
    $lvcreate -n datalv -L 400G datavg 
    # 查看已经创建的逻辑卷
    $lvdisplay
      --- Logical volume ---
      LV Path                /dev/datavg/datalv
      LV Name                datalv
      VG Name                datavg
      LV UUID                x7xW4c-QahO-Mapv-hu5h-6hXw-c6K9-1zZrWA
      LV Write Access        read/write
      LV Creation host, time sndsdevdb01, 2017-07-14 15:32:14 +0800
      LV Status              available
      # open                 1
      LV Size                450.00 GiB
      Current LE             115200
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     256
      Block device           253:7
    ...
    

    2.PV、VG、LV 的使用

    如何创建 PV、VG、LV 及挂载目录

    # 创建 PV
    $pvcreate /dev/vdb
    # 扩展 VG
    $vgextend VolGroup /dev/vdb
    # 创建 LV
    $lvcreate -n lv_log -l 70G VolGroup
    $mkfs.ext4 /dev/VolGroup/lv_log
    # LV 挂载目录
    $mount /dev/VolGroup/lv_log /opt/container
    # 查看挂载详情
    $lsblk -f
    NAME                               FSTYPE      FSVER    LABEL UUID                                   FSAVAIL FSUSE% MOUNTPOINT
    vda
    ├─vda1                             ext4        1.0            8ca69e31-86f2-486b-8e51-3b2e22bec14f    795.4M    12% /boot
    └─vda2                             LVM2_member LVM2 001       ZLwUwI-VOTb-uLbA-4094-BUu4-CxM9-0xKxFM
      ├─VolGroup-lv_root               ext4        1.0            fa4098b4-5435-4a3d-9cf3-7ea9fa5085d0     15.2G    75% /
      ├─VolGroup-lv_tmp                ext4        1.0            ee727c4e-57e1-4525-bece-1dcdb62736be      1.8G     0% /tmp
      └─VolGroup-lv_log                ext4        1.0            8070608f-4e3c-4737-95de-780a66394668      4.4G    39% /var/log
    vdb                                LVM2_member LVM2 001       f1rsn3-6IrC-GLFW-eoVk-vQ39-Lb94-WJavnp
    ├─VolGroup-lv_root                 ext4        1.0            fa4098b4-5435-4a3d-9cf3-7ea9fa5085d0     15.2G    75% /
    ├─VolGroup-lv_log              ext4        1.0            066eb2c4-d82b-41fc-b88f-5460b0d4cf2b     70.1G    22% /opt/container
    # 查看磁盘使用的容量
    $df -Th |grep log
    /dev/mapper/VolGroup-lv_log              ext4       96G  2.0G   89G   3% /opt/container
    

    相关文章

      网友评论

        本文标题:【计算机基础】Linux 存储 PV、VG 和 LV 及其使用

        本文链接:https://www.haomeiwen.com/subject/mlkgurtx.html