作者:万群
Intel 存储软件工程师
主要从事SPDK软件测试工作
01
基本概念
逻辑卷介绍
图1 Linux逻辑卷管理器 (LVM, Linux Logical Volume Manager)
大多数卷管理器都有着相同的基本设计。它们由物理卷(PV, Physical Volume)入手,这可以是硬盘,硬盘分区,或者是外部存储设备的逻辑单元号(LUN, Logical Unit Number)。卷管理将每一个PV都视作是由一系列称为物理区段(PE, Physical Extent)的块组成的[1]。
通常, 物理卷只是简单地一对一映射到逻辑区域中(LE, Logical Extent)中。通过镜像,多个PE映射到单个LE。PE从物理卷组(PVG, Physical Volume Group)中抽取,这是一组相同大小的PV,其作用类似于RAID1阵列中的硬盘。
系统将LE集中到一个卷组中(VG, Volume Group)。合并后的LE可以被连接到称为逻辑卷(或者简称为LV)的虚拟磁盘分区中。系统可以使用LV作为原始块设备,就像磁盘分区一样:在其上创建可安装的文件系统,或者使用它们作为交换存储。
密集配置与精简配置
密集配置是一种存储分配方式,在磁盘创建时,磁盘上的存储容量在物理存储上预先分配。
精简配置使用虚拟化技术来使得物理资源比实际可用的看起来更多[2],如果一个系统总是有足够的资源来同时支持所有的虚拟化资源,那么它就不是精简配置。例如,计算机中的实际内存通常使用某种形式的虚拟化地址转换技术对运行任务进行精简配置。每个任务看上去就像被分配了实际内存一样。分配给任务的虚拟内存的总和通常超过实际内存的总和。
精简配置与密集配置的效率并非取决于技术差异,而是取决于不同的用例情况。当所使用的资源数量与所分配的资源数量非常接近时,密集配置通常会效率更高;当使用的资源量远小于所分配的资源量时,精简配置更为高效,所以,只提供所需资源带来的益处超过了使用虚拟化技术增加的成本。
图2展示了传统密集配置与精简配置的区别。
图2 传统分配与精简配置
SPDK实现的逻辑卷概述