RHEL(或CentOS)中关于逻辑卷( Logical Volume Manager,LVM)的一些概念及使用LVM的例子

1.逻辑卷(logical volumes,LV)

  卷管理在物理存储之上的抽象层,它使你能够创建逻辑存储卷。和直接使用物理存储相比,这从很多方面提供了更大的灵活性。比如,使用逻辑卷,你将不再受物理磁盘的大小限制。另外,由于逻辑卷的硬件存储配置隐藏于软件之后,所以它能够重新调整大小和移动,而且不需要停止应用或者卸载(unmount)文件系统。这样可以降低开销。

  使用逻辑卷的好处(VS直接使用物理存储)

  • 弹性容量

   使用逻辑卷时,文件系统可以横跨多个磁盘,因此你可以把多个磁盘或分区聚合到一个逻辑卷里面。

  • 可调整大小的存储池

   你可以使用简单的命令增加或者减少逻辑卷的存储大小,不需要重新格式化底层磁盘设备或者重新分区。

  • 在线的数据再分配

   如果要部署更新更快或者更加弹性的存储子系统时,你可以在保持系统运行的情况下移动数据。数据也可以在磁盘被使用的情况下重新分配。

  • 设备命名方便

   用户可以自定义名称。

  • 卷快照

   可以保存卷快照做备份。

2.物理卷(physical volumes,PV)

  逻辑卷的底层物理存储单元是块设备,比如某个分区或者整块磁盘。为了使用逻辑卷,需要把这些设备初始化成物理卷。

3.卷组(volume groups,VG)

  物理卷结合就组成了卷组。这就形成了一个很大的磁盘空间,可以被用来给逻辑卷分配空间。

  在一个卷组内,可以分配的磁盘空间被划分成许多叫做扩展(extents)的固定大小的单元。一个扩展是可以被分配的最小的空间大小单位。在一个物理卷组内,扩展指物理扩展。

          LVM组件图

小例子练习:

  准备一个大小为40G的未使用空间备用,然后使用fdisk工具分区,得到一个大小为40G的分区/dev/sda3

# 将硬盘分区初始化为物理卷
pvcreate /dev/sda3
# 创建名为docker的逻辑卷组 vgcreate docker
/dev/sda3
# 在docker上分配一个40G的逻辑卷
logical_docker
lvcreate -L40G -n logical_docker docker
# 格式化逻辑卷,这里以ext4文件类型为例
mkfs.ext4 /dev/docker/logical_docker
#
挂载逻辑卷
mount /dev/docker/logical_docker /var/lib/docker/

   完成后使用pvs,vgs,lvs等命令查看信息

另外,如果现在磁盘空间不够用了,还可以通过新增分区来扩展磁盘空间。例如我现在已有的20G磁盘都使用完了,通过以下几步即可完成扩展。

1.使用fdisk /dev/sda新建一个分区/dev/sda3

2.reboot

3.pvcreate /dev/sda3

4.vgextend vg_name /dev/sda3(这里的vg_name和需要扩展的物理卷的vg_name相同)

5.lvextend /dev/vg_name/lv_name pv_path

6.resize2fs /dev/vg_name/lv_name

7.reboot

原文地址https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/pdf/Logical_Volume_Manager_Administration/Red_Hat_Enterprise_Linux-6-Logical_Volume_Manager_Administration-en-US.pdf

原文地址:https://www.cnblogs.com/cqdxwjd/p/9851792.html