专利名称:通过在文件系统上将虚拟盘对象分层进行存储虚拟化的制作方法
技术领域:
本发明涉及存储系统,具体来说,涉及存储系统、如多协议存储设备上的存储虚拟化。
背景技术:
存储系统是提供与在诸如存储器、带或盘的可写持久存储装置上的信息的组织有关的存储服务的计算机。存储系统可设置在存储区域网(SAN)或网络连接存储器(NAS)环境中。当用于NAS环境内时,存储系统可作为包含操作系统的文件服务器来实施,该操作系统实现文件系统以便在例如盘上将信息在逻辑上组织为目录和文件的分级结构。每个“盘上”文件可实现为一组数据结构、例如盘块,配置成存储信息、如文件的实际数据。另一方面,目录可实现为特殊格式的文件,在其中存储有关其它文件和目录的信息。
文件服务器或文件管理器还可配置成根据信息传递的客户机/服务器模型来工作,从而允许许多客户机系统(客户机)存取文件管理器中存储的共享资源、如文件。文件的共享是NAS系统的特点,它是由于对文件和文件系统的存取的语义级而实现的。在NAS系统中信息的存储通常部署在包括互连通信链路的地理分布集合的计算机网络、如以太网上,它允许客户机远程存取文件管理器中的信息(文件)。客户机通常通过根据预定义协议、如传输控制协议/因特网协议(TCP/IP)交换离散帧或数据包,与文件管理器进行通信。
在客户机/服务器模型中,客户机可包括在计算机上运行的应用,计算机通过诸如点到点链路、共享局域网、广域网或在公共网、如因特网上实现的虚拟专用网之类的计算机网络“连接”到文件管理器。NAS系统一般采用基于文件的存取协议;因此,各客户机可通过经由网络向文件系统发出文件系统协议消息(以数据包的形式)来请求文件管理器的服务。通过支持多个文件系统协议、如传统的公用因特网文件系统(CIFS)、网络文件系统(NFS)和直接存取文件系统(DAFS)协议等,可为将客户机组网而增强文件管理器的用途。
SAN是高速网络,它允许建立存储系统及其存储装置之间的直接连接。因此,SAN可看作是存储总线的扩展,因此,存储系统的操作系统允许采用基于块的存取协议通过“扩展总线”对存储信息进行存取。在此上下文中,扩展总线通常被具体化为光纤信道(FC)或以太网媒体(即网络),适合在FC或TCP/IP/以太网上与块存取协议、诸如小型计算机系统接口(SCSI)协议封装配合工作。
SAN配置或部署允许存储器与存储系统、如应用服务器分离以及将该存储器设置在网络上。但是,SAN存储系统通常管理专门分配的存储资源。虽然存储可分组(或形成池)为若干区域(例如通过传统的逻辑单元号或“lun”分区、掩码和管理技术),但存储装置仍然由用户、例如系统管理员预先分配给存储系统。
存储虚拟化一般涉及通常在网络上由一个或多个存储系统从多个存储装置、如物理盘汇集存储资源,以便创建“用户定义的卷”。传统上用于SAN环境的术语“卷”意味着通过经由将那些盘区/盘组合为用户定义的卷存储实体的操作来指定物理盘以及那些盘内的盘区(由系统管理员)所构建的存储实体。盘区是指定物理盘内的存储器的一组毗邻寻址块(或“片”)。这种构造可出现在存储装置或者应用服务器上。存储虚拟化往往用作SAN部署的一部分,其中,用户定义的卷对于操作系统表现为单存储实体,与所汇集的存储装置的类型无关。因此,虚拟化将存储器对操作系统的表示与通过网络连接的实际物理存储器分开。
存储虚拟化有许多解释,包括物理盘大小限制和基础物理结构与对应于盘或lun的用户定义的卷的分离。虚拟化还可涉及lun的管理,包括定义存储器的基础可靠性保证。虚拟化的这个方面一般通过对于从存储池形成的lun的明确镜像或者独立(或廉价)盘冗余阵列(RAID)保护等级来实现。也就是说,系统管理员明确定义所构建的用户定义卷的基础可靠性保证。可以理解,这个管理过程是复杂、费时、因而成本高的。
虚拟化还可表示修改lun的现有配置(例如增加其大小)以及lun的性能特性的能力。但是,明确构建较大存储单元供客户机使用的传统物理盘和策略可能受到性能限制。例如,通过明确聚集多个盘和/或那些盘的“片”(盘区)所构建的用户定义卷的带宽可能受到所构建卷的基础属性的物理约束的限制。
因此,存储虚拟化的传统概念涉及向客户机提供存储器(即用户定义卷)的视图,其中该卷由用户或系统管理员选取的客户机可存取的各种盘的盘区组成。管理员执行的选择过程一般包括(i)从与客户机可存取的存储器相关联的盘选择各种盘区;(ii)将基础可靠性保证(例如RAID或镜像)应用于那些盘区,以确保卷的可靠性;以及(iii)将那些可靠盘区作为单存储实体(例如盘或lun)提供给客户机。本发明针对在存储系统上有效地执行存储虚拟化选择过程。
发明内容
本发明涉及一种存储虚拟化选择技术,它使虚拟化选择过程“自动化”,以便在存储系统、如多协议存储设备的存储操作系统所实现的文件系统的卷上“分层”(创建)虚拟盘(虚盘)存储对象。概括地说,文件系统提供一种虚拟化系统,它将一组盘或盘的若干部分(例如盘区)的物理存储区聚集为可动态分配以形成虚盘的块池。根据其基础体系结构,文件系统还为虚盘提供可靠性保证。也就是说,文件系统在所管理的盘之中创建的卷内组织其存储。此后,虚盘在卷中作为存储对象被创建,因而继承了与该卷相关联的基础可靠性配置。值得注意的是,响应来自存储设备的用户、如系统管理员的创建虚盘的请求,这些部分被聚集和分配为具有可靠性保证的虚盘,而不会进一步牵涉到用户。
根据本发明的一个方面,该技术还为文件系统提供虚盘的盘上表示。虚盘是卷中的一种特殊文件类型,它从普通(常规)文件得出,但具有支持盘模拟的相关导出控制和操作限制。明确地说,虚盘为多索引节点对象,其中包括作为文件系统内的单“封装”存储对象来管理的特殊文件索引节点以及至少一个相关流索引节点。特殊文件索引节点用作存储与模拟盘相关联的数据的主容器。流索引节点用作用于存储允许虚盘作为逻辑单元号(lun)导出到例如存储区域网(SAN)客户机的各种属性的持久存储区。这些属性包括还允许封装虚盘在例如重新引导操作上维持的安全信息,并且允许相对于SAN客户机作为单盘对象来管理虚盘。
有利的是,卷的基础可靠性配置定义该卷内创建的虚盘的可靠性特性。多协议设备的这种“继承的”可靠性方法简化了虚盘的管理,因为用户(系统管理员)不必基于存储对象(虚盘)处理可靠性问题。相反,系统管理员只需要提出关于整个卷的可靠性的全局选择。
附图概述通过参照以下结合附图的描述,可以更好地理解本发明的上述及其它优点,附图中相似的参考标号表示相同或功能相似的元件
图1是可有利地与本发明配合使用的多协议存储设备的示意框图;图2是可有利地与本发明配合使用的多协议存储设备的存储操作系统的示意框图;图3是与存储操作系统的虚拟化模块交互的文件系统所实现的虚拟化系统的示意框图;图4是可有利地与本发明配合使用的盘上索引节点数据结构的示意框图;
图5是示意框图,说明根据本发明的索引节点数据结构的盘上表示,其中包括虚拟盘(虚盘)的逻辑单元号(lun)和属性索引节点;以及图6是流程图,说明根据本发明创建虚盘时所涉及的步骤的说明性序列。
说明性实施例的详细描述图1是可有利地与本发明配合使用的多协议存储设备100的示意框图。多协议存储设备配置成以综合方式对存储装置中存储的信息的文件及块协议存取提供存储服务。在此上下文中,综合多协议设备表示一种具有诸如简化存储服务管理以及便于存储器重新配置等特征的计算机,其中包括可再用的存储空间,用于网络连接存储器(NAS)和存储区域网(SAN)部署的用户(系统管理员)和客户机。
多协议存储设备100被说明性地具体化为一种存储系统,其中包括通过系统总线123互连的处理器122、存储器124、多个网络适配器125、126以及存储适配器128。多协议存储设备100还包括存储操作系统200,它提供虚拟化系统(以及具体的文件系统),以便在逻辑上将信息组织为盘130上的命名目录、文件和虚拟盘(虚盘)存储对象的分层结构。在共同未决且共同转让的题为“提供对文件和块存取协议的综合支持的多协议存储设备”的美国专利申请序号(112056-0070)中描述了可以有利地与本发明配合使用的多协议存储设备的一个实例,通过引用将该申请结合于此,好像本文完整地提出那样。
基于NAS的网络环境的客户机具有文件的存储观点,而基于SAN的网络环境的客户机则具有块或盘的存储观点。为此,多协议存储设备100通过创建逻辑单元号(lun)或虚盘对象将盘提供(导出)给SAN客户机。虚盘对象(以下称作“虚盘”)是一种特殊文件类型,它由虚拟化系统实现并被转换成SAN客户机看作的模拟盘。此后,多协议存储设备使这些模拟盘通过受控导出可供SAN客户机存取,如本文进一步所述那样。
在说明性实施例中,存储器124包括可由处理器和适配器寻址的存储单元,用于存储与本发明相关的软件程序代码和数据结构。处理器和适配器又可包括配置成运行软件代码并处理数据结构的处理元件和/或逻辑电路。存储操作系统200的一部分通常驻留在存储器中并由处理元件运行,存储操作系统200特别通过调用支持该设备实现的存储服务的存储操作,在功能上组织存储设备。本领域的技术人员十分清楚,其它处理及存储部件、包括各种计算机可读媒体都可用于存储和执行与本文所述的本发明有关的程序指令。
网络适配器125通过在公共网络(因特网)或共享局域网上实现的点对点链路、广域网、虚拟专用网(以下称作说明性以太网165)将存储设备耦合到多个客户机160a、b。对于这种基于NAS的网络环境,客户机配置成存取多协议设备中以文件存储的信息。因此,网络适配器125可包括网络接口卡(NIC),它具有将设备连接到网络交换机、如传统的以太网交换机170所需的机电及信令电路。客户机160通过根据预定义的协议、如传输控制协议/因特网协议(TCP/IP)交换离散帧或数据包,经由网络165与存储设备进行通信。
客户机160可以是通用计算机,它配置成在包括UNIX和MicrosoftWindowsTM操作系统在内的各种操作系统上运行应用程序。在通过基于NAS的网络存取信息(以文件和目录的形式)时,客户机系统一般采用基于文件的存取协议。因此,各客户机160可通过经由网络165向设备发出文件存取协议消息(以数据包的形式),来请求存储设备100的服务。例如,运行Windows操作系统的客户机160a可采用基于TCP/IP的公用因特网文件系统(CIFS)协议与存储设备100进行通信。另一方面,运行UNIX操作系统的客户机160b可采用基于TCP/IP的网络文件系统(NFS)协议或者根据基于TCP/IP的远程DMA(RDMA)协议的基于虚拟接口(VI)传送的直接存取文件系统(DAFS)协议与多协议设备进行通信。本领域的技术人员十分清楚,运行其它类型的操作系统的其它客户机也可采用其它文件存取协议与综合多协议存储设备进行通信。
存储网络“目标”适配器126还将多协议存储设备100耦合到还可配置成存取作为块或盘的存储信息的客户机160。对于这种基于SAN的网络环境,存储设备耦合到说明性光纤信道(FC)网络185。FC是描述主要见于SAN部署中的一套协议和媒体的组网标准。网络目标适配器126可包括FC主机总线适配器(HBA),它具有将设备100连接到SAN网络交换机、如传统的FC交换机180所需的机电及信令电路。除了提供FC存取之外,FC HBA还可为存储设备卸载光纤信道网络处理操作。
在通过基于SAN的网络存取信息(以块、盘或虚盘的形式)时,客户机160一般采用基于块的存取协议、如小型计算机系统接口(SCSI)协议。SCSI是具有标准的与设备无关的协议的外围输入/输出(I/O)接口,它允许不同的外围设备、如盘130连接到存储设备100。在SCSI技术中,在SAN环境中工作的客户机160是发起对数据的请求和命令的发起者。因此,多协议存储设备是配置成根据请求/响应协议响应发起者发出的请求的目标。发起者和目标具有端点地址,根据FC协议,这些地址包含全球名称(WWN)。WWN是由8字节数字构成的唯一标识符,例如节点名称或端口名称。
多协议存储设备100支持用于SAN部署中的各种基于SCSI的协议,包括在TCP上封装的SCSI(iSCSI)以及在FC上封装的SCSI(FCP)。因此,发起者(以下称作客户机160)可通过经由网络185发出iSCSI和FCP消息来请求目标(以下称作存储设备100)的服务,以便存取盘上存储的信息。本领域的技术人员十分清楚,客户机也可采用其它块存取协议来请求综合多协议存储设备的服务。通过支持多个块存取协议,多协议存储设备对于异类SAN环境中的虚盘/lun提供统一且相干的存取解决方案。
存储适配器128与存储设备上运行的存储操作系统200配合以存取客户机所请求的信息。信息可存储在盘130或适合存储信息的其它类似媒体中。存储适配器包括I/O接口电路,它通过I/O互连配置、如传统的高性能FC串行链路拓扑耦合到盘上。信息由存储适配器检索,以及必要时,在通过系统总线123转发给网络适配器125、126之前由处理器122(或适配器128本身)处理,其中信息被格式化为数据包或消息并返回给客户机。
信息在设备100上的存储最好是实现为一个或多个存储卷(例如VOL1-2150),它们包括物理存储盘130的簇,定义盘空间的整个逻辑安排。卷中的盘通常被组织成一组或多组独立(或廉价)盘冗余阵列(RAID)。通过在RAID组中的给定数量的物理盘上写入数据“条”以及适当存储关于分条数据的冗余信息,RAID实现增强了数据存储的可靠性/完整性。冗余信息允许恢复存储装置出故障时丢失的数据。
明确地说,每个卷150由组织成RAID组140、142和144的物理盘130的阵列构成。根据说明性RAID 4级配置,各RAID组的物理盘包括配置为存储分条数据(D)的那些盘以及配置成存储数据的奇偶性(P)的那些盘。但是,也可考虑其它RAID级配置(例如RAID 5)。在说明性实施例中,可采用最少一个奇偶性盘和一个数据盘。但是,一种典型实现可以是每个RAID组包括三个数据盘和一个奇偶性盘以及每卷包括至少一个RAID组。
为了便于对盘130的存取,存储操作系统200实现随处写文件系统,它与虚拟化模块配合以提供把盘130所提供的存储空间“虚拟化”的功能。文件系统在逻辑上将信息组织为盘上的命名目录和文件对象(以下称作“目录”和“文件”)的分级结构。各“盘上”文件可实现为配置成存储信息、如数据的盘块的集合,而目录则可实现为特殊格式的文件,在其中存储名称以及对其它文件和目录的链接。虚拟化系统允许文件系统进一步在逻辑上将信息组织为盘上的命名虚盘的分级结构,从而通过允许对命名文件和目录的基于文件(NAS)的存取、同时还允许在基于文件的存储平台上对命名虚盘的基于块(SAN)的存取,对存储提供综合NAS和SAN设备方法。
在说明性实施例中,存储操作系统最好是可从Network Appliance,Inc.(Sunnyvale,California)购买的NetAppData ONTAPTM操作系统,它实现随处写文件布局(WAFLTM)文件系统。但是,明确地考虑,根据本文所述的本发明原理,任何适当的存储操作系统、包括适当位置可写文件系统可增强使用。因此,在采用术语“WAFL”的情况下,应当广义地认为是表示以其它方式可适合本发明的理论的任何存储操作系统。
本文所用的术语“存储操作系统”一般表示可在计算机上工作的计算机可执行代码,它管理数据存取,以及在多协议存储设备的情况下可实现数据存取语义,例如Data ONTAP存储操作系统,它实现为微核。存储操作系统也可实现为在通用操作系统、如UNIX或Windows NT中工作的应用程序,或者实现为具有可配置功能性的通用操作系统,如本文所述,为存储应用而配置。
另外,本领域的技术人员理解,本文所述的本发明的技术可应用于实现为或包括存储系统的任何类型的专用(例如存储服务设备)或通用计算机,包括独立计算机或其部分。此外,本发明的理论可适合各种存储系统体系结构,其中包括但不限于网络连接存储环境、存储区域网以及直接连接到客户机或主计算机的盘组件。因此,除了配置成执行存储功能并与其它设备或系统关联的任何子系统之外,术语“存储系统”还应当广义地包括这类配置。
图2是可有利地与本发明配合使用的存储操作系统200的示意框图。存储操作系统包括一系列软件层,它们经过组织以构成综合网络协议栈,或者更一般来说,是提供让客户机采用块和文件存取协议存取多协议存储设备中存储的信息的数据通路的多协议引擎。协议栈包括与网络协议层、如IP层212及其支持传输机制、TCP层214和用户数据报协议(UDP)层216接口的网络驱动器(例如千兆位以太网驱动器)的媒体存取层210。文件系统协议层提供多协议文件存取,为此包括对DAFS协议218、NFS协议220、CIFS协议222以及超文本传送协议(HTTP)协议224的支持。VI层226实现VI体系结构,以便提供DAFS协议218所要求的直接存取传送(DAT)能力、例如RDMA。
iSCSI驱动器层228提供TCP/IP网络协议层之上的块协议存取,而FC驱动器层230则与FC HBA 126配合对综合存储设备接收和发送块存取请求及响应。FC和iSCSI驱动器提供对lun(虚盘)的FC特定的和iSCSI特定的存取控制,从而管理当存取多协议存储设备中的单虚盘时对iSCSI或FCP或者对iSCSI和FCP两者导出虚盘。另外,存储操作系统包括实现例如RAID协议等盘存储协议的盘存储层240以及实现例如SCSI协议等盘存取协议的盘驱动器层250。
将盘软件层与综合网络协议栈层桥接的是虚拟化系统300。图3是虚拟化系统300的示意框图,它通过与说明性实施为例如虚盘模块330和SCSI目标模块310的虚拟化模块交互的文件系统320来实现。应当指出,虚盘模块330、文件系统320和SCSI目标模块310可通过软件、硬件、固件或其组合来实现。虚盘模块330被分层在文件系统320上,从而使管理界面、如流线型用户界面(UI 350)能够响应系统管理员向多协议存储设备100发出命令而进行存取。本质上,虚盘模块330特别是通过实现由系统管理员经由UI 350发出的虚盘(lun)命令的综合集合,来管理SAN部署。这些虚盘命令被转换成基本文件系统操作(“原语”),它们与文件系统320和SCSI目标模块310交互以实现虚盘。
SCSI目标模块310又通过提供将lun转换成特殊虚盘文件类型的映射过程来发起盘或lun的模拟。SCSI目标模块说明性地部署在FC和iSCSI驱动器228、230与文件系统320之间,从而提供SAN块(lun)空间与文件系统空间之间的虚拟化系统300的转换层,其中lun表示为虚盘322。为此,SCSI目标模块具有一组应用编程接口(API 360),它们基于SCSI协议以及实现到iSCSI和FCP驱动器228、230的一致接口。通过将SAN虚拟化“部署”在文件系统320之上,多协议存储设备颠倒先有系统采取的方法,从而为实质上所有存储存取协议提供单个统一存储平台。
文件系统320说明性地是基于消息的系统;这样,SCSI目标模块310将SCSI请求变换为表示针对文件系统的操作的消息。例如,SCSI目标模块所产生的消息可包括一种操作(例如读、写)以及路径名称(例如路径描述符)和文件系统中表示的虚盘对象的文件名(例如特殊文件名)。SCSI目标模块310将消息传递到文件系统层320作为例如函数调用365,其中执行操作。
文件系统提供卷管理能力,用于对存储装置、如盘中存储的信息的基于块的存取。也就是说,除了提供文件系统语义、如存储对象的命名之外,文件系统320提供一般与卷管理器相关联的功能。这些功能包括(i)盘的聚集,(ii)盘的存储带宽的聚集,以及(iii)可靠性保证,例如镜像和/或奇偶性(RAID),从而提供分层在文件系统上的一个或多个存储对象。多协议存储设备的一个特征是与这些卷管理能力相关联的使用的简化,尤其是当用于SAN部署时。
文件系统320说明性地实现具有盘上格式表示的WAFL文件系统,它是采用例如4千字节(kB)块以及采用索引节点来描述文件324的基于块的。WAFL文件系统采用文件来存储描述其文件系统的布局的元数据;这些元数据文件包括索引节点文件等。包含索引节点编号的文件句柄、即标识符用于从盘检索索引节点。在David Hitz等人的题为“用于保持文件系统的一致状态以及用于创建文件系统的用户可存取只读副本的方法”的美国专利第5819292号(1998年10月6日授权)中提供了文件系统、包括盘上索引节点和索引节点文件的结构的描述,此专利通过引用结合于此,好像本文完整地提出那样。
图4是示意框图,说明最好包括元数据部分410和数据部分450的盘上索引节点400。各索引节点400的元数据部分410中存储的信息描述该文件,因此包括文件的类型(例如常规或目录)412、文件的大小414、文件的时标(例如存取和/或修改)416以及文件的所有权、即用户标识符(UID 418)和组ID(GID 420)。元数据部分410还包括xinode字段430,其中具有引用包含例如与文件或目录相关联的存取控制列表(ACL)信息的另一个盘上索引节点结构的指针。但是,各索引节点的数据部分450的内容根据类型字段412中定义的文件(索引节点)类型可有不同解释。例如,目录索引节点的数据部分450包含由文件系统控制的元数据,而常规索引节点的数据部分则包含用户定义的数据。在后一种情况中,数据部分450包含与文件相关联的数据的表示。
明确地说,常规盘上索引节点的数据部分450可包含用户数据或指针,后者引用用来存储用户数据的盘上的4kB数据块。各指针最好是逻辑卷块编号,从而促进当存取盘上的数据时文件系统与盘存储(RAID)层240之间的效率。给定索引节点的受限大小(128字节),则在该索引节点的数据部分内完整地表示具有小于或等于64字节的大小的用户数据。但是,如果用户数据大于64字节但小于或等于64kB,则索引节点的数据部分包括多达16个指针,其中的每个引用盘上的4kB数据块。此外,如果数据的大小大于64千字节但小于或等于64兆字节(MB),则索引节点的数据部分450中的各指针引用包含1024个指针的间接节点,其中的每个指针引用盘上的4kB数据块。各数据块从盘130装入存储器124,以便存取该数据。另外,索引节点的元数据部分410的大小字段414表示文件的大小。
概括地说,文件系统的所有索引节点均组织为索引节点文件。文件系统(FS)信息块指定文件系统中的信息布局,以及包括包含文件系统的其它所有索引节点的文件的索引节点。每个卷具有FS信息块,它最好存储于例如文件系统的RAID组内的固定位置。根FS信息块的索引节点可直接引用(指向)索引节点文件块,或者可引用间接索引节点文件块,这些间接块又引用直接索引节点文件块。在每个直接索引节点文件块中嵌入了一些索引节点,其中的每个可引用间接块,这些间接块又引用文件或虚盘的数据块。
再次参照图3,文件系统实现对虚盘322的存取操作以及对就存储单元的全局空间管理、如卷150和/或配额树(qtree)328而言共存的文件324和目录(dir 326)的存取操作。配额树328是特殊目录,它具有物理卷的名称空间内的逻辑子卷的属性。各文件系统存储对象(文件、目录或虚盘)说明性地与一个配额树相关联,以及配额、安全属性及其它项目可按每个配额树进行分配。虚盘和文件/目录可被分层在配额树328之上,配额树328又被分层在卷150之上,如通过文件系统“虚拟化”层320抽象的那样。
注意,文件系统320中的虚盘存储对象与多协议存储设备的SAN部署相关联,而文件和目录存储对象则与设备的NAS部署相关联。文件和目录一般不可经由FC或SCSI块存取协议进行存取;但是,文件可被转换成虚盘,然后再通过SAN或NAS协议进行存取。虚盘可通过SAN(FC和SCSI)协议作为lun进行存取以及通过NAS(NFS和CIFS)作为文件进行存取。
虽然虚盘是包含适当操作和授权所需的全部数据的独立对象,但虚盘内容表(VTOC 370)则作为查找和加载虚盘的性能增强来提供。VTOC不是正确操作所必要的,可通过虚盘扫描来动态重构。VTOC370是元数据文件中存储的按卷数据结构,它用来优化卷150中的持久虚盘322的位置确定及初始化。VTOC 370包含一个或多个记录372,其中,每个记录包含标志和文件条目信息,如上所述,它们可从表示文件系统320内的虚盘的封装存储对象中所存储的信息中动态重构。具体来说,每个记录372包括文件条目,其中包含(i)卷中的文件标识符(索引节点编号);(ii)虚盘(lun)索引节点的生成编号;以及(iii)目录信息。目录信息又包含其中具有虚盘的条目的父目录(配额树根)中的文件块编号以及父目录块中的目录条目的索引。
本发明涉及存储虚拟化选择技术,它使将虚盘322分层在文件系统320的卷150上的虚拟化选择过程“自动化”。响应用户创建虚盘的请求(命令),文件系统将一组盘130或盘的若干部分(盘区或“条”)的物理存储区聚集为可动态分配以形成虚盘322的块池。根据其基础体系结构,文件系统还为虚盘提供可靠性保证。也就是说,文件系统320在所管理的盘之中创建的卷内组织其存储。此后,虚盘322在卷150内作为命名存储对象被创建,因而继承(采取)与该卷相关联的基础可靠性配置。值得注意的是,这些部分被聚集和分配为具有可靠性保证的虚盘,而不用进一步牵涉存储设备的用户、如系统管理员。
明确地说,信息在多协议存储设备的盘130中的存储不是印刷字,而只是“原始”位存储在盘中。文件系统320配置成根据聚集卷的所有盘的带宽的输入/输出(I/O)存储操作在盘上将信息写(存储)为那些盘上的连续长条。根据本发明的技术,文件系统将该信息组织成卷的盘上的虚盘。从虚盘检索信息时,I/O操作不是针对用户所指定的盘。相反,那些操作对于用户是透明的,因为文件系统根据其随处写布局策略以可靠方式对卷的所有盘上的数据“分条”。因此,虚盘322不需要明确地配置,因为虚拟化系统300以对用户透明的方式创建虚盘。
如上所述,文件系统320将信息组织成盘130的卷150中的命名文件、目录和虚盘对象。在各卷150之下是RAID组140-144的集合,它们对卷中的盘故障提供保护和可靠性。根据说明性RAID4配置对由多协议存储设备提供服务的信息进行保护。这种保护等级可扩展为包括例如设备平台中的同步镜像。在卷上创建的受到RAID4保护的虚盘322在为卷150指定了附加同步镜像保护时“继承”了该保护。在这种情况下,同步镜像保护不是虚盘的属性,而是基础卷的属性以及文件系统320的可靠性保证。多协议存储设备的这种“继承”特征简化了虚盘的管理,因为系统管理员不必处理可靠性问题。
虚盘是在卷中的一种特殊文件类型,它从普通(常规)文件得出,但具有支持盘模拟的相关导出控制和操作限制。更明确地说,虚盘322为多索引节点对象,其中包括作为文件系统320内的单一封装存储对象来管理的特殊文件索引节点以及至少一个相关流索引节点。虚盘322说明性地表明流索引节点的一个实施例,它与特殊文件索引节点配合,创建具有封装特定安全性、管理和寻址(导出)信息的能力的新类型的文件存储对象。在K.Patel的题为“表示文件系统的盘上结构内的命名数据流的系统和方法”的美国专利申请第09/891195号中描述了可有利地与本发明配合使用的流索引节点对象的一个实例,该申请于2001年6月25日提交,通过引用将其结合于此,好像本文完整地提出那样。
根据本发明的一个方面,存储虚拟化技术将物理盘大小限制和基础物理结构与呈现给客户机的盘或lun分离。采用例如对于看似物理盘的虚盘从客户机的角度易于管理的构造,用户可指定“正确大小”存储器作为块装置(虚盘),供客户机使用。也就是说,虚盘说明性地为固定大小的对象,它通过经由命令行界面(CLI 32)或图形用户界面(GUI 354)采用简单的“lun创建”命令来请求特定大小,从文件系统的全局存储池中分配。
虽然虚盘不是多协议存储设备内的物理盘,但存储虚拟化技术“模拟”物理盘,即以对用户和客户机透明的方式。该技术所实现的盘的一个重要的模拟属性是,除了通过CLI或GUI之外,无法创建或破坏(删除)虚盘。这种属性意味着,当它可通过NAS协议存取时(在经由共享的命令的明确动作之后),虚盘无法通过写到其分配空间外部的NAS操作暗中扩展。虚盘可以在原位没有复制操作地且以对客户机透明的方式重新确定大小,例如使之更大(“生长”)或更小(“收缩)。值得注意的是,虚盘可在用户控制下(例如经由通过UI 350发出的lun命令)生长或收缩,同时保存对其应用数据的块及NAS多协议存取。当虚盘长大时,分配附加存储空间;当收缩时,来自虚盘的额外空间返回给全局空闲池。此外,用户(系统管理员)具有动态(“即时”)创建用于传统块存取应用的虚盘的能力。
通过在存储装置中采用在客户机上所用的管理工具、根据简易名称(由用户定义的字母和数字组成)对它们进行标识,本发明的技术还简化了虚盘的管理。SAN客户机通常根据逻辑编号或lun对盘进行标识和寻址。但是,自动存储虚拟化技术使系统管理员可以根据逻辑名称来管理虚盘及其寻址。为此,多协议存储设备的虚盘模块330将逻辑名称映射到虚盘。例如,当创建虚盘时,系统管理员以“正确大小”分配虚盘,并为它指定一般对其目标应用有意义的名称(例如/vol/vol0/database,用以保存数据库)。
存储虚拟化技术通过定义在文件系统“之上”的盘的虚盘抽象来处理性能限制的问题。通过为虚盘提供比需要仅满足空间要求的较少数量的盘驱动器的连接可得到的更大带宽,这种抽象聚集基础盘的带宽。另外,与纯物理实现相比,文件系统的延迟分配策略和写入聚集可用于优化虚盘的带宽。如上所述,虚盘在文件系统之上的分层还允许虚盘继承基础卷的可靠性配置(例如RAID 4和/或同步镜像)。
根据本发明的另一个方面,存储虚拟化技术提供多协议存储设备中存储的虚盘322的盘上表示。图5是示意框图,说明根据本发明的索引节点数据结构的盘上表示500,其中包括虚盘(lun)和流(属性)索引节点。目录(DIR1)索引节点502包括指针505的数据部分504,它引用目录数据块,其中之一为目录块506。目录块包括多个条目,每个包含索引节点的外部表示(即索引节点的名称)以及该索引节点的映射信息(即索引节点编号)。那些条目之一、即条目508包含引用lun索引节点510的映射信息(例如指针)。
lun索引节点510是特殊文件索引节点,它用作存储与虚盘322相关联的数据的主容器。也就是说,lun索引节点包括数据部分518,它可存储实际的(用户或应用)数据或引用用来存储该数据的盘上4kB数据块的指针。这个“缺省”容器中所存储的数据可由客户机采用传统的块存取协议、如SCSI协议来检索(读取)和存储(写入)。当适当配置时,虚盘还可采用传统的文件级存取协议、如NFS协议来存取。在这种配置中,虚盘对于这类存取“看起来”是常规文件。lun索引节点510还包括元数据部分512,其中包含元数据、如虚盘的类型513(即特殊虚盘类型)和大小516,它在索引节点创建时为零。标志_流标志514将lun索引节点510标识为不仅具有缺省数据容器部分518,而且还具有一个或多个流“部分”,由流_目录索引节点520提供。
为了存取流_目录索引节点520,lun索引节点510中的xinode字段515的指针被修改为引用那个索引节点。流_目录索引节点520包括元数据部分522,它包含类型(流_目录)字段524以及引用包含例如与虚盘关联的存取控制(如CIFS许可)信息的另一个盘上索引节点结构的xinode字段525。索引节点520还包括数据部分526,其中包含引用与虚盘关联的流目录数据块、如流目录块530的指针528。流目录块530包括数据部分532,它包括多个条目,其中的每个包含流索引节点的外部表示以及该索引节点的映射信息(即索引节点编号)。那些条目之一、即条目534包含引用属性(流)索引节点540的映射信息(例如指针)。
属性索引节点540包括元数据部分542,它包括类型(流)字段543以及用作保存与虚盘322关联的各种命名属性的持久存储区的数据部分544。属性是文件系统内部的一种实现机制,不由用户管理。这些属性包括允许虚盘作为逻辑单元号(lun)输出到例如SAN客户机的信息。另外,属性包括允许封装虚盘在例如重新引导操作中维持的信息,并且允许相对于SAN客户机作为单盘对象来管理虚盘。
属性的实例之中包括几何尺寸545、SCSI序列号546、空间保留547、状态(联机/脱机)548以及导出信息549,后者通过例如指定虚盘要导出到的发起者(即获准存取虚盘的那些发起者)的列表来控制对虚盘的存取。几何尺寸信息545与模拟盘或lun所需的虚盘的物理几何尺寸有关。例如,虚盘大小(由用户提供)用算法转换成几何尺寸信息(例如柱面大小),它可返回给SAN客户机作为盘或lun的表示。虽然几何尺寸545说明性地表示为持久地存储在属性索引节点540中,但在一个备选实施例中,可动态(即时)计算几何尺寸信息545。
明确地说,在虚盘创建及几何尺寸选择过程中考虑虚盘的大小调整。最小10x重定大小能力说明性地在初始盘几何尺寸的选择中考虑。也就是说,虚盘的初始请求大小被放大10x,以便计算用作几何尺寸的基础的所得柱面大小。所得柱面大小还是关于虚盘可调整到多大的限制因素。几何尺寸信息是恒定的;即,一旦创建了虚盘,则其几何尺寸的几乎所有方面都是固定的。只有柱面数量可能改变,它在说明性实施例中具有65535的最大值。
流目录块530的其它条目536、538包含引用其它流索引节点、如lunmap(流)索引节点550和持久保留(流)索引节点560的映射信息(例如指针)。lunmap索引节点550包括元数据部分552,它包括类型(流)字段544以及用作保存名称值对的列表558的持久存储区的数据部分556。在说明性实施例中,名称为发起者组(igroup)名称,以及值为lun标识符(ID)。igroup是对于与一个或多个发起者关联的一个或多个地址分配的逻辑命名实体(取决于是否配置了群集环境)。这些地址可包含WWN地址或iSCSI ID。“lun map”命令用于将一个或多个虚盘导出到igroup,也就是使虚盘让igroup“可见”。在这方面,“lun map”命令等效于NFS导出或CIFS共享。这样,WWN地址或iSCSI ID标识被准许存取lun map命令指定的那些虚盘的客户机。
持久保留索引节点560包括元数据部分562,它包括类型(流)字段564以及用作保存提供有关虚盘的所有权及存取信息的持久保留记录列表570的持久存储区的数据部分566。在国家信息技术标准委员会的Committee T10的SCSI-3基本命令-3中描述了持久保留。各持久保留记录包含连系(发起者ID)572、保留密钥(WWN)574和保留类型(共享、专用、读、写)576。
总之,新颖的虚盘存储对象构造为包含控制和管理单存储实体中的那个对象所需的数据和元数据,这在运行于多协议存储设备100上的存储操作系统200的框架内易于管理。为此,作为文件系统中的单一封装单元来管理虚盘(数据及属性)。这种“封装”属性使运行于存储设备中的应用能够不必重新编码而与虚盘配合工作。数据和属性的封装关联还确保数据保护操作期间的保留。例如,当例如异步镜像操作期间备份封装虚盘存储实体时,封装属性实现与那个实体关联的数据和属性的“绑定”。
明确地说,虚盘的数据(文件索引节点)和属性(流索引节点)之间的绑定建立单一封装对象,它是“自描述的”,因为它包含例如存取那个对象所需的全部信息。因此,不需要任何“外部”信息来描述虚盘对象。应当指出,在写操作(或者透明地“即时”发生整理碎片时的读操作)期间,虚盘与盘块之间没有绑定。盘块映射到驻留在文件系统中的对象的逻辑块地址。在这种情况下,文件系统用作动态卷管理器。这种分离是采用文件系统作为基础存储处理器的结果。
根据本发明,虚盘具有许多其它属性,包括“间隔保留”。也就是说,与可以是任意大小以及可适应增加文件大小的连续写操作的常规文件不同,虚盘局限在当它被创建时所指定的存储空间。但是,所创建的虚盘可明确地重定大小,以便增加其存储空间。在虚盘被创建时不耗用任何存储空间、因此不必完全填充的意义上,虚盘也是“稀疏”文件类型。当数据存储在块中时,文件系统才为虚盘分配存储空间、例如那些块;因此,虚盘用作没有预先分配存储区的“占位符”。
当虚盘以特定大小被创建时,空间保留属性确保,在文件系统中与所指定大小对应的存储空间始终被保留,而不管附加文件和虚盘的创建以及文件系统的持久镜像的生成。稀疏文件类型属性还确保写操作不会无法对虚盘进行(从SAN客户机的角度,这通常相当于盘故障)。这种对现有虚盘的写操作始终完成的保证是支持对客户机的透明度所需要的。
稀疏文件属性的一个优点在于,虚盘的创建(例如“lun创建”)实质上瞬时发生。由于没有预先分配与虚盘关联的存储空间,因此虚盘的创建仅采用最初需要的核算信息快速有效地发生。此后,对虚盘发生写操作时分配存储块。在这个上下文中,块的预先分配涉及对那些块的内容的初始化(“清零”),这对于较大容量的盘可能耗用相当多的时间。这种属性不仅允许快速创建虚盘,它还支持数据完整性及保密性(即,既不需要把数据初始化,也不需要破坏旧数据)。
图6是流程图,说明根据本发明创建虚盘时所涉及的说明性步骤序列。此序列在步骤600开始,并进行到步骤602,其中,用户(系统管理员)通过例如经由与多协议存储设备关联的CLI 352、GUI 354或类似的管理界面发出虚盘(“lun创建”)命令来创建虚盘。从用户的角度,lun创建命令是原子操作,它指定虚盘(lun)的创建以及虚盘的预期大小和指定虚盘位置的路径描述符(完整路径名称)。注意,路径描述符包含将虚盘(由特殊文件名来标识)分层在其上的卷和目录的标识。作为响应,文件系统320与虚盘模块330配合以把基础盘所提供的存储空间“虚拟化”,并创建由创建命令指定的虚盘。为此,虚盘模块330处理虚盘命令以“调用”文件系统320中的基本操作(“原语”),它们实现虚盘(lun)的高级概念。
例如,在步骤604,虚盘模块与文件系统320配合以检查指定的路径描述符和大小。这个检查操作检验(i)路径描述符中指定的卷存在,(ii)先前在指定卷中没有分配(特殊文件)名称,以及(iii)在指定卷中存在足够的存储空间用于所创建的虚盘。然后,在步骤606确定是否成功地检查指定路径描述符和大小。如果为否,则虚盘创建在步骤608中止,然后序列在步骤620结束。如果路径描述符和大小已经检查,则文件系统和虚盘模块配合以创建与虚盘相关联的文件索引节点,以及为该索引节点设置指定大小(步骤610)。在虚盘创建过程的步骤610,根据例如创建文件索引节点(创建文件)原语来创建常规(普通)文件。
此后,在步骤612,根据创建流索引节点(创建流)原语来创建流索引节点。创建这个流索引节点是为了存储与待创建虚盘相关联(“绑定”)的属性。在步骤614,流索引节点被填充用户所提供的属性。这里,执行原语(流写入),它将信息存储在流索引节点中。属性之中可包括虚盘的状态、通过网络文件系统协议共享虚盘的许可以及SCSI查询信息、例如SCSI序列号。注意,设置文件所有者和组ID参数,以便在通过网络文件系统协议导出虚盘时使用。空间保留保证也被设置,使得对虚盘的写操作不会失败。然后,执行另一个原语,将文件索引节点的类型从常规转换成“虚盘”(步骤616),从而在步骤618创建虚盘(lun)索引节点。注意,文件类型在步骤616从常规到虚盘的转换防止文件系统可能的破坏。然后,该序列在步骤620结束。
虽然已经表示及描述了根据本发明的技术、用于创建虚盘的步骤的说明性序列,但是要理解,在本发明的精神和范围之内,可进行其它各种变更和修改。例如,在一个备选实施例中,说明性虚盘创建过程的步骤610-616可改为直接创建虚盘(lun)索引节点,包括流索引节点以及为流索引节点填充属性。此外,本领域的技术人员会理解,可采用确保根据本发明技术原理、从用户角度来看的创建的这种原子性的构造的其它方法。
有利的是,虚盘显示为流索引节点对象的一个实施例,它与文件索引节点对象配合,创建具有封装特定安全性、管理及寻址(导出)信息的能力的新的特殊类型的文件存储对象。具体来说,虚盘封装限制/控制对虚盘的存取的安全性信息(如存取控制和持久保留记录),从而提供通过NAS或者SAN(块)协议的多协议存取,同时保留数据完整性。例如,可准许通过NAS协议对虚盘的读取访问,而对虚盘的读/写访问则可准许通过SAN(块)协议进行。但是,通过NAS协议对虚盘的写访问在通过块协议的存取被拒绝时是可允许的。虚盘的特殊文件类型增强了虚盘的集合的管理,用于例如库存以及从备份媒体恢复。此外,通过基础文件系统的支持,特殊类型有助于区分虚盘的某些操作、如空间保留。
以上描述针对本发明的特定实施例。但非常明显,可对所述实施例进行其它变更和修改,同时获得其部分或全部优点。例如,明确地考虑,本发明的理论可实现为其中包括具有在计算机上执行的程序指令的计算机可读媒体的软件、硬件、固件或其组合。因此,本描述只是作为实例而不是限制本发明的范围。因而,所附权利要求的目的是涵盖落入本发明真实精神和范围内的所有这类变更和修改。
权利要求
1.一种用于创建存储系统的存储操作系统所实现的文件系统的虚拟盘(虚盘)的方法,所述方法包括以下步骤将盘的若干部分的物理存储区聚集成块池;动态分配所述盘的若干部分以形成虚盘;以及根据所述文件系统的基础体系结构为所述虚盘提供可靠性保证,其中响应用户创建虚盘的请求来执行聚集、动态分配以及提供的步骤,而不需要进一步用户参与。
2.如权利要求1所述的方法,其特征在于,所述盘的若干部分是盘区。
3.如权利要求1所述的方法,其特征在于还包括以下步骤在所管理的盘之中创建的卷内组织所述文件系统的存储区;创建所述虚盘作为所述卷之一内的存储对象;以及代表所述虚盘继承与所述卷相关联的基础可靠性配置。
4.如权利要求1所述的方法,其特征在于还包括以下步骤在用户控制下扩大或收缩所述虚盘,同时保留对所述虚盘中存储的应用数据的块和网络连接存储器(NAS)多协议存取。
5.一种用于在存储系统上创建虚拟盘(虚盘)的系统,所述系统包括存储操作系统,驻留在所述存储系统的存储器中,调用支持配置成在逻辑上将信息组织成所述存储系统的卷内的虚盘的分级结构的文件系统的存储操作,每个虚盘存储在所述卷中作为包含用作存储与所述虚盘相关联的数据的主容器的逻辑单元号(lun)索引节点以及用作存储各种属性的持久存储区的至少一个流索引节点的表示,其中所述lun索引节点和至少一个相关流索引节点作为所述文件系统内的单一封装存储对象来管理。
6.如权利要求5所述的系统,其特征在于,所述至少一个流索引节点是属性索引节点。
7.如权利要求6所述的系统,其特征在于,所述lun索引节点包括数据部分,所述数据部分包括数据和引用用来存储所述数据的盘上数据块的指针其中之一。
8.如权利要求7所述的系统,其特征在于,所述lun索引节点还包括元数据部分,其中包含所述虚盘的类型和大小,所述元数据部分还包含将所述lun索引节点标识为数据容器和一个或多个流的标志流标志。
9.如权利要求6所述的系统,其特征在于,所述属性索引节点包括用作保存与所述虚盘相关联的各种命名属性的持久存储区的数据部分,所述属性包括允许所述虚盘作为lun导出到所述存储系统的客户机以及使所述虚盘能够相对于所述客户机作为单一盘对象来管理的信息。
10.如权利要求9所述的系统,其特征在于,所述属性还包括序列号、空间保留、状态和几何尺寸信息中的至少一个。
11.如权利要求5所述的系统,其特征在于,各虚盘还包括其中包含用作保存名称值对列表的持久存储区的数据部分的lunmap索引节点以及其中包含用作保存持久保留记录列表的持久存储区的数据部分的持久保留索引节点。
12.如权利要求11所述的系统,其特征在于,所述持久保留记录提供与所述虚盘有关的所有权和存取信息。
13.如权利要求5所述的系统,其特征在于还包括元数据文件中存储的按卷数据结构,它用来优化卷中的虚盘的位置确定及初始化。
14.如权利要求13所述的系统,其特征在于,所述数据结构是虚盘内容表数据结构,其中包括一个或多个含有可从表示所述虚盘的封装存储对象中存储的信息来动态重构的文件条目信息的记录。
15.如权利要求14所述的系统,其特征在于,各个记录包括含有下列各项的文件条目卷上的文件标识符;所述lun索引节点的生成编号;以及目录信息,包括含有所述虚盘的条目的父目录中的文件块编号以及父目录块中的目录条目的索引。
16.如权利要求5所述的系统,其特征在于,所述虚盘封装限制对所述虚盘的存取的安全性信息,从而提供通过网络连接存储器或存储区域网协议的多协议存取,同时保留数据完整性。
17.一种用于使创建由多协议存储设备的存储操作系统所实现的文件系统的虚拟盘(虚盘)的选择过程自动化的方法,所述方法包括以下步骤通过所述多协议存储设备的管理界面发出lun创建命令,所述lun创建命令指定虚盘的大小以及虚盘的位置的路径描述符;以及响应所述lun创建命令而创建虚盘。
18.如权利要求17所述的方法,其特征在于还包括采用与所述虚盘的几何尺寸有关的信息重新确定虚盘大小的步骤。
19.如权利要求18所述的方法,其特征在于,重新确定大小的步骤还包括用算法将所述指定虚盘大小转换成所述几何尺寸信息的步骤,所述几何尺寸信息提供关于所述虚盘可重新调整到多大的限制因素。
20.如权利要求19所述的方法,其特征在于,所述几何尺寸信息为柱面大小。
21.一种用于创建多协议存储设备的存储操作系统所实现的文件系统的虚拟盘(虚盘)的方法,所述方法包括以下步骤通过所述多协议存储设备的管理界面发出虚盘创建命令,所述虚盘创建命令指定虚盘的大小以及虚盘的位置的路径描述符;创建与所述虚盘相关联的文件索引节点,所述文件索引节点具有常规文件类型;创建流索引节点,用于存储与所述虚盘相关联的属性;为所述流索引节点填充属性;以及将所述文件索引节点的文件类型从常规转换为虚盘,从而创建虚盘。
22.如权利要求21所述的方法,其特征在于在所述发出步骤之后还包括以下步骤在所述多协议存储设备的虚拟化系统中检查所述指定的大小和路径描述符;如果所述路径描述符和大小没有检查,则中止所述虚盘的创建;以及如果检查了所述路径描述符和大小,则进入创建文件索引节点的步骤。
23.如权利要求21所述的方法,其特征在于,创建文件索引节点的步骤还包括为所述文件索引节点设置所述指定大小的步骤。
24.如权利要求21所述的方法,其特征在于,所述属性包括虚盘的状态、对于通过网络文件系统协议共享虚盘的许可以及查询信息。
25.如权利要求24所述的方法,其特征在于,所述填充步骤还包括以下步骤设置文件所有者和组标识参数,以便在通过所述网络文件系统协议导出虚盘时使用;以及设置空间保留保证,使得对虚盘的写操作不会失败。
26.一种用于使在存储设备上创建虚拟盘(虚盘)的选择过程自动化的系统,所述系统包括处理器;存储器,耦合到所述处理器,并且具有所述处理器可寻址的存储单元;至少一个盘,耦合到所述存储器和处理器;以及存储操作系统,驻留在所述存储器中,调用支持配置成在逻辑上将信息组织成所述盘中的虚盘的分级结构的文件系统的存储操作,每个虚盘存储在所述盘中作为包含用作存储与所述虚盘相关联的数据的主容器的逻辑单元号(lun)索引节点以及用作存储各种属性的持久存储区的属性索引节点的表示,其中所述lun索引节点和属性索引节点作为所述文件系统内的单一封装存储对象来管理。
27.一种用于使创建由存储设备的存储操作系统所实现的文件系统的虚拟盘(虚盘)的存储虚拟化过程自动化的方法,所述方法包括以下步骤通过所述存储设备的管理界面发出虚盘创建命令,所述虚盘创建命令指定虚盘的大小和虚盘的位置的路径描述符;创建与所述虚盘相关联的文件索引节点,所述文件索引节点具有虚盘文件类型;创建流索引节点,用于存储与所述虚盘相关联的属性;以及为所述流索引节点填充属性。
28.如权利要求27所述的方法,其特征在于,所述虚盘创建命令为lun创建命令。
29.用于在由多协议存储设备的存储操作系统所实现的文件系统上分层设置虚拟盘(虚盘)的设备,所述设备包括用于将盘的若干部分的物理存储区聚集为块池的部件;用于动态分配所述盘的若干部分以形成虚盘的部件;以及用于根据所述文件系统的基础体系结构为所述虚盘提供可靠性保证的部件,其中响应用户创建虚盘的请求来执行聚集、动态分配及提供的部件,而不需要进一步用户参与。
30.一种计算机可读媒体,包含用于由存储系统的存储操作系统所实现的文件系统的虚拟盘(虚盘)的存储虚拟化的可执行程序指令,所述可执行程序指令包含用于以下操作的程序指令通过所述存储系统的管理界面发出lun创建命令,所述lun创建命令指定虚盘的大小和虚盘的位置的路径描述符;以及响应所述lun创建命令而创建虚盘。
31.一种用于由多协议存储设备的存储操作系统所实现的文件系统上的虚拟盘(虚盘)的存储虚拟化的方法,所述方法包括以下步骤提供所述文件系统的封装存储对象,所述封装存储对象包括用于存储与所述虚盘相关联的数据的容器以及用于存储与所述虚盘相关联的属性的持久存储区;以及作为逻辑单元号来存取所述封装存储对象。
全文摘要
如图1所示,一种存储虚拟化选择技术使在多协议存储设备(100)的存储操作系统(200)所实现的文件系统的卷(150)和(160)上创建虚拟盘(虚盘)存储对象的虚拟化选择过程“自动化”。文件系统提供一种虚拟化系统,它将一组盘(130)或盘的若干部分(如盘区)的物理存储区聚集为可动态分配以形成虚盘的块池。根据其基本体系结构,文件系统还为虚盘提供可靠性保证。也就是说,文件系统在所管理的盘之中创建的卷内组织其存储区。此后,虚盘在卷内作为存储对象被创建,因而继承了与该卷相关联的基础可靠性配置。
文档编号G06F17/30GK1688981SQ03823825
公开日2005年10月26日 申请日期2003年7月28日 优先权日2002年8月9日
发明者V·拉彦, M·斯里尼瓦桑, B·帕沃夫斯基, D·B·博伦, B·H·路易斯 申请人:网络装置公司