專利名稱:通過在文件系統上將虛擬盤對象分層進行存儲虛擬化的制作方法
技術領域:
本發明涉及存儲系統,具體來說,涉及存儲系統、如多協議存儲設備上的存儲虛擬化。
背景技術:
存儲系統是提供與在諸如存儲器、帶或盤的可寫持久存儲裝置上的信息的組織有關的存儲服務的計算機。存儲系統可設置在存儲區域網(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·路易斯 申請人:網絡裝置公司