关于LUN和卷的思考
LUN:logical unit number
是指硬件层分出的逻辑盘,OS仍然把这些逻辑盘看成是物理盘。
例如将一个1PB磁盘柜划分为100个相同大小的lun,那么每个lun的大小就是10TB,lun0表示从第一个磁盘块到第10TB的磁盘块,lun1依次往后划分。这是在逻辑上将磁盘进行了分区,对应的lun只能使用本lun的空间。
我们SICS总线可挂接的设备是有限的,一般是6个或15个,每个设备占用一个Target ID,那么这个数量是有限的,而实际需要可能远远超过这个数字。于是LUN Device的概念出现了,LUN ID作为Target ID的扩展,每个Target ID下面可以拥有多个LUN Device,简称为LUN。而设备的标记就又Target ID变为了:Target ID LUN ID。
卷:volume
是软件层分出的逻辑分区,如卷管理器LVM(Logical Volume Manager)的逻辑卷LV对于OS层来说就是一个分区,可以格式化为一种文件系统,挂载到某个目录下。逻辑卷是可以扩展的,而且一个逻辑卷可能是有多个物理盘组成。
思考:
我在刚接触这两个概念时产生了混淆,因为有人说lun和卷在物理上可能是同一个东西,只是从不同角度,不同层次看而已。但我的理解他们不是一个东西,只是在很少的情况下是样。
我将结合lun和卷的使用来举个例子:
还是上面那个1PB的磁盘柜,我将其中LUN0、LUN1、LUN2接入到计算机,这个时候卷管理器LVM发现了这几个LUN,但是仍然把他们当做磁盘处理,存储卷提供注册的虚拟接口,获取存储LUN的基础信息,如空间大小,三元地址,块大小,起止地址,健康情况等,再为其创建一个对应的数据结构的抽象,这样计算机通过卷管理器,就能够动态的扑捉被注册的存储LUN的实时信息,实现动态管理。一个存储LUN被卷管理器进行注册抽象之后,就被卷管理器认为是一个可被鱼肉的直接下属,它可以再次被分割成更小区域,当然也可以不分割,再对分割后或者没分割后的存储空间进行数据抽象,建立相关的数据结构,供文件系统层调用。
引用一张别人的图,我们把下面的硬盘1和2,假设为磁盘柜中的lun即可。
该图引自:https://blog.csdn.net/cymm_liu/article/details/8656154