`

什么是LUN

 
阅读更多

a、lun的概念

 

    lun的全称是logical unit number,也就是逻辑单元号。我们知道scsi总线上可挂接的设备数量是有限的,一般为6个或者15个,我们可以用target ID(也有称为scsi id的)来描述这些设备,设备只要一加入系统,就有一个代号,我们在区别设备的时候,只要说几号几号就ok了。
   而实际上我们需要用来描述的对象,是远远超过该数字的,于是我们引进了lun的概念,也就是说lun id的作用就是扩充了target id。每个target下都可以有多个lun device,我们通常简称lun device为lun,这样就可以说每个设备的描述就有原来的target x变成target x lun y了,那么显而易见的,我们描述设备的能力增强了.就好比,以前你给别人邮寄东西,写地址的时候,可以写:
    xx市人民大街54号 xxx(收)
   但是自从高楼大厦越来越多,你不得不这么写:
    xx市人民大街54号xx大厦518室 xxx (收)
   所以我们可以总结一下,lun就是我们为了使用和描述更多设备及对象而引进的一个方法而已,一点也没什么特别的地方.

b、lun是什么东西?
 

    lun id不等于某个设备,只是个号码而已,不代表任何实体属性,在我们的实际环境里,我们碰到的lun可能是磁盘空间,可能是磁带机,或者是media changer等等.
    lun的神秘之处(相对于一些新手来说)在于,它很多时候不是什么可见的实体,而是一些虚拟的对象。比如一个阵列柜,主机那边看作是一个target device,那为了某些特殊需要,我们要将磁盘阵列柜的磁盘空间划分成若干个小的单元给主机来用,于是就产生了一些什么逻辑驱动器的说法,也就是比 target device级别更低的逻辑对象,我们习惯于把这些更小的磁盘资源称之为lun0,lun1,lun2....什么的。而操作系统的机制使然,操作系统识 别的最小存储对象级别就是lun device,这是一个逻辑对象,所以很多时候被称之为logical device。
   有人说,我的windows里,就认到一个磁盘呀,没看到什么lun的说法,是不是lun=physical disk呢?回答是否定的,只要你注意,磁盘的属性里就可以看到有一个lun的值,只是因为你的disk没有被划分为多个存储资源对象,而将整个磁盘当作 一个lun来用,lun id默认为零,如此而已。
   我们曾经碰到过这样的问题,比如有人问,我们有一个磁盘阵列,连到了两个主机上,我们划分了一个lun给两个主机认到,然后我们想,先在操作系统将磁盘 分为两个区,让两个主机分别使用两个分区,然后再出现某一台主机宕机之后,使用集群软件将该分区切换到另外一个主机上去,这样可行吗?答案也是否定的,集 群软件操作的磁盘单元是lun,而不是分区,所以该操作是不可行的。当然,在一些环境,一般也是一些要求比较低的环境,可以在多个主机上挂载不同的磁盘分 区,但是这种情况下,实际上是没有涉及到磁盘的切换的,所以在一些高要求的环境里,这种情况根本就不允许存在。
   还要说明的地方是,在有些厂商和有些产品的概念里,lun id被绑定到了具体的device上,比如ibm的一些带库,整个带库只有一个target id,然后changer,tape drive被分别分配为lun0,lun1,lun2.....,但是我们要注意到,这只是产品做了特别设计,也是少数情况。
 
 
存储术语中的LUN概念

(1)lun的概念
 

    lun的全称是logical unit number,也就是逻辑单元号。我们知道scsi总线上可挂接的设备数量是有限的,一般为6个或者15个,我们可以用target ID(也有称为scsi id的)来描述这些设备,设备只要一加入系统,就有一个代号,我们在区别设备的时候,只要说几号几号就ok了。 
而实际 上我们需要用来描述的对象,是远远超过该数字的,于是我们引进了lun的概念,也就是说lun id的作用就是扩充了target id。每个target下都可以有多个lun device,我们通常简称lun device为lun,这样就可以说每个设备的描述就有原来的target x变成target x lun y了,那么显而易见的,我们描述设备的能力增强了.就好比,以前你给别人邮寄东西,写地址的时候,可以写: 
xx市人民大街54号 xxx(收) 
但是自从高楼大厦越来越多,你不得不这么写: 
xx市人民大街54号xx大厦518室 xxx (收) 
所以我们可以总结一下,lun就是我们为了使用和描述更多设备及对象而引进的一个方法而已,一点也没什么特别的地方. 

(2)lun是什么东西?  

    lun id不等于某个设备,只是个号码而已,不代表任何实体属性,在我们的实际环境里,我们碰到的lun可能是磁盘空间,可能是磁带机,或者是media changer等等. 
lun 的神秘之处(相对于一些新手来说)在于,它很多时候不是什么可见的实体,而是一些虚拟的对象。比如一个阵列柜,主机那边看作是一个target device,那为了某些特殊需要,我们要将磁盘阵列柜的磁盘空间划分成若干个小的单元给主机来用,于是就产生了一些什么逻辑驱动器的说法,也就是比 target device级别更低的逻辑对象,我们习惯于把这些更小的磁盘资源称之为lun0,lun1,lun2....什么的。而操作系统的机制使然,操作系统识 别的最小存储对象级别就是lun device,这是一个逻辑对象,所以很多时候被称之为logical device。 
有人说,我的 windows里,就认到一个磁盘呀,没看到什么lun的说法,是不是lun=physical disk呢?回答是否定的,只要你注意,磁盘的属性里就可以看到有一个lun的值,只是因为你的disk没有被划分为多个存储资源对象,而将整个磁盘当作 一个lun来用,lun id默认为零,如此而已。 
我们曾经碰到过这样的问题,比如有人问,我们有一个磁盘阵列,连到了两个主机上,我们划分了 一个lun给两个主机认到,然后我们想,先在操作系统将磁盘分为两个区,让两个主机分别使用两个分区,然后再出现某一台主机宕机之后,使用集群软件将该分 区切换到另外一个主机上去,这样可行吗?答案也是否定的,集群软件操作的磁盘单元是lun,而不是分区,所以该操作是不可行的。当然,在一些环境,一般也 是一些要求比较低的环境,可以在多个主机上挂载不同的磁盘分区,但是这种情况下,实际上是没有涉及到磁盘的切换的,所以在一些高要求的环境里,这种情况根 本就不允许存在。 
还要说明的地方是,在有些厂商和有些产品的概念里,lun id被绑定到了具体的device上,比如ibm的一些带库,整个带库只有一个target id,然后changer,tape drive被分别分配为lun0,lun1,lun2.....,但是我们要注意到,这只是产品做了特别设计,也是少数情况。

(3)存储和主机的电气独立时代的lun的概念  

还有很多新手总是把阵列里面的磁盘和主机的内部磁盘的一些概念搞混淆了。 
在磁盘阵列和磁带库大行其道的时代,存储越来越智能化,越来越像一个独立的机器,实际上存储和主机的电气独立本来就是一个必然趋势,俗话说得好,儿大要分家嘛。在存储越来越重要的时代,存储要自立门户是必然的事。 
如 果我们把存储当作一个独立的主机来看,理解起来就很简单了。我们说到lun的概念的时候,我们就要将分为两个层面。一个层面就是在阵列这个机器的os识别 到的范围,一个层面就是服务器的os识别到的范围。这两个层面是相对独立的,因为如果我们把存储当作一个主机来看,那么它自然有自己的 device,target,lun之说,而服务器也有自己的device,target,lun之说;另外一方面,这两个层面又是相互关联的,一个阵列 的控制系统,大多都有虚拟化的功能,阵列想让主机看到什么样的东西,主机才能看到相应的东西。当然,服务器识别到的最小的存储资源,就是lun级别的。那 么主机的HBA卡看到的存储上的存储资源就靠主要两个东西来定位,一个就是存储系统的控制器(target),一个就是lun id,这个lun是由存储的控制系统给定的,是存储系统的某部分存储资源。

(4)lun masking,lun mapping 

我 们有了独立的磁盘阵列用了之后,服务器只要看到存储的控制系统,就有可能使用磁盘阵列的磁盘资源,但是磁盘阵列不可能只为某一个服务器来使用,所以他必须 管制主机使用某部分磁盘资源。这个管制分为两个部分:一部分就是lun mapping,类似于绿色通道,就是保证服务器能看到某部分存储资源,一部分就是lun masking,类似于警戒线,就是保证服务器只可访问给它分配的存储资源,而没分配给服务器的资源,就不要染指了。 
实现lun masking和lun mapping有三种方法:一个是基于存储控制系统来设置,一个是基于存储交换系统来设置,一个是基于服务器os来设置。 
基于存储控制系统得设置,是比较常见的设置,比如很多磁盘阵列的控制系统,本身就能设置lun被某服务器看到。比如FastT的partition功能。 
基于存储交换系统的设置,也是一种常用的方法,比如常说的zoning。 
基于服务器os的设置,比较少采用,一般采用安装某些操作系统上安装某些软件来实现,因为这个方法全靠服务器自觉,所以比较少用,呵呵。

(5)lun的multi-path  

现在,存储网络越来越发达了,一个lun有多条通路可以访问也不是新鲜事了。 
服 务器使用多个HBA连接到存储网络,存储网络又可能是由多个交换设备组成,而存储系统又可能有多个控制器和链路,lun到服务器的存储网络链路又可能存在 着多条不同的逻辑链路。那么,必然的,同一个physical lun在服务器上必然被识别为多个设备。因为os区别设备无非用的是总线,target id,lun id来,只要号码不同,就认为是不同的设备。 
由于上面的情况,多路径管理软件应运而生了,比如emc的powerpath,这个 软件的作用就是让操作系统知道那些操作系统识别到lun实际上是一个真正的physical lun,具体的做法,就是生成一个特别的设备文件,操作系统操作这个特殊的设备文件。而我们知道,设备文件+driver+firmware的一个作用, 就是告诉操作系统该怎么使用这个设备。那么就是说,多路径管理软件从driver和设备文件着手,告诉了操作系统怎么来处理这些身份复杂的lun。
分享到:
评论

相关推荐

    Lun和Volume的关系描述

    ### Lun和Volume的关系详解 #### 一、基本概念解析 **LUN(Logical Unit Number)**:逻辑单元号,这是在存储领域中一个重要的概念。它指的是存储设备内部的一个逻辑存储单元,可以简单地理解为一块虚拟化的硬盘。...

    VMware虚拟化架构存储LUN复制以及挂载镜像LUN的步骤.pdf

    在数据保护和灾难恢复领域,VMware虚拟化架构存储LUN复制及挂载镜像LUN的技术是至关重要的。本文将围绕该技术的应用,详细阐述其在实际工作中的步骤与方法,以确保读者能够全面理解并应用此项技术。 首先,要了解...

    同一个LUN被多个主机挂载

    在IT领域,特别是虚拟化技术中,"同一个LUN被多个主机挂载"是一个关键的共享存储概念,尤其在XenServer这样的虚拟化平台上。LUN(Logical Unit Number)是存储区域网络(SAN)中用于识别存储设备的一个逻辑标识符,...

    linux扫描新lun

    在Linux系统中,LUN(Logical Unit Number)指的是逻辑单元号,通常用于标识存储设备,如硬盘、SSD或SAN(Storage Area Network)中的存储分区。当你有新的LUN接入系统时,为了使系统能够识别并使用这个新设备,你...

    利用ISCSI搭建IP存储网络.ppt

    6.什么是LUN? LUN(Logical Unit Number)是指逻辑单元号,是指iSCSI target提供的存储资源的标识符。 7.什么是iqn? iqn(iSCSI Qualified Name)是指iSCSI target的标识符,包括年份、月份、域名和识别代码等...

    HDS VSP mapping LUN操作步骤.pdf

    HDS VSP mapping LUN操作步骤

    存储子系统lun中的缓存管理的实现

    在存储子系统中,LUN(Logical Unit Number,逻辑单元号)是用于识别物理或虚拟存储设备的一个标识,它在操作系统看来就像一个独立的硬盘。为了提高数据存取效率,通常会在LUN层面引入缓存机制。缓存管理是存储系统...

    DS4000 DS5000 Cluster环境下如何映射LUN

    其中,如何在集群环境下正确映射逻辑单元号(LUN)至多个主机,成为了许多IT专业人士必须掌握的核心技能之一。本文将详细解析在DS4000/DS5000集群环境下进行LUN映射的具体步骤及注意事项。 ### 集群环境下的LUN映射...

    linux中不重启识别新的lun方法

    ### Linux中不重启识别新的LUN方法 在Linux系统中,有时我们需要动态地识别新映射过来的逻辑单元号(Logical Unit Number, LUN),而无需重启整个系统或服务。这种需求常见于存储管理和虚拟化环境中,特别是当涉及...

    3parinfo_host_map_lun

    首先,我们需要了解LUN是什么。逻辑单元号是SCSI(小型计算机系统接口)环境中的一个标识符,它允许主机识别并访问存储设备。在3PAR系统中,LUN可以是虚拟化的存储空间,通过LUN映射,这些存储空间被呈现给主机,...

    HP XP 20K lun manager

    ### HP XP 20K LUN Manager 知识点详解 #### 一、HP XP 20K LUN Manager 概述 HP XP 20K LUN Manager 是一款用于管理HP XP 20K存储系统的软件工具。通过该工具,用户能够高效地配置和管理逻辑单元号(LUN),实现...

    解析LUN Mapping和ZONE的存储网络应用.doc

    .storage network application of LUN Mapping and ZONE LUN Mapping 和 ZONE 是两个关键概念在存储网络环境中,它们都是为了管理存储资源和控制访问权限的重要机制。本文将深入剖析 LUN Mapping 和 ZONE 的概念和...

    超级玛丽游戏GUI(源码+lun文+视频齐全).zip

    超级玛丽游戏GUI(源码+lun文+视频齐全)超级玛丽游戏GUI(源码+lun文+视频齐全)超级玛丽游戏GUI(源码+lun文+视频齐全)超级玛丽游戏GUI(源码+lun文+视频齐全)超级玛丽游戏GUI(源码+lun文+视频齐全)超级玛丽游戏GUI(源码...

    QQ屏幕截图工具BS(源码+lun文+视频齐全).zip

    QQ屏幕截图工具BS(源码+lun文+视频齐全)QQ屏幕截图工具BS(源码+lun文+视频齐全)QQ屏幕截图工具BS(源码+lun文+视频齐全)QQ屏幕截图工具BS(源码+lun文+视频齐全)QQ屏幕截图工具BS(源码+lun文+视频齐全)QQ屏幕截图工具...

    俄罗斯方块项目GUI_swing(源码+lun文+视频齐全).zip

    俄罗斯方块项目GUI_swing(源码+lun文+视频齐全)俄罗斯方块项目GUI_swing(源码+lun文+视频齐全)俄罗斯方块项目GUI_swing(源码+lun文+视频齐全)俄罗斯方块项目GUI_swing(源码+lun文+视频齐全)俄罗斯方块项目GUI_swing...

    4.6基于JAVA的推箱子游戏(源码+lun文+视频齐全).zip

    4.6基于JAVA的推箱子游戏(源码+lun文+视频齐全);基于JAVA的推箱子游戏(源码+lun文+视频齐全);基于JAVA的推箱子游戏(源码+lun文+视频齐全);基于JAVA的推箱子游戏(源码+lun文+视频齐全);基于JAVA的推箱子游戏(源码...

    Java的连连看游戏GUI_swing(源码+lun文+视频齐全).zip

    Java的连连看游戏GUI_swing(源码+lun文+视频齐全)Java的连连看游戏GUI_swing(源码+lun文+视频齐全)Java的连连看游戏GUI_swing(源码+lun文+视频齐全)Java的连连看游戏GUI_swing(源码+lun文+视频齐全)Java的连连看游戏...

    4.8搜索引擎的设计与实现(源码+数据库sql+lun文+视频齐全).zip

    搜索引擎的设计与实现(源码+数据库sql+lun文+视频齐全)搜索引擎的设计与实现(源码+数据库sql+lun文+视频齐全)搜索引擎的设计与实现(源码+数据库sql+lun文+视频齐全)搜索引擎的设计与实现(源码+数据库sql+lun文+视频...

    javaEE健康管理系统SSH-oracle(源码+数据库sql+lun文+视频齐全).zip

    javaEE健康管理系统SSH-oracle(源码+数据库sql+lun文+视频齐全)javaEE健康管理系统SSH-oracle(源码+数据库sql+lun文+视频齐全)javaEE健康管理系统SSH-oracle(源码+数据库sql+lun文+视频齐全)javaEE健康管理系统SSH-...

Global site tag (gtag.js) - Google Analytics