linux LVM的创建和管理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux LVM的创建和管理

概述:

LVM是Logical Volume Manager(逻辑卷管理器)的简写,它为主机提供了更高层次的磁盘存储管理能力。LVM可以帮助系统管理员为应用与用户方便地分配存储空间。在LVM管理下的逻辑卷可以按需改变大小或添加移除。另外,LVM可以为所管理的逻辑卷提供定制的命名标识。因此,使用LVM主要是方便了对存储系统的管理,增加了系统的扩展性。

目前LVM在Linux下有两个版本,分别是LVM1和LVM2,LVM2不仅仅是Linux逻辑卷管理在版本与功能上的升级,而且是架构在一个新的内核存储子系统(DM,device-mapper)之上的。这个存储子系统提供了一个轻量级的、可扩展的卷管理设施。除了在原有LVM卷管理功能的基础上,Linux的逻辑卷管理将会为用户提供更多的存储管理方案,如镜像、加密卷、多路径技术。所以在本节将以LVM2为例来详细介绍LVM的创建与管理。

LVM相关概念和术语

LVM是建立在磁盘分区和文件系统之间的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个逻辑的盘卷,再在盘卷上来建立文件系统。LVM的结构如图1如示:

图1

LVM结构图

在上面的LVM结构图中,涉及到了很多LVM的相关术语,那么关于这些术语的详细说明如下:

物理卷(physical volume,PV)

物理卷就是指硬盘分区,也可以是整个硬盘或已创建的软RAID,是LVM的基本存储设备,与普通物理存储介质的区别是该设备包含有LVM相关的管理参数。

卷组(volume group,VG)

卷组是由一个或多个物理卷所组成的存储池,在卷组上能创建一个或多个“LVM分区”(逻辑卷)。

逻辑卷(logical volume,LV)

LVM的逻辑卷类似于非LVM系统中的硬盘分区,它建立在卷组之上,是一个标准的块设备,在逻辑卷之上可以建立文件系统。可以做这样一个设想来理解以上三者的关系:如果把PV 比做地球的一个板块,VG则是一个地球,因为地球是由多个板块组成的,那么在地球上划分一个区域并标记为亚洲,则亚洲就相当于一个LV。

物理块(physical extent,PE)

物理卷以大小相等的物理块为存储的基本单位,同时也是LVM寻址的最小单元。

逻辑块(logical extent,LE)

逻辑卷以大小相等的逻辑块为存储的基本单位,在同一个卷组中,LE的大小和PE是相等的,并且一一对应。

卷组描述区域(VolumeGroup Descriptor Area,VGDA)

和磁盘将包含分区信息的元数据保存在位于分区的起始位置的分区表中一样,逻辑卷以及卷组相关的元数据也是保存在位于物理卷的VGDA中。VGDA包括以下内容:

PV描述符、VG描述符、LV描述符、和一些PE描述符。系统启动LVM时激活VG,并将VGDA 加载至内存,来识别LV的实际物理存储位置。当系统进行I/O操作时,就会根据VGDA建立的映射机制来访问实际的物理位置。

创建逻辑卷

创建逻辑卷通常包括如下步骤:

∙创建分区

∙创建物理卷

∙创建卷组

∙激活卷组

∙创建逻辑卷

∙创建文件系统

下面将通过一个具体的实例来详细介绍创建逻辑卷的整个过程。

【实例1】

利用/dev/sdb、/dev/sdc、/dev/sdd这三块磁盘创建一个卷组,再在卷组上创建两个逻辑卷,并指定将其中一个逻辑卷的映射模式为条带映射,实现的步骤如下:

1、创建物理卷

创建物理卷的命令是“pvcreate”,该命令可以将需要添加到卷组的分区或磁盘创建为物理卷。操作如下:

#pvcreate /dev/sdb /dev/sdc /dev/sdd

Physical volume "/dev/sdb" successfully created

Physical volume "/dev/sdc" successfully created

Physical volume "/dev/sdd" successfully created

2、创建卷组

创建卷组的命令为“vgcreate”,将使用“pvcreate”建立的物理卷创建为一个完整的卷组,如下:

#vgcreate vgtest /dev/sdb /dev/sdc /dev/sdd

Volume group "vgtest" successfully created

其中vgcreate命令第一个参数是指定该卷组的名为“vgtest”,该名称可以根据需要随便定义,后面接添加到该卷组的物理卷。同时在使用vgcreate在创建卷组时,还可以指定PE的大小,需要加上-s参数来实现,PE大小范围为8KB 到16GB,并且必须总是2的倍数。一个卷组里面最多允许65534个PE存在。默认设置的PE大小为4MB,这表示卷组上创建的所有逻辑卷都以4MB 为增量单位来进行扩充或缩减,所以4MB 的PE决定了单个逻辑卷最大容量为256GB,若要创建更大的逻辑卷则创建卷组时需要指定更大的PE。

3、创建逻辑卷

创建完卷组后,现在就可通过“lvcreate”命令来创建逻辑卷了,同时在创建逻辑卷的时候,还可以指定逻辑块与物理块映射的模式,逻辑卷的映射模式共有如下两种:

(1)线性模式――按照顺序把一定范围内的物理块与逻辑块映射,这也是默认的映射方式。例如,把逻辑卷中1-25的LE映射到PV1,把26-50的LE映射到PV2上。

(2)条带模式――将把逻辑块以条带的形式映射到不同的物理卷中,这种方式与前面讲到的RAID 0有些类似,这种方式可以提高逻辑卷读写的性能。例如,将逻辑卷的LE1映射为PV1的PE1,LE2映射为PV2的PE1,LE3映射为PV3的PE1。

那么创建逻辑卷的操作如下:

# lvcreate -i 3 -I 4 -L 180M -n lvtest1 vgtest

Logical volume "lvtest1" created

相关文档
最新文档