Q:这么多接口和设备该如何管理。A:加一个中间层(中间件)使用协议提供统一接口,掩盖掉下层异构设备的不同。Linux系列虚拟化的方式还有 vfs。

什么是LVM:

在这之前需要引入Linux存储中的基本结构。

基本概念与结构:

  1. Block设备:Linux对 硬盘,U盘光盘等,以“块”为单位存储的设备叫块设备。以硬盘为例子:硬盘的读写以扇区为基本单位,一般的扇区大小为512 B 一般可以使用 fdisk -l 查看具体硬盘的扇区(sector)。扇区是磁盘物理层面的概念,操作系统是不直接与扇区交互的,而是与多个连续扇区组成的磁盘块交互。块有多个相邻的扇区组合在一起,称为块。其是逻辑概念,也是IO Block的基础(就是我们所说的块)。
    1. 由于扇区是物理层面的概念,所以无法在系统中进行大小的更改。
    2. 块是逻辑概念,OS可以随意的按需求进行变更
    3. 块是存储的基本单位,因此一个文件的最小也只能是一个块。一般的操作系统都取4K。
    4. 有人经常听说SSD需要进行4K对齐,其目的就是将FS的4K区域和SSD的4K区域对齐(SSD本身有物理Block的概念在SSD称为Page),如何没有对齐,则一次FS读写可能需要2次 IO。为什么机械硬盘不需要4K对齐。。。因为机械硬盘的扇区本来就是连续的。。。不对其也会连续读到(会有缓存)。
  2. 物理卷:一般指的是RAID中卷。
  3. RAID中的物理卷:PV(Physical Volume)即是RAID提交上来的虚拟磁盘(对于卷管理器而言它是物理磁盘),只是换个名词,提交上来几个虚拟磁盘就有几个PV
  4. 也就是块PE(Physical Extends)将PV进行等大小划分出来的物理区块,每个PE都代表着PV上从几号扇区到几号扇区,PE是分割和合并的最小单位,可以在卷管理中设置(块)
  5. 卷组:VG(Volume Group):卷管理器将PE进行组合,组成逻辑上的大的容器池,称为VG
  6. 逻辑卷:LV(Logical Volume):从VG中将若干数量的PE组合成逻辑卷。在Linux中,一个逻辑卷就可以被挂在到相应的目录。
  7. 卷管理器(Logical Volume),也是在OS和物理卷之间负责管理的程序。使用最多的就是Linux中的Logical Volume Manager。提供了大量动态管理的逻辑卷的功能。

LVM 的优点:

基本结构
image.png

常用操作

  1. 创建逻辑卷组:

    1. vgcreate [vg name] [物理组...]
    2. # example
    3. vgcreate volume-group1 /dev/sdb1 /dev/sdb2
  2. 查看逻辑卷组:

    # 从输出中,我们可以看见卷组的使用量/总量。物理卷给卷组提供空间。只要在这个卷组中还有可用空间,我们就可以随意创建逻辑卷。
    vgdisplay
    
  3. 拓展卷组

    # 扩展物理卷
    pvcreate /dev/xxxx # 创建物理卷
    vgextend vg—name 物理卷
    
  4. 删除逻辑卷组:

    vgremove volume-group1
    
  5. 创建子卷(真正的卷):

    # 在原来的volume上创建逻辑卷
    lvcreate -L [容量] -n xxxx volume-group1
    # 查看
    lvdisplay
    # 格式化
    mkfs.ext4 /dev/volume-group1/xxx  
    # 挂载
    mount /dev/volume-group1/xxx  
    # 删除
    lvremove /dev/volume-group1/xxx
    
  6. 扩展 (动态变更卷):

    # 扩展大小
    umount /xxx
    lvresize -L xxx /dev/volume-group1/xxx
    # lvextend -L +xxx /dev/volume-group1/xxx
    # lvreduce -L -xxx /dev/volume-group1/xxx
    # 检测磁盘错误
    e2fsck -f /dev/volume-group1/xxxx
    # 更新文件系统
    resize2fs /dev/volume-group1/lv1
    
  7. 额外操作

    • 改名
      #lvrename source target
      lvrename /dev/hd-vg/ly-store hd-vg/zjy-storage
      

参考: