随笔

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

2022-05-17  本文已影响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
上一篇下一篇

猜你喜欢

热点阅读