TWI798484B - 管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法 - Google Patents

管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法 Download PDF

Info

Publication number
TWI798484B
TWI798484B TW108131705A TW108131705A TWI798484B TW I798484 B TWI798484 B TW I798484B TW 108131705 A TW108131705 A TW 108131705A TW 108131705 A TW108131705 A TW 108131705A TW I798484 B TWI798484 B TW I798484B
Authority
TW
Taiwan
Prior art keywords
gui
controller
indication
host
connectivity
Prior art date
Application number
TW108131705A
Other languages
English (en)
Other versions
TW202024928A (zh
Inventor
亞隆 克萊
吉爾 布薩格洛
Original Assignee
日商鎧俠股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日商鎧俠股份有限公司 filed Critical 日商鎧俠股份有限公司
Publication of TW202024928A publication Critical patent/TW202024928A/zh
Application granted granted Critical
Publication of TWI798484B publication Critical patent/TWI798484B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Selective Calling Equipment (AREA)

Abstract

本發明揭露一種方法,其包括透過處理器賦能使用者建立虛擬子系統的組態之指示。該處理器賦能使用者得以在虛擬子系統的組態之指示中,建立與儲存裝置相關名稱域之指示、控制器之指示、主機之指示、以及控制器與名稱域之間或主機與名稱域之間的連接性之指示。該處理器賦能使用者得以選擇指示控制器與指示名稱域,選擇指示主機與指示控制器,並且在虛擬子系統的組態之指示中,建立控制器與名稱域之間的連接性之指示以及主機與控制器之間的連接性之指示。該處理器於設備中實作該虛擬子系統之組態,以令該設備得以經由控制器對該主機提供對名稱域之儲存器存取。

Description

管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法
本揭露一般相關於用於使用圖形使用者介面(GUI)在實體磁碟池上建立抽象或虛擬子系統之系統及方法。
NVM Express(NVMe)是一種允許主機軟體與非揮發性記憶體子系統(亦即,NVMe子系統)通訊之介面。與舊有單一小型電腦系統介面(SCSI)實體不同,NVMe子系統可包括多個控制器、多個名稱域以及其連接性。NVMe over Fabric(NVMe-oF)是一種用以透過網路構造將遠端裝置對本地主機公開之傳送機制,擴展到大量NVMe裝置並且擴展資料中心內的距離,可以透過該資料中心存取NVMe裝置和NVMe子系統。存在建立抽象或虛擬NVMe子系統之需求,該抽象或虛擬NVMe子系統刻劃自一池經由NVMe-oF連接性而公開之實體裝置中。
根據特定態樣,本文描述之一或多實施例涉及用於賦能使用者使用圖形使用者介面(GUI)在實體磁碟池上建立抽象或虛擬子系統之系統及方法。虛擬子系統組態GUI或執行GUI之計算系統(「虛擬子系統組態系統」)可提供建立此等具有簡易且直覺GUI API的子系統之方法。此等方法運用常見GUI操作,諸如拷貝、移動、連接、按右鍵、及拖放等。透過使用虛擬子系統組態GUI,使用者可以輕易且直覺建立NVMe實體(例如,控制器、名稱域、埠或主機)或界定其之間的連接性以提供虛擬子系統之組態。此外,虛擬子系統組態系統可提供將各實體與連接性的參數之選擇自動化的提示與協助。
在根據第一態樣之一或多實施例中,揭露一種用於提供虛擬子系統之組態的系統,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,該系統包括處理器與記憶體。該處理器經組態以產生虛擬子系統圖形使用者介面(GUI),該虛擬子系統GUI渲染第一虛擬子系統之組態的指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性。該處理器更組態以產生名稱域建立GUI,其回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第一名稱域之指示。該處理器更組態以產生控制器建立GUI,其回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第一控制器之指示,以及產生主機建立GUI,其回應於使用者對該主機建立GUI之選擇,渲染第一主機之指示。該處理器更組態以產生連接性GUI,其在該虛擬子系統GUI中渲染控制器與名稱域之間或主機與名稱域之間的連接性之指示。該處理器更組態以回應於使用者對該指示的第一控制器與該指示的第一名稱域之選擇,透過虛擬子系統GUI中的連接性GUI,渲染該第一控制器與該第一名稱域之間的連接性之指示。該處理器更組態以回應於使用者對該指示的第一主機與該指示的第一控制器之選擇,透過虛擬子系統GUI中的連接性GUI,渲染該第一主機與該第一控制器之間的連接性之指示。該處理器更組態以透過編譯虛擬子系統GUI中所渲染的該第一虛擬子系統的組態之指示,建立設備組態,以當在設備中實作該設備組態時,該設備可經由該第一控制器對該第一主機提供對第一名稱域之儲存器存取。
在根據另一態樣之一或多實施例中,揭露一種用於提供虛擬子系統之組態的方法,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,該方法包括透過電腦系統之處理器賦能該電腦系統之使用者得以建立第一虛擬子系統的組態之指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性。該方法更包括透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立與該複數個儲存裝置中一者相關聯的第一名稱域之指示。該方法更包括透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一控制器之指示。該方法更包括透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一主機之指示。該方法更包括透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立控制器與名稱域之間或主機與名稱域之間的連接性之指示。該方法更包括透過該處理器賦能該使用者以選擇該指示的第一控制器與該指示的第一名稱域,並且在該第一虛擬子系統的組態之指示中建立該第一控制器與該第一名稱域之間的連接性之指示,以及透過該處理器賦能該使用者以選擇該指示的第一主機與該指示的第一控制器,並且在該第一虛擬子系統的組態之指示中建立該第一主機與該第一控制器之間的連接性之指示。該方法更包括透過該處理器於設備中實作該第一虛擬子系統的組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
在根據另一態樣之一或多實施例中,揭露一種用於提供虛擬子系統之組態的電腦程式產品,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,該電腦程式產品包括其內有實作電腦可讀程式碼的非暫態電腦可讀儲存媒體,該程式碼經執行以執行操作。該操作包括產生虛擬子系統圖形使用者介面(GUI),該虛擬子系統GUI渲染第一虛擬子系統之組態的指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性。該操作更包括產生名稱域建立GUI,其回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第一名稱域之指示。該操作更包括產生控制器建立GUI,其回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第一控制器之指示。該操作包括產生主機建立GUI,其回應於使用者對該主機建立GUI之選擇,渲染第一主機之指示。該操作更包括產生連接性GUI,其在該虛擬子系統GUI中渲染控制器與名稱域之間或主機與名稱域之間的連接性之指示。該操作更包括回應於使用者對該指示的第一控制器與該指示的第一名稱域之選擇,透過虛擬子系統GUI中的連接性GUI,渲染該第一控制器與該第一名稱域之間的連接性之指示。該操作更包括回應於使用者對該指示的第一主機與該指示的第一控制器之選擇,透過虛擬子系統GUI中的連接性GUI,渲染該第一主機與該第一控制器之間的連接性之指示。該操作更包括於設備中實作於該虛擬子系統GUI中所渲染的該第一虛擬子系統的組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
本文所述實施例提供特定的改善,其包括簡易與直覺的圖形使用者介面(GUI)API及提供將NVMe實體與其之間連接性的參數之選擇自動化的提示與協助之方法。本文所述一或多實施例提供虛擬子系統組態GUI,其將此等NVMe實體(例如,控制器、名稱域、埠或主機)與其之間連接性(例如,控制器與名稱域之間的連接)設計以界定抽象或虛擬子系統。本文所述一或多實施例提供給使用者一直覺方法以使用虛擬子系統組態GUI在一池實體儲存裝置上刻劃出抽象或虛擬子系統。
圖1A示出根據本揭露一或多實施例的NVMe子系統之方塊圖。參照圖1A,NVMe子系統1300可包括一或多名稱域1(1330-1)至N(1330-N),一或多控制器1(1320-1)至M(1320-M),以及一或多子系統埠1(1310-1)至L(1310-L)。一或多主機1(1350-1)至K(1350-K)可與子系統1300通訊。
各主機可具有與圖3所示計算系統相似之組態。在若干實作中,主機支援NVMe,以令主機中的軟體可以透過PCI Express來與非揮發性記憶體子系統通訊。在若干實作中,主機支援NVMe over Fabrics(NVMe-oF),以令主機中的軟體可以透過除了PCI Express以外的互連來與非揮發性記憶體子系統通訊。NVMe-oF是一種傳送協定(transport protocol),其賦能主機透過網路構造或除了PCI Express以外之互連來對NVMe裝置進行遠端存取。各控制器可具有與圖3所示計算系統相似之組態。
名稱域(namespace)是可被格式化成邏輯區塊的非揮發性記憶體之量。NVMe控制器可支援多名稱域,該等名稱域透過使用名稱域ID而被參照,以令控制器可與一或多名稱域相關聯。舉例而言,參照圖1A,控制器2(1320-2)與名稱域2(1330-2)及名稱域3(1330-3)兩者相關聯。一名稱域可以與一或多控制器相關聯。舉例而言,參照圖1A,名稱域3(1330-3)與控制器2(1320-2)及控制器M(1320-M)兩者相關聯。換言之,控制器與名稱域之間的關係可以是一對一;或一對多;或者是多對多。
各子系統埠1310-1至1310-L可以是週邊組件互連(Peripheral Component Interconnect,PCI)Express埠或非PCI Express埠(非PCI Express埠之構造埠-例如,遠端直接記憶體存取(RDMA)、光纖波道(FC)、InfiniBand (IB))。一子系統埠可以與分別控制器相關聯。舉例而言,控制器可被映射到對應子系統埠之PCI函數0。一子系統埠可以與多個控制器相關聯。舉例而言,控制器可被映射到對應子系統埠之PCI函數0,以及其他三個控制器可分別被映射到相同子系統埠之三個虛擬函數(Virtual Function)。
圖1A亦示出從名稱域到主機之路由拓樸。舉例而言,經由控制器1(1320-1),名稱域1(1330-1)對主機1(1350-1)為公開。在本文所述一或多實施例中,主機可以經由NVMe-oF(NVMe over Fabric)而連接到NVMe裝置。舉例而言,NVMe-oF賦能主機與遠端磁碟之間的連接性,該遠端磁碟是支援NVMe-oF之實體NVMe磁碟。換言之,實體磁碟如具有拓樸之子系統般「將其原樣」公開給主機。
圖1B示出根據本揭露一或多實施例的虛擬NVMe子系統之方塊圖。參照圖1B,虛擬子系統可被建立或組態於儲存設備130中,該儲存設備130中佔有一池固態驅動器(SSD)132且具有構造埠(fabric port)120。在本文所述一或多實施例,儲存設備130可使用NVMe抽象層(或虛擬層)131將虛擬子系統公開,該虛擬子系統自儲存器池132刻劃出。在本文所述一或多實施例中,抽象層131支援NVMe協定轉譯。儲存器池可以是NVMe裝置或甚至是非NVMe裝置,例如式串列付接SCSI(SAS)與串列先進技術附件(SATA)。舉例而言,透過使用抽象層131之協定轉譯將SCSI指令映射到NVMe虛擬,可如同虛擬子系統對主機(101或102)般,抽象層131可將非NVMe裝置(例如,SAS)公開,以使得主機可經由構造切換器110與儲存設備130之構造埠120透過NVMe-oF傳送而被連接到非NVMe裝置。在本文所述一或多實施例中,主機101或102可具有與圖3所示計算系統相似之組態。在本文所述一或多實施例中,儲存設備130可具有與圖3所示計算系統相似之組態。在本文所述一或多實施例中,儲存設備130可包括儲存虛擬子系統之組態的組態資料庫133,以使得當由儲存設備130執行時,該組態將儲存設備130公開成由該組態所指定之虛擬子系統。
圖2示出根據本揭露一或多實施例對NVMe子系統存取控制之方塊圖。在本文所述一或多實施例中,可使用針對主機與子系統之獨特全球識別符,例如NVMe合格名稱(NQN),實作對NVMe子系統之存取控制。舉例而言,參照圖2,當主機210(或主機之使用者)登入子系統1300時(請見圖1A),主機210可傳送NVMe-oF連接指令220以取得對子系統1300之存取。主機210可以是主機1301-1到主機1350-K中任一者,如圖1A所示。在本文所述一或多實施例中,連接指令220可包括識別主機210之主機NQN 211、識別子系統1300之子系統NQN 241、以及特定控制器ID 242(於NVMe-oF標準中表示為靜態控制器模式)或指示該主機可接受對特定控制器或任何可用控制器之連接的「FFFF」(於NVMe-oF標準中表示為動態控制器模式)。在本文所述一或多實施例中,子系統1300包括登錄模組(login module),該模組在接收連接指令220後執行認證且授予主機210對特定控制器之存取或回傳任何可用控制器ID給主機(若控制器ID 242被設定成「FFFF」)。
圖3示出根據本揭露一或多實施例的計算系統之方塊圖。參照圖3,描繪例示性計算系統3200包括一或多處理器3210,該等處理器經由通訊系統3240(例如,匯流排)與記憶體3260通訊;至少一網路介面控制器3230,該等控制器具有用於連接到網路之網路介面埠(未示出);以及其他組件,例如輸入/輸出(「I/O」)組件介面3250,該介面連接到顯示器3400與輸入裝置3600。一般而言,(一或多)處理器3210會執行從記憶體接收到的指令(或電腦程式)。(一或多)處理器3210經描繪成結合,或直接連接到,快取記憶體3220。在若干實例中,指令從記憶體3260讀取到快取記憶體3220中,並且從快取記憶體3220被(一或多)處理器3210執行。
在更詳細說明中,(一或多)處理器3210可以是任何處理指令之邏輯電路,例如該指令是自記憶體3260或快取3220提取出。在許多實作中,(一或多)處理器3210為微處理器單元或特殊用途處理器。計算裝置3200可以基於任何處理器或處理器組,其能夠如本文所述操作。(一或多)處理器3210可能係單核或多核處理器。(一或多)處理器3210可能係多個獨特處理器。
記憶體3260可以是任何適用於儲存電腦可讀資料之裝置。記憶體3260可以是具有固定儲存器之裝置或用於讀取可卸式儲存媒體之裝置。實例包括所有形式之非揮發性記憶體、媒體以及記憶體裝置、半導體記憶體裝置(例如,EPROM、EEPROM、SDRAM以及快閃記憶體裝置)、磁碟、磁光碟以及光碟(例如,CD ROM、DVD-ROM、或Blu-Ray®光碟)。計算系統3200可以具有諸如記憶體3260等任何數量之記憶體裝置。
快取記憶體3220通常是一種電腦記憶體的形式,其被放置在(一或多)處理器3210的附近以用於達到快速讀取時間。在若干實作中,快取記憶體3220是(一或多)處理器3210之部分或與該處理器3210在相同晶片上。在若干實作中,有多層級之快取3220,例如,L2與L3快取層。
網路介面控制器3230管理經由網路介面(有時稱作網路介面埠)之資料交換。網路介面控制器3230處理OSI模型之實體與資料鏈接層,用於網路通訊。在若干實作中,若干網路介面控制器之任務由(一或多)處理器3210之一或多者所處理。在若干實作中,網路介面控制器3230是處理器3210之部分。在若干實作中,計算系統3200具有多個網路介面,該等網路介面由單一控制器3230所控制。在若干實作中,計算系統3200具有多個網路介面控制器3230。在若干實作中,各網路介面是用於實體網路鏈接(例如,5類(cat-5)乙太網路鏈接)之連接點。在若干實作中,網路介面控制器3230支援無線網路連接以及介面埠是無線(例如,無線電)接收器/傳輸器(例如,用於IEEE 802.11協定、近場通訊「NFC」、藍牙、ANT或任何其他無線協定之任何者)。在若干實作中,網路介面控制器3230實作一或多諸如乙太網路之網路協定。一般而言,計算裝置3200透過網路介面經由實體或無線鏈接來與其他計算裝置交換資料。網路介面可直接鏈接到另一裝置或經由中介裝置(例如,諸如集線器、橋接器、切換器或路由器等網路裝置)而連接到其他裝置,藉此將計算裝置3200連接到諸如網際網路等資料網路。
計算系統3200可包括或提供用於一或多輸入或輸出(「I/O」)裝置之介面。非限定的,輸入裝置包括鍵盤、麥克風、觸控螢幕、腳踏板、感測器、MIDI裝置、以及諸如滑鼠或軌跡球等指向裝置。非限定的,輸出裝置包括視訊顯示器、揚聲器、可更新的盲文終端、燈光、MIDI裝置、以及2-D或3-D印表機。
其他組件可包括I/O介面、外部序列裝置埠以及任何附加共處理器。舉例而言,計算系統3200可包括用於連接輸入裝置、輸出裝置、或附加記憶體裝置(例如,可攜式快閃驅動器或外部媒體驅動器)之介面(例如,通用序列匯流排(USB)介面)。在若干實作中,計算裝置3200包括諸如共處理器等附加裝置,該共處理器例如可以是數學共處理器,其可輔助處理器3210完成高精準或複雜之計算。
在本文所述一或多實施例中,為了在儲存器池上建立或界定虛擬子系統,使用者可指定或提供下述至少一者:(1)名稱域之數量、(2)名稱域之容量、(3)控制器之數量、(4)控制器與名稱域之間的連接性、(5)主機與子系統之間的存取控制、(6)名稱域之失敗域(例如名稱域橫跨(span)幾個磁碟)、(7)子系統之失敗域(例如名稱域橫跨幾個磁碟)、(8)名稱域之服務層級協議(SLA)與服務品質(QoS)、或(9)子系統之SLA與QoS。將在下文中參照圖4A-6更加詳細描述根據本揭露一或多實施例的用於在儲存器池上建立虛擬子系統之系統與方法。
圖4A-4F示出根據本揭露一或多實施例用於建立虛擬NVMe實體之GUI的例示性操作。在本文所述一或多實施例中,虛擬子系統組態系統可建立或界定可在複數個主機(例如,圖1A中主機1-N)與複數個儲存裝置(例如圖1B中該池SSD 132)之間提供連接性的虛擬子系統之組態。在本文所述一或多實施例中,虛擬子系統組態系統可以是圖3所示之計算系統3200。在本文所述一或多實施例中,虛擬子系統組態系統可以是圖1B所示之NVMe主機101或102。在本文所述一或多實施例中,電腦程式產品可建立或界定可在複數個主機與複數個儲存裝置之間提供連接性的虛擬子系統之組態。舉例而言,電腦程式產品可包括數GUI API,該等GUI API可建立或界定可在複數個主機與複數個儲存裝置之間提供連接性的虛擬子系統之組態。在若干實作中,該電腦程式產品可包括其內有實作電腦可讀程式碼的非暫態電腦可讀儲存媒體,該程式碼經執行以執行操作,以建立或界定虛擬子系統之組態。
參照圖4A,虛擬子系統組態系統產生(或建立或者界定)虛擬子系統圖形使用者介面(GUI)430。在本文所述一或多實施例中,虛擬子系統組態系統(例如,圖3中計算系統3200)可於顯示器(例如,圖3中顯示器3400)中顯示「建立子系統」按鈕410與儲存裝置GUI 441-449。在本文所述一或多實施例中,儲存裝置GUI包括複數個儲存裝置(例如,SSD 1(441)至8(448))之指示,以及該複數個裝置之總容量之指示(例如,總容量449之指示)。
參照圖4A,若使用者點擊「建立子系統」按鈕410,則系統可建立新的虛擬子系統(例如,稱作「SB1」、「SB2」、「SB3」、或「SB4」之虛擬子系統)並且顯示對應(虛擬)子系統按鈕(例如,「SB1」按鈕421、「SB2」按鈕422、「SB3」按鈕423、「SB4」按鈕424之一)與對應虛擬子系統GUI 430。在本文所述一或多實施例中,若使用者點擊子系統按鈕之一,則系統可顯示或產生對應虛擬子系統GUI 430,以及複數個實體建立GUI,其包括主機建立GUI(例如,「新增主機」按鈕450)、埠建立GUI(例如,「新增埠」按鈕460)、控制器建立GUI(例如,「新增控制器」按鈕470)、以及名稱域建立GUI(例如,「新增名稱域」按鈕480)。該系統亦可顯示「OK」按鈕490與「取消」按鈕491。舉例而言,如圖4A所示,若使用者點擊子系統按鈕421(「SB1」),則系統顯示對應於虛擬子系統「SB1」之虛擬子系統GUI 430、該複數個新增按鈕450-480、OK按鈕490、以及取消按鈕491。在本文所述一或多實施例,系統可顯示文字431與文字432,其個別指示正被顯示的虛擬子系統之名稱與NQN。
在本文所述一或多實施例中,參照圖4A,虛擬子系統組態系統可顯示儲存裝置GUI 441-449,其可渲染該複數個儲存裝置的總體可用儲存空間之指示。在本文所述一或多實施例中,儲存裝置GUI包括複數個儲存裝置(例如,SSD 1(441)至8(448))之指示,以及該複數個裝置之總容量之指示(例如,總容量449之指示)。該複數個儲存裝置441-448之指示可包括各SSD之圖形指示(例如,成圓柱體),其具有當前儲存器使用(例如,為圓柱體的陰影體積)與當前可用儲存空間(圓柱體的空白體積)之圖形指示。舉例而言,如圖4A所示,儲存裝置443之當前儲存器使用被指示作小於儲存裝置444之當前儲存器使用。在本文所述一或多實施例中,該複數個裝置之總容量的指示為條(bar)449,其示出總分配(例如,條449之總面積)與可用空間(例如,條449之未上色面積)。在本文所述一或多實施例中,系統可以是NVMe主機(例如,圖1B中101或102)且透過NVMe抽象層131使用協定映射(參見圖1B),獲得各儲存裝置之當前磁碟使用。舉例而言,系統可對SCSI SSD(例如,圖1B中SSD 132)發出在SCSI協定中被映射到「讀取容量」指令之NVMe指令,並且透過將從SCSI儲存裝置回傳結果轉譯成NVMe格式,以獲得各儲存裝置之當前磁碟使用。系統可以類似方式獲得該複數個裝置之總容量。
在本文所述一或多實施例中,若使用者雙重點擊現存子系統按鈕421-424中一者,則系統示出編輯GUI(未示出),該編輯GUI包括用於輸入所選虛擬子系統之名稱與NQN的輸入介面,以令使用者可以編輯所選虛擬子系統之名稱與NQN。
參照圖4B,回應於使用者對控制器建立GUI(例如,「新增控制器」按鈕470)之選擇,控制器建立GUI可在虛擬子系統GUI 430中渲染第一控制器之指示。舉例而言,若使用者點擊「新增控制器」按鈕470,則系統可在虛擬子系統GUI 430中渲染與第一控制器參數相關的輸入主選單,包括指示「數量」之文字標記471-1、輸入介面471-2、「OK」按鈕472、以及「取消」按鈕473。輸入介面可以是文字欄位,或諸如下拉列表、勾選欄、單選鈕等其他輸入介面。舉例而言,如圖4B所示,使用者可於輸入介面471-2中指定控制器之數量,以將其新增到虛擬子系統「SB1」之組態(預設值為1)。當「OK」按鈕472被按下時,所選數量之控制器被新增到虛擬子系統「SB1」之組態中,以及新增控制器之圖形指示(例如,圖4C中指示「控制器1」之按鈕433)被渲染於虛擬子系統GUI 430中。當按下「取消」按鈕473時,所選數量之控制器的新增被取消。在本文所述一或多實施例中,諸如第一控制器之每秒輸入/輸出(IOPS)或頻寬等更進階參數可以被指定,以令使用者可以指定欲新增控制器之潛在或最大性能。在本文所述一或多實施例中,系統可提供將第一控制器的參數之選擇自動化的提示與協助(例如,可用控制器之數量、頻寬或IOPS)。舉例而言,系統可發出NVMe識別指令,以獲得儲存設備(例如圖1B中儲存設備130)中可用控制器之數量、頻寬或IOPS,並且使用該資訊以提供將第一控制器的有效參數之選擇自動化的提示與協助(例如,基於從目標儲存設備獲得之實體資訊顯示提示或設定預設值)。
在本文所述一或多實施例中,回應於使用者對控制器建立GUI之選擇,控制器建立GUI可在虛擬子系統GUI中渲染除了第一控制器以外另一控制器之指示。舉例而言,參照圖4B,在按下「OK」按鈕472並且(造成)新增第一控制器之後,使用者可再次點擊「新增控制器」按鈕470以新增第二控制器到虛擬子系統「SB1」之組態。相應地,系統可顯示與第二控制器參數相關的相同輸入主選單,包括指示「數量」之文字標記471-1、輸入介面471-2、「OK」按鈕472、以及「取消」按鈕473。
在本文所述一或多實施例中,參照圖4B,系統可產生或顯示埠建立GUI(例如,「新增埠」按鈕460)。回應於使用者對埠建立GUI之選擇,埠建立GUI可在虛擬子系統GUI 430中渲染第一虛擬子系統的第一埠之指示(未示出)。舉例而言,若使用者點擊「新增埠」按鈕460,則系統可在虛擬子系統GUI 430中渲染與第一埠參數相關的輸入主選單,包括與文字標記471-1相似之文字標記、與輸入介面471-2相似之輸入介面、與「OK」按鈕472相似之「OK」按鈕、以及與「取消」按鈕473相似之「取消」按鈕。在本文所述一或多實施例中,當按下「新增埠」按鈕450時會允許使用者可以設定多個實體埠,前提是該等埠為可用。舉例而言,系統可將預設埠設定成乙太網路埠。回應於使用者對埠建立GUI之選擇,埠建立GUI可在虛擬子系統GUI中渲染除了第一埠以外另一埠之指示。
參照圖4C,系統產生或顯示名稱域建立GUI(例如,「新增名稱域」按鈕480)。回應於使用者對名稱域建立GUI之選擇,名稱域建立GUI可在該虛擬子系統GUI 430中渲染與該複數個儲存裝置中一者相關聯的第一名稱域之指示。舉例而言,若使用者點擊「新增名稱域」按鈕480,則系統可在虛擬子系統GUI 430中渲染與第一名稱域參數相關的輸入主選單,包括:(1)指示「數量」之文字標記481-1與對應輸入介面481-2、(2)指示「容量」之文字標記482-1與對應輸入介面482-2、(3)指示「優先度」之文字標記483-1與對應輸入介面483-2、(4)指示「DWPD」之文字標記484-1與對應輸入介面484-2、(5)指示「磁碟跨距(Disk Span)」之文字標記485-1與對應輸入介面485-2、「OK」按鈕486、以及「取消」按鈕487。如圖4C所示,為了要新增(一或多)第一名稱域到虛擬子系統「SB1」之組態,使用者可指定下述者:(1)在輸入介面481-2中指定要新增的名稱域之數量(預設值為1)、(2)在輸入介面482-2中指定(一或多)名稱域之容量(例如,單位為位元組)、(3)在輸入介面483-2中指定(一或多)名稱域之優先度(預設值為「正常」)、(4)在輸入介面484-2中指定(一或多)名稱域的工作量(例如,在DWPD(每日的驅動器寫入,drive writes per day)中,預設值為1 DWPD)、以及在輸入介面485-2中指定磁碟跨距為(一或多)名稱域的失敗域(預設值為1磁碟)。當「OK」按鈕486被按下時,所選數量之具有指定參數的(一或多)名稱域被新增到虛擬子系統「SB1」之組態中,以及(一或多)新增名稱域之圖形指示(例如,圖4D中指示「名稱域1」之按鈕434)被渲染於虛擬子系統GUI 430中。當按下「取消」按鈕487時,所選數量之(一或多)名稱域的新增被取消。
在本文所述一或多實施例中,諸如(一或多)第一名稱域之每秒輸入/輸出(IOPS)或頻寬、服務層級協議(SLA)、服務品質(QoS)等附加參數可以被指定,以令使用者可以指定欲新增(一或多)名稱域之潛在或最大性能。在本文所述一或多實施例中,系統可提供將(一或多)第一名稱域的參數之選擇自動化的提示與協助(例如,可用名稱域之數量、容量、優先度、工作量、磁碟跨距、QoS、SLA、頻寬或IOPS)。舉例而言,系統可發出NVMe識別指令,以獲得儲存設備(例如圖1B中儲存設備130)中可用名稱域之數量、容量、優先度、工作量、磁碟跨距、QoS、SLA、頻寬或IOPS,並且使用該資訊以提供將(一或多)第一名稱域的有效參數之選擇自動化的提示與協助(例如,基於從目標儲存設備獲得之實體資訊顯示提示或設定預設值)。
回應於使用者對名稱域建立GUI之選擇,名稱域建立GUI可在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第二名稱域之指示。舉例而言,參照圖4C,在按下「OK」按鈕486並且(造成)新增(一或多)第一名稱域之後,使用者可再次點擊「新增名稱域」按鈕480以新增第二名稱域到虛擬子系統「SB1」之組態。相應地,系統可顯示與該第二名稱域參數相關的相同輸入主選單,包括文字標記481-1至485-1、輸入介面481-2至485-2、「OK」按鈕486、以及「取消」按鈕487。
參照圖4D,系統產生或顯示主機建立GUI(例如,「新增主機」按鈕450)。回應於使用者對主機建立GUI之選擇,主機建立GUI可在虛擬子系統GUI 430中渲染第一主機之指示。在本文所述一或多實施例中,當按下「新增主機」按鈕450時會賦能使用者可以界定允許主機或存取控制列表(ACL),用於連接主機與控制器。舉例而言,若使用者點擊「新增主機」按鈕450,則系統可在虛擬子系統GUI 430中渲染與第一主機參數相關的輸入主選單,包括指示「NQN」之文字標記451-1、輸入介面451-2、「OK」按鈕452、以及「取消」按鈕453。如圖4D所示,使用者可於輸入介面451-2中指定第一主機之NQN(或任何全球獨特識別符),以將第一主機新增到虛擬子系統「SB1」之組態。當「OK」按鈕452被按下時,第一主機被新增到虛擬子系統「SB1」之組態中,以及新增主機之圖形指示(例如,圖4E中指示「主機1」之按鈕455)被渲染於虛擬子系統GUI 430中。當按下「取消」按鈕453時,第一主機的新增被取消。
回應於使用者對主機建立GUI之選擇,主機建立GUI可在虛擬子系統GUI 430中渲染除了第一主機以外其他主機之指示。舉例而言,參照圖4D,在按下「OK」按鈕452並且(造成)新增第一主機之後,使用者可再次點擊「新增主機」按鈕450以新增第二主機到虛擬子系統「SB1」之組態。相應地,系統可顯示與該第二主機參數相關的相同輸入主選單,包括指示「NQN」的文字標記451-1、輸入介面451-2、「OK」按鈕452、以及「取消」按鈕453。
參照圖4E,在本文所述一或多實施例中,於虛擬子系統GUI 430中使用者可對實體點擊右鍵用於各種操作。舉例而言,在對指示「控制器1」之控制器按鈕433點擊右鍵後,系統可渲染或產生或者開啟包括刪除按鈕433-1之主選單。使用者可按下刪除按鈕433-1以從虛擬子系統「SB1」之組態刪除「控制器1」(並且亦從虛擬子系統GUI 430刪除)。
參照圖4F,在本文所述一或多實施例中,在對指示「名稱域1」之名稱域按鈕434點擊右鍵後,系統可渲染或產生或者開啟包括下述者之主選單:(1)刪除按鈕434-1、(2)拷貝按鈕434-2、(3)剪切按鈕434-3、(4)複製按鈕434-4、(5)編輯按鈕434-5、以及(6)屬性按鈕434-6。使用者可按下此等按鈕以:(1)從虛擬子系統「SB1」之組態刪除「名稱域1」(並且亦從虛擬子系統GUI 430刪除)、(2)拷貝或(3)剪切「名稱域1」、(4)複製該經拷貝或剪切的「名稱域1」、(5)編輯「名稱域1」之參數,如同圖4C中參數481-1至485-1般、以及(6)新增「名稱域1」之附加屬性,諸如QoS、SLA、頻寬或IOPS。
圖5A-5B示出根據本揭露一或多實施例用於建立虛擬NVMe實體之間的連接性之GUI的例示性操作。在本文所述一或多實施例,虛擬子系統組態系統可產生連接性GUI(例如,在兩個所選按鈕之間畫簡單的線),其可在虛擬子系統GUI 430中渲染控制器與名稱域之間連接性的指示(例如,圖5A中,線435連接「控制器1」按鈕433與「名稱域1」按鈕434)或主機與名稱域之間連接性的指示(例如,圖5B中,線436連接「控制器1」按鈕433與「主機1」按鈕455)。
參照圖5A,回應於使用者對指示的第一控制器與指示的第一名稱域之選擇,連接性GUI(例如,在兩個所選按鈕之間畫簡單的線)可以在虛擬子系統GUI 430中渲染該第一控制器與該第一名稱域之間的連接性之指示。舉例而言,使用者可點擊「控制器1」按鈕433或「名稱域1」按鈕434中一者,並使用「拖放(drag and drop)」自其畫出線435到「控制器1」按鈕433或「名稱域1」按鈕434中另一者。使用者可將任何控制器連接到任何名稱域,前提是該等控制器或名稱域被渲染於虛擬子系統GUI 430中。在本文所述一或多實施例中,系統可提供GUI以指定控制器與名稱域之間新增連接之參數(例如,頻寬最小值/最大值或每秒輸入/輸出(IOPS))。舉例而言,在對新增連接線點擊右鍵後,系統可開啟指定頻寬最小值/最大值或IOPS之輸入主選單(未示出)。在本文所述一或多實施例中,指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條渲染的線的粗細度可大於指示具有比第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條渲染的線的粗細度。舉例而言,若連接第一對控制器與名稱域之間的第一條線比連接第二對控制器與名稱域之間的第二條線更粗,則該第一對控制器與名稱域之間連接之頻寬或IOPS大於該第二對控制器與名稱域之間連接之頻寬或IOPS。在本文所述一或多實施例,多條線可用以指示一連接的不同量之頻寬或IOPS。舉例而言,細線與粗線可用以指示分別連接(相對)小與大量之頻寬或IOPS。在本文所述一或多實施例中,系統可提供將控制器與名稱域間連接的參數(例如,頻寬之最小值/最大值或每秒輸入/輸出(IOPS))之選擇自動化的提示與協助。舉例而言,系統可發出NVMe識別指令,以獲得儲存設備(例如圖1B中儲存設備130)中控制器與名稱域之間可用連接之頻寬或IOPS,並且使用該資訊以提供將該連接(例如,圖5A中的連接435)的有效參數之選擇自動化的提示與協助(例如,基於從目標儲存設備獲得之實體資訊顯示提示或設定預設值)。
參照圖5B,回應於使用者對指示的第一主機與指示的第一控制器之選擇,連接性GUI(例如,在兩個所選按鈕之間畫簡單的線)可以在虛擬子系統GUI 430中渲染該第一主機與該第一控制器之間的連接性之指示。舉例而言,使用者可點擊「主機1」按鈕455或「控制器1」按鈕433中一者,並使用「拖放(drag and drop)」自其畫出線436到「主機1」按鈕455或「控制器1」按鈕433中另一者。使用者可將任何主機連接到任何控制器,前提是該等主機或控制器被渲染於虛擬子系統GUI 430中。在本文所述一或多實施例中,系統可提供GUI以指定主機與控制器之間新增連接之參數(例如,頻寬最小值/最大值或每秒輸入/輸出(IOPS))。舉例而言,在對新增連接線點擊右鍵後,系統可開啟指定頻寬最小值/最大值或IOPS之輸入主選單(未示出)。在本文所述一或多實施例中,指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條渲染的線的粗細度可大於指示具有比第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條渲染的線的粗細度。舉例而言,若連接第一對主機與控制器之間的第一條線比連接第二對主機與控制器之間的第二條線更粗,則該第一對主機與控制器之間連接之頻寬或IOPS大於該第二對主機與控制器之間連接之頻寬或IOPS。在本文所述一或多實施例中,使用者可將一主機連接到一控制器,藉此產生允許該主機對該控制器存取之組態。
圖6示出根據本揭露一或多實施例用於基於所建立虛擬NVMe實體建立設備組態之GUI。在本文所述一或多實施例中,在NVMe實體與期間連接性被新增到虛擬子系統組態之後,虛擬子系統組態系統可透過編譯虛擬子系統GUI 430中所渲染的第一虛擬子系統組態的指示來建立或產生設備組態。舉例而言,在如圖6所示般將主機1、控制器1與名稱域1、及其之間連接性(例如,控制器1與名稱域1之間連接性、以及主機1與控制器1之間連接性)新增到虛擬子系統之組態中之後,使用者可點擊「OK」按鈕490以建立或產生設備組態。在按下「OK」按鈕490後,系統可編譯虛擬子系統GUI 430中所渲染的第一虛擬子系統組態的指示。
在本文所述一或多實施例中,在編譯虛擬子系統GUI 430中所渲染的第一虛擬子系統組態的指示時,系統可驗證該所指示之第一虛擬子系統的組態。舉例而言,參照圖6,透過檢查儲存設備(例如,圖1B中儲存設備130)中是否有任何滿足控制器1之參數的控制器為可用的,系統可驗證控制器1。在本文所述一或多實施例中,系統可以是NVMe主機(例如,圖1B中主機101或102),其可發出NVMe識別指令到儲存設備(例如,設備130)以檢查該儲存設備中控制器1之可用性。透過檢查儲存設備(例如,圖1B中儲存設備130)中是否有任何滿足名稱域1之參數(例如,圖4C中所示數量、容量、優先度、工作量、磁碟跨距)的名稱域為可用的,系統亦可驗證名稱域1。在本文所述一或多實施例中,系統可發出NVMe識別指令到儲存設備(例如,設備130)以檢查該儲存設備中名稱域1之可用性(例如,檢查是否存在此等名稱域且其沒有被分配到任何控制器)。透過檢查主機1之參數(例如,圖4D中所示NQN)是否為有效的,系統亦可驗證主機1。若該組態包括埠,則系統可發出NVMe識別指令到儲存設備(例如,設備130)以檢查該儲存設備中該埠之可用性。透過檢查儲存設備(例如,圖1B中儲存設備130)中是否有任何滿足連接435之參數(例如,頻寬或IOPS)的連接為可用的以及檢查名稱域1是否已附加到控制器1,系統可驗證控制器1與名稱域1之間的連接(由線435所指示)。系統可發出NVMe識別指令到儲存設備(例如,設備130)以檢查儲存設備中此等連接之可用性。系統可發出NVMe名稱域附加指令到儲存設備,以檢查名稱域1是否已附加到控制器1。透過檢查主機1是否已連接到控制器1,系統亦可驗證主機1與控制器1之間的連接(由線436所指示)。系統可發出NVMe識別指令到儲存設備,以檢查主機1是否已連接到控制器1。
在本文所述一或多實施例中,當如圖6所示設備組態經實作於儲存設備中時,設備可經由控制器1對主機1提供對名稱域1之儲存器存取。在按下「OK」按鈕490後,若系統偵測到任何組態/設計錯誤時,系統可提示適當警示並等待校正。在按下「取消」按鈕491後,當前虛擬子系統(例如,虛擬子系統「SB1」)之組態可以被取消或當前虛擬子系統可以被刪除。在按下「OK」按鈕490後,若系統成功驗證虛擬子系統之組態GUI中所有的實體以及其之間的連接性(亦即,確認其中無組態/設計錯誤),則系統可產生用於目標儲存設備(例如,設備130)之設備組態。在本文所述一或多實施例中,設備組態可包括NVMe指令或NVMe-oF指令,其實作虛擬子系統GUI 430中所渲染的第一虛擬子系統之組態。在本文所述一或多實施例中,設備組態可以被儲存在儲存設備中的資料庫(例如,圖1B中設備130裡的組態資料庫133)裡。舉例而言,在建立或編輯子系統組態之後,按下OK按鈕會「編譯」與格式化子系統之組態用於目標儲存設備、產生設備組態、以及將該設備組態儲存於目標儲存設備之組態資料庫中。若儲存在組態資料庫中的設備組態被儲存設備130執行,將可將儲存設備130公開成如該組態所指定之虛擬子系統。
在本文所述一或多實施例中,設備組態可以是組態腳本或檔案(文字或二進制),其可被目標儲存設備執行,且包括NVMe指令或NVMe-oF指令,其實作虛擬子系統GUI 430中所渲染的第一虛擬子系統之組態。若組態腳本被儲存設備130執行,將可將儲存設備130公開成如該組態所指定之虛擬子系統。舉例而言,在ˋ按下「OK」按鈕490後,若系統成功確認沒有組態/設計錯誤並且成功產生組態腳本,則系統可顯示訊息492,其指示「產生組態腳本...點擊此處以下載」。使用者可透過點擊嵌入於訊息492中的下載鏈接493,以下載為檔案型態之所產生組態腳本。
圖7示出根據本揭露一或多實施例用於建立虛擬NVMe實體的方法。在包括處理器與記憶體之虛擬子系統組態系統(例如,圖1B中主機101或102,或者圖3中計算系統3200)中,該方法可提供可在複數個主機(例如,圖1A中主機1-K)與複數個儲存裝置(例如圖1B中該等SSD 132)之間提供連接性的虛擬子系統之組態。概括而言,方法包括步驟702-712。步驟702:系統賦能電腦系統之使用者得以建立第一虛擬子系統之組態的指示。步驟704:系統賦能使用者得以建立第一控制器的指示。步驟706:系統賦能使用者得以建立第一名稱域的指示。步驟708:系統賦能使用者得以建立第一主機的指示。步驟710:系統賦能使用者得以建立控制器與名稱域之間或主機與名稱域之間之連接性的指示。步驟712:系統於設備中實作第一虛擬子系統之組態。其他實施例包含比圖7所示者更多或更少的步驟。
更詳細而言,在步驟702時,系統可賦能電腦系統(例如,圖1B中主機101或102,或者圖3中計算系統3200)之使用者得以建立第一虛擬子系統(例如,圖4A中虛擬系統「SB1」)之組態(例如,圖4A中虛擬子系統GUI 430)之指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性。系統可賦能該使用者以在該第一虛擬子系統的組態之指示中建立該複數個儲存裝置之指示(例如,圖4A中的SSD 441-448)。各儲存裝置之指示可包括各儲存裝置中可用儲存空間(例如,圖4A中SSD 441之空白體積)的指示。該複數個儲存裝置之指示可包括該複數個儲存裝置中總體可用儲存空間(例如,圖4A中條449的總容量)的指示。
在步驟704,系統可賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一控制器之指示(例如,圖4C中的控制器1(433))。系統可賦能使用者得以建立第二控制器的指示。
在步驟706,系統可賦能該使用者以在該第一虛擬子系統的組態之指示中建立與該複數個儲存裝置中一者相關聯的第一名稱域之指示(例如,圖4D中的名稱域1(434))。系統可賦能使用者得以建立與該複數個儲存裝置中一者相關聯的第二名稱域的指示。
在步驟708,系統可賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一主機之指示(例如,圖4E中的主機1(455))。系統可賦能使用者得以建立第二主機的指示。
在步驟710,系統可賦能該使用者以在該第一虛擬子系統的組態之指示中建立控制器(例如,圖5A中控制器1(433))與名稱域(例如,圖5A中名稱域1(434))之間連接性之指示(例如,圖5A中的連接線435),或建立主機(例如,圖5B中主機1(455))與控制器(例如,圖5B中控制器1(433))之間連接性之指示(例如,圖5B中的連接線436)。
在步驟712,系統可於設備(例如,圖1B中儲存設備130)中實作該第一虛擬子系統的組態,以令該設備得以經由該第一控制器(例如,圖6中控制器1(433))對該第一主機(例如,圖6中主機1(455))提供對該第一名稱域(例如,圖6中名稱域1(434))之儲存器存取。
圖8示出根據本揭露一或多實施例用於建立虛擬NVMe實體之間的連接性(例如,圖5A中連接線435或圖5B中連接線436)的方法。概括而言,方法包括步驟802-804。在步驟802,系統賦能使用者選擇指示的第一控制器與指示的第一名稱域,並建立該第一控制器與該第一名稱域之間的連接性之指示。在步驟804,系統賦能使用者選擇指示的第一主機與指示的第一控制器,並建立該第一主機與該第一控制器之間的連接性之指示。其他實施例包含比圖8所示者更多或更少的步驟。
更詳細而言,在步驟802,系統可賦能使用者選擇指示的第一控制器(例如,圖5A中控制器1(433))與指示的第一名稱域(例如,圖5A中名稱域1(434)),並在該第一虛擬子系統之組態的指示中建立該第一控制器與該第一名稱域之間的連接性之指示(例如,圖5A中連接線435)。該第一控制器與該第一名稱域之間的連接性之指示可包括在第一控制器之指示與第一名稱域之指示之間的一條線。指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條線的粗細度可大於指示具有比第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條線的粗細度。
在步驟804,系統可賦能使用者選擇指示的第一主機(例如,圖5B中主機1(435))與指示的第一控制器(例如,圖5B中控制器1(433)),並在該第一虛擬子系統之組態的指示中建立該第一主機與該第一控制器之間的連接性之指示(例如,圖5B中連接線436)。該第一主機與該第一控制器之間的連接性之指示可包括在第一主機之指示與第一控制器之指示之間的一條線。指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條線的粗細度可大於指示具有比第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條線的粗細度。
圖9示出根據本揭露一或多實施例用於基於所建立虛擬NVMe實體(例如,圖6中的控制器1(433)、名稱域1(434)與主機1(455))建立設備組態之方法。概括而言,方法包括步驟902-904。在步驟902,系統建立設備組態。在步驟904,系統將該建立的設備組態實作於設備中。其他實施例包含比圖9所示者更多或更少的步驟。
更詳細而言,在步驟902,系統可於設備(例如,圖1B中儲存設備130)中實作該第一虛擬子系統(例如,圖6中虛擬子系統「SB1」)的組態,以令該設備得以經由該第一控制器(例如,圖6中控制器1(433))對該第一主機(例如,圖6中主機1(455))提供對該第一名稱域(例如,圖6中名稱域1(434))之儲存器存取。在實作第一虛擬子系統之組態中,系統可透過編譯第一虛擬子系統組態的指示來建立設備組態。
在步驟904,系統可於設備(例如,圖1B中儲存設備130)中實作該建立的設備組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
雖然已透過參照本揭露特定實施例來描述與說明本揭露,惟此等說明與描述並非旨在是限制性。在該技術領域中具有通常知識者應能瞭解可對其做出各種改變與等效物可被替代,而不會脫離由所附申請專利範圍所涵蓋實施例之範疇。描繪圖式並不必然按比例繪製。由於生產處理和公差的原因,在本揭示中的藝術表現形式與實際設備之間可能存在區別。可能存在並未被明確說明之本揭露的其他實施例。本說明書與圖式應被理解為係說明性的,而非限制性的。為了適應特定情況、材料、物質組成、方法或處理,可對本揭露之標的、精神與範疇作出調整。所有此等調整旨在包括於所附申請專利範圍的範疇內。儘管已經參考以特定順序執行的特定操作而描述了本文揭示的方法,但是應當理解,在不脫離本揭露的教示之前提下,可以將此等操作進行組合、劃分或重新排序以形成一等效方法。據此,除非本文中明確指示,否則本操作之順序與群組為非限定的。
1300:NVMe子系統 1310-1:子系統埠 1310-2:子系統埠 1310-L:子系統埠 1320-1:控制器 1320-2:控制器 1320-M:控制器 1330-1:名稱域 1330-2:名稱域 1330-3:名稱域 1330-N:名稱域 1350-1:主機 1350-2:主機 1350-K:主機 101:主機 102:主機 110:構造切換器 120:構造埠 130:儲存設備 131:抽象層 132:固態驅動器 133:組態資料庫 210:主機 211:主機NQN 220:NVMe-oF連接指令 230:登錄模組 241:子系統NQN 242:控制器ID 3200:計算系統 3210:處理器 3220:快取記憶體 3230:網路介面控制器 3240:通訊系統 3250:輸入/輸出(「I/O」)組件介面 3260:記憶體 3400:顯示器 3600:輸入裝置 410:「建立子系統」按鈕 421:「SB1」按鈕 422:「SB2」按鈕 423:「SB3」按鈕 424:「SB4」按鈕 430:虛擬子系統GUI 431:文字 432:文字 433:「控制器1」按鈕 433-1:刪除按鈕 434:「名稱域1」按鈕 434-1:刪除按鈕 434-2:拷貝按鈕 434-3:剪切按鈕 434-4:複製按鈕 434-5:編輯按鈕 434-6:屬性按鈕 435:線 436:線 441:儲存裝置GUI 442:儲存裝置GUI 443:儲存裝置GUI 444:儲存裝置GUI 445:儲存裝置GUI 446:儲存裝置GUI 447:儲存裝置GUI 448:儲存裝置GUI 449:儲存裝置GUI 450:「新增主機」按鈕 451-1:文字標記 451-2:輸入介面 452:「OK」按鈕 453:「取消」按鈕 455:「主機」之按鈕 460:「新增埠」按鈕 470:「新增控制器」按鈕 471-1:文字標記 471-2:輸入介面 472:「OK」按鈕 473:「取消」按鈕 480:「新增名稱域」按鈕 481-1:文字標記 481-2:輸入介面 482-1:文字標記 482-2:輸入介面 483-1:文字標記 483-2:輸入介面 484-1:文字標記 484-2:輸入介面 485-1:文字標記 485-2:輸入介面 486:「OK」按鈕 487:「取消」按鈕 490:「OK」按鈕 491:「取消」按鈕 492:訊息 493:下載鏈接 702:步驟 704:步驟 706:步驟 708:步驟 710:步驟 712:步驟 802:步驟 804:步驟 902:步驟 904:步驟
圖1A示出根據本揭露一或多實施例的NVMe子系統之方塊圖。
圖1B示出根據本揭露一或多實施例的虛擬NVMe子系統之方塊圖。
圖2示出根據本揭露一或多實施例對NVMe子系統存取控制之方塊圖。
圖3示出根據本揭露一或多實施例的計算系統之方塊圖。
圖4A-4F示出根據本揭露一或多實施例用於建立虛擬NVMe實體之GUI的例示性操作。
圖5A-5B示出根據本揭露一或多實施例用於建立虛擬NVMe實體之間的連接性之GUI的例示性操作。
圖6示出根據本揭露一或多實施例用於基於所建立虛擬NVMe實體建立設備組態之GUI。
圖7示出根據本揭露一或多實施例用於建立虛擬NVMe實體的方法。
圖8示出根據本揭露一或多實施例用於建立虛擬NVMe實體之間的連接性的方法。
圖9示出根據本揭露一或多實施例用於基於所建立虛擬NVMe實體建立設備組態之方法。
1300:NVMe子系統
1310-1:子系統埠
1310-2:子系統埠
1310-L:子系統埠
1320-1:控制器
1320-2:控制器
1320-M:控制器
1330-1:名稱域
1330-2:名稱域
1330-3:名稱域
1330-N:名稱域
1350-1:主機
1350-2:主機
1350-K:主機

Claims (20)

  1. 一種用於提供虛擬子系統之組態的電腦程式產品,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,其中該電腦程式產品包括其內有實作電腦可讀程式碼的非暫態電腦可讀儲存媒體,該程式碼經執行以執行操作,該操作包含:產生虛擬子系統圖形使用者介面(GUI),該虛擬子系統GUI渲染第一虛擬子系統之組態的指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性;產生名稱域建立GUI,其回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第一名稱域之指示;產生控制器建立GUI,其回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第一控制器之指示;產生主機建立GUI,其回應於使用者對該主機建立GUI之選擇,渲染第一主機之指示;產生連接性GUI,其在該虛擬子系統GUI中渲染控制器與名稱域之間或主機與名稱域之間的連接性之指示;回應於使用者對該指示的第一控制器與該指示的第一名稱域之選擇,透過該虛擬子系統GUI中的該連接性GUI,渲染該第一控制器與該第一名稱域之間的連接性之指示; 回應於使用者對該指示的第一主機與該指示的第一控制器之選擇,透過該虛擬子系統GUI中的該連接性GUI,渲染該第一主機與該第一控制器之間的連接性之指示;以及於設備中實作於該虛擬子系統GUI中所渲染的該第一虛擬子系統之組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
  2. 如申請專利範圍第1項所述的電腦程式產品,其進一步包含:產生儲存裝置GUI,其渲染該複數個儲存裝置之指示,其中各儲存裝置之指示包括各儲存裝置中可用儲存空間的指示,其中,該儲存裝置GUI渲染該複數個儲存裝置的總體可用儲存空間之指示。
  3. 如申請專利範圍第1項所述的電腦程式產品,其進一步包含:產生埠建立GUI,其回應於使用者對該埠建立GUI之選擇,在該虛擬子系統GUI中渲染該第一虛擬子系統的第一埠之指示。
  4. 如申請專利範圍第1項所述的電腦程式產品,其中:所述渲染該第一控制器與該第一名稱域之間的連接性 之該指示包括在該第一控制器之指示與該第一名稱域之指示之間渲染一條線;以及所述渲染該第一主機與該第一控制器之間的連接性之該指示包括在該第一主機之指示與該第一控制器之指示之間渲染一條線。
  5. 如申請專利範圍第4項所述的電腦程式產品,其中,指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條渲染的線的粗細度大於指示具有比該第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條渲染的線的粗細度。
  6. 如申請專利範圍第1項所述的電腦程式產品,其進一步包含:回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第二名稱域之指示;回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第二控制器之指示;以及回應於使用者對該主機建立GUI之選擇,渲染第二主機之指示。
  7. 如申請專利範圍第1項所述的電腦程式產品,其中所述實作該第一虛擬子系統之組態包括: 透過編譯該虛擬子系統GUI中所渲染的該第一虛擬子系統之組態的指示,建立設備組態;以及於該設備中實作該建立的設備組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
  8. 一種用於提供虛擬子系統之組態的系統,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,該系統包含:處理器;以及記憶體,其中該處理器經組態以:產生虛擬子系統圖形使用者介面(GUI),該虛擬子系統GUI渲染第一虛擬子系統之組態的指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性;產生名稱域建立GUI,其回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第一名稱域之指示;產生控制器建立GUI,其回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第一控制器之指示;產生主機建立GUI,其回應於使用者對該主機建立GUI之選擇,渲染第一主機之指示;產生連接性GUI,其在該虛擬子系統GUI中渲染控制器與名稱域之間或主機與名稱域之間的連接性之指示; 回應於使用者對該指示的第一控制器與該指示的第一名稱域之選擇,透過該虛擬子系統GUI中的該連接性GUI,渲染該第一控制器與該第一名稱域之間的連接性之指示;回應於使用者對該指示的第一主機與該指示的第一控制器之選擇,透過該虛擬子系統GUI中的該連接性GUI,渲染該第一主機與該第一控制器之間的連接性之指示;以及透過編譯該虛擬子系統GUI中所渲染的該第一虛擬子系統之組態的指示,建立設備之設備組態,以當在該設備中實作該設備組態時,該設備可經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
  9. 如申請專利範圍第8項所述的系統,其中該處理器進一步經組態以:產生儲存裝置GUI,其渲染該複數個儲存裝置之指示,其中各儲存裝置之指示包括各儲存裝置中可用儲存空間的指示,以及在該儲存裝置GUI中渲染該複數個儲存裝置的總體可用儲存空間之指示。
  10. 如申請專利範圍第8項所述的系統,其中該處理器進一步經組態以:產生埠建立GUI,其回應於使用者對該埠建立GUI之 選擇,在該虛擬子系統GUI中渲染該第一虛擬子系統的第一埠之指示。
  11. 如申請專利範圍第8項所述的系統,其中在渲染該第一控制器與該第一名稱域之間的連接性之該指示中,該處理器更經組態以在該第一控制器之指示與該第一名稱域之指示之間渲染一條線;以及在渲染該第一主機與該第一控制器之間的連接性之該指示中,該處理器更經組態以在該第一主機之指示與該第一控制器之指示之間渲染一條線。
  12. 如申請專利範圍第11項所述的系統,其中,指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條渲染的線的粗細度大於指示具有比該第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條渲染的線的粗細度。
  13. 如申請專利範圍第8項所述的系統,其中該處理器進一步經組態以:回應於使用者對該名稱域建立GUI之選擇,在該虛擬子系統GUI中渲染與該複數個儲存裝置中一者相關聯的第二名稱域之指示;回應於使用者對該控制器建立GUI之選擇,在該虛擬子系統GUI中渲染第二控制器之指示;以及回應於使用者對該主機建立GUI之選擇,渲染第二主 機之指示。
  14. 一種用於提供虛擬子系統之組態的方法,該虛擬子系統可在複數個主機與複數個儲存裝置之間提供連接性,該方法包含:透過電腦系統之處理器賦能該電腦系統之使用者得以建立第一虛擬子系統的組態之指示,其組態一或多該複數個主機與一或多該複數個儲存裝置之間的連接性;透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立與該複數個儲存裝置中一者相關聯的第一名稱域之指示;透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一控制器之指示;透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立第一主機之指示;透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立控制器與名稱域之間或主機與名稱域之間的連接性之指示;透過該處理器賦能該使用者以選擇該指示的第一控制器與該指示的第一名稱域,並在該第一虛擬子系統的組態之指示中建立該第一控制器與該第一名稱域之間的連接性之指示;透過該處理器賦能該使用者以選擇該指示的第一主機與該指示的第一控制器,並在該第一虛擬子系統的組態之 指示中建立該第一主機與該第一控制器之間的連接性之指示;以及透過該處理器於設備中實作該第一虛擬子系統之組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
  15. 如申請專利範圍第14項所述的方法,進一步包含:透過該處理器賦能該使用者以於該第一虛擬子系統的組態之指示中建立該複數個儲存裝置之指示,其中各儲存裝置之指示包括各儲存裝置中可用儲存空間的指示,其中,該複數個儲存裝置之指示包括該複數個儲存裝置的總體可用儲存空間之指示。
  16. 如申請專利範圍第14項所述的方法,進一步包含:透過該處理器賦能該使用者以在該第一虛擬子系統的組態之指示中建立該第一虛擬子系統之第一埠之指示。
  17. 如申請專利範圍第14項所述的方法,其中該第一控制器與該第一名稱域之間的連接性之該指示包括在該第一控制器之指示與該第一名稱域之指示之間的一條線;以及該第一主機與該第一控制器之間的連接性之該指示包括在該第一主機之指示與該第一控制器之指示之間的一條線。
  18. 如申請專利範圍第17項所述的方法,其中,指示具有第一頻寬或每秒輸入/輸出(IOPS)的連接性之第一條線的粗細度大於指示具有比該第一頻寬或IOPS小的第二頻寬或IOPS的連接性之第二條線的粗細度。
  19. 如申請專利範圍第14項所述的方法,進一步包含:透過該處理器賦能該使用者以建立與該複數個儲存裝置中一者相關聯的第二名稱域的指示;透過該處理器賦能該使用者以建立第二控制器的指示;以及透過該處理器賦能該使用者以建立第二主機的指示。
  20. 如申請專利範圍第14項所述的方法,其中所述實作該第一虛擬子系統之組態包括:透過該處理器,藉由編譯該第一虛擬子系統之組態的指示,建立設備組態;以及於該設備中實作該建立的設備組態,以令該設備得以經由該第一控制器對該第一主機提供對該第一名稱域之儲存器存取。
TW108131705A 2018-09-04 2019-09-03 管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法 TWI798484B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/121,471 2018-09-04
US16/121,471 US10671286B2 (en) 2018-09-04 2018-09-04 System and method for managing GUI of virtual NVMe entities in NVMe over fabric appliance

Publications (2)

Publication Number Publication Date
TW202024928A TW202024928A (zh) 2020-07-01
TWI798484B true TWI798484B (zh) 2023-04-11

Family

ID=69641113

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108131705A TWI798484B (zh) 2018-09-04 2019-09-03 管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法

Country Status (4)

Country Link
US (2) US10671286B2 (zh)
CN (2) CN112823342B (zh)
TW (1) TWI798484B (zh)
WO (1) WO2020049465A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11165786B2 (en) * 2018-12-18 2021-11-02 International Business Machines Corporation Remote assistance controller that provides control over what a remote assistor can access
US11113001B2 (en) * 2019-08-30 2021-09-07 Hewlett Packard Enterprise Development Lp Fabric driven non-volatile memory express subsystem zoning
US11494098B2 (en) 2020-06-30 2022-11-08 Western Digital Technologies, Inc. Variable performance storage devices
US11079939B1 (en) * 2020-07-30 2021-08-03 Hewlett Packard Enterprise Development Lp Distributing I/O Q-connections of subsytems among hosts
US20220200867A1 (en) * 2020-12-18 2022-06-23 Western Digital Technologies, Inc. Management of non-volatile memory express nodes

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101473305A (zh) * 2006-04-28 2009-07-01 网络装置公司 用于集群环境中的作业的管理的系统和方法
TW201110023A (en) * 2009-05-28 2011-03-16 Ibm Automatic port conflict resolution during application deployment
CN102595007A (zh) * 2010-08-20 2012-07-18 佳能株式会社 信息处理装置及信息处理装置的控制方法
US20170131883A1 (en) * 2015-11-10 2017-05-11 International Business Machines Corporation Generating user interface configuration pages to configure a computing resource comprised of component computing resources
US20180063145A1 (en) * 2016-08-24 2018-03-01 Intel Corporation Computer product, method, and system to dynamically provide discovery services for host nodes of target systems and storage resources in a network

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744429A (ja) 1993-07-26 1995-02-14 Dainippon Screen Mfg Co Ltd 画像処理装置
US5819042A (en) * 1996-02-20 1998-10-06 Compaq Computer Corporation Method and apparatus for guided configuration of unconfigured network and internetwork devices
US7222176B1 (en) * 2000-08-28 2007-05-22 Datacore Software Corporation Apparatus and method for using storage domains for controlling data in storage area networks
US7130960B1 (en) * 2005-04-21 2006-10-31 Hitachi, Ltd. System and method for managing disk space in a thin-provisioned storage subsystem
US7698351B1 (en) * 2006-04-28 2010-04-13 Netapp, Inc. GUI architecture for namespace and storage management
US8274905B2 (en) * 2006-08-22 2012-09-25 Embarq Holdings Company, Llc System and method for displaying a graph representative of network performance over a time period
US8862735B1 (en) * 2006-12-05 2014-10-14 Aol Inc. IP address management of multiple DHCP and DNS servers
US7725506B1 (en) * 2007-06-27 2010-05-25 Symantec Corporation Defragmentation in a virtual environment
US8051243B2 (en) * 2008-04-30 2011-11-01 Hitachi, Ltd. Free space utilization in tiered storage systems
US8209343B2 (en) * 2008-10-06 2012-06-26 Vmware, Inc. Namespace mapping to central storage
WO2010030996A1 (en) * 2008-09-15 2010-03-18 Virsto Software Storage management system for virtual machines
JP4961411B2 (ja) * 2008-10-16 2012-06-27 株式会社日立製作所 計算機システム及びその構成管理方法
JP2010146306A (ja) 2008-12-19 2010-07-01 Hitachi Information Systems Ltd 構成監視システム及び構成監視方法
US8533161B2 (en) * 2009-10-30 2013-09-10 Hitachi Data Systems Corporation Fixed content storage within a partitioned content platform, with disposition service
US20110238715A1 (en) * 2010-03-25 2011-09-29 Hitachi Data Systems Corporation Complex object management through file and directory interface
WO2011135636A1 (ja) * 2010-04-30 2011-11-03 株式会社日立製作所 計算機システム及びその制御方法
US8700571B2 (en) * 2010-09-24 2014-04-15 Hitachi Data Systems Corporation System and method for optimizing protection levels when replicating data in an object storage system
US8793286B2 (en) * 2010-12-09 2014-07-29 International Business Machines Corporation Hierarchical multi-tenancy management of system resources in resource groups
US8683103B2 (en) * 2011-08-19 2014-03-25 International Business Machines Corporation Hierarchical multi-tenancy support for host attachment configuration through resource groups
US8713218B2 (en) * 2011-08-31 2014-04-29 International Business Machines Corporation Non-disruptive configuration of a virtualization controller in a data storage system
JP5659108B2 (ja) 2011-08-31 2015-01-28 富士通エフ・アイ・ピー株式会社 運用監視装置、運用監視プログラム及び記録媒体
US9294549B2 (en) * 2012-02-14 2016-03-22 Citrix Systems, Inc. Client bandwidth emulation in hosted services
US20130346532A1 (en) * 2012-06-21 2013-12-26 Microsoft Corporation Virtual shared storage in a cluster
US9176762B2 (en) * 2012-07-02 2015-11-03 International Business Machines Corporation Hierarchical thresholds-based virtual machine configuration
US9245140B2 (en) * 2013-11-15 2016-01-26 Kabushiki Kaisha Toshiba Secure data encryption in shared storage using namespaces
US9225597B2 (en) * 2014-03-14 2015-12-29 Nicira, Inc. Managed gateways peering with external router to attract ingress packets
US9590901B2 (en) * 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
JP5758519B2 (ja) 2014-03-19 2015-08-05 株式会社日立製作所 計算機システム及びその管理方法
US9927955B2 (en) * 2015-11-10 2018-03-27 International Business Machines Corporation Generating a configuration page for rendering in a graphical user interface (GUI) for managing provisioning of storage resources in a storage system
US10554491B2 (en) * 2016-02-26 2020-02-04 Red Hat, Inc. Customizable event processing for third party infrastructure events
US10620840B2 (en) * 2016-05-27 2020-04-14 Intel Corporation Computer product, method, and system to dynamically manage storage devices accessed remotely over a network
US9918149B2 (en) * 2016-06-01 2018-03-13 Roshmere, Inc. Optically-switched data network
US10089134B2 (en) * 2016-06-30 2018-10-02 Western Digital Technologies, Inc. Controlling access to namespaces of a storage device
US10452419B2 (en) * 2016-09-09 2019-10-22 Huawei Technologies Co., Ltd. Device virtualization for containers
US10355925B2 (en) * 2017-01-13 2019-07-16 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Autonomous generation and transmission of reportable events by fabric-attachable storage drive
US10866912B2 (en) * 2017-03-10 2020-12-15 Toshiba Memory Corporation Integrated heterogeneous solid state storage drive
US10768820B2 (en) * 2017-11-16 2020-09-08 Samsung Electronics Co., Ltd. On-demand storage provisioning using distributed and virtual namespace management
US11288180B2 (en) * 2018-01-19 2022-03-29 Micron Technology, Inc. Management of storage resources allocated from non-volatile memory devices to users
US10592162B2 (en) * 2018-08-22 2020-03-17 Intel Corporation Distributed storage location hinting for non-volatile memories
US10606516B2 (en) * 2018-08-01 2020-03-31 Hewlett Packard Enterprise Development Lp Systems and methods for I/O prioritization in NVMe-compliant storage devices
US10999163B2 (en) * 2018-08-14 2021-05-04 Juniper Networks, Inc. Multi-cloud virtual computing environment provisioning using a high-level topology description

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101473305A (zh) * 2006-04-28 2009-07-01 网络装置公司 用于集群环境中的作业的管理的系统和方法
TW201110023A (en) * 2009-05-28 2011-03-16 Ibm Automatic port conflict resolution during application deployment
CN102595007A (zh) * 2010-08-20 2012-07-18 佳能株式会社 信息处理装置及信息处理装置的控制方法
US20170131883A1 (en) * 2015-11-10 2017-05-11 International Business Machines Corporation Generating user interface configuration pages to configure a computing resource comprised of component computing resources
US20180063145A1 (en) * 2016-08-24 2018-03-01 Intel Corporation Computer product, method, and system to dynamically provide discovery services for host nodes of target systems and storage resources in a network

Also Published As

Publication number Publication date
CN117951047A (zh) 2024-04-30
CN112823342A (zh) 2021-05-18
TW202024928A (zh) 2020-07-01
US20200293194A1 (en) 2020-09-17
WO2020049465A1 (en) 2020-03-12
US11112969B2 (en) 2021-09-07
CN112823342B (zh) 2024-03-15
US20200073553A1 (en) 2020-03-05
US10671286B2 (en) 2020-06-02

Similar Documents

Publication Publication Date Title
TWI798484B (zh) 管理NVMe-oF設備中虛擬NVMe實體之GUI的系統及方法
US8495255B2 (en) Discovery and configuration of device configurations
JP4504762B2 (ja) ストレージネットワークの移行方法、管理装置、管理プログラムおよびストレージネットワークシステム
CN102292698B (zh) 用于在云计算环境中自动管理虚拟资源的系统和方法
US8332542B2 (en) Communication with input/output system devices
US8412901B2 (en) Making automated use of data volume copy service targets
CN105549904A (zh) 一种应用于存储系统中的数据迁移方法及存储设备
CN107959582A (zh) 一种切片实例的管理方法及装置
TW201232416A (en) Unified resource manager providing a single point of control
US20090070579A1 (en) Information processing system and login method
TW201232409A (en) Ensemble having one or more computing systems and a controller thereof
JP5788006B2 (ja) 計算機システム及びその管理方法
TW202034665A (zh) 修改區塊鏈網路配置的方法及系統
JP5953109B2 (ja) 管理サーバおよび検証方法
US11546228B2 (en) Zero-touch configuration of network devices using hardware metadata
JP2005018159A (ja) ストレージシステム構築支援装置、ストレージシステム構築支援方法、およびストレージシステム構築支援プログラム
US9535629B1 (en) Storage provisioning in a data storage environment
US20170262214A1 (en) Aggregating memory to create a network addressible storage volume for storing virtual machine files
US20100057985A1 (en) System and method for allocating performance to data volumes on data storage systems and controlling performance of data volumes
TWI634434B (zh) 在資料中心自動組成資料中心資源的電腦實施方法
JP5272185B2 (ja) 計算機システム及びストレージシステム
Tosatto Citrix Xenserver 6. 0 Administration Essential Guide
US11016694B1 (en) Storage drivers for remote replication management
CN114124740A (zh) 一种vnf实例化的方法和装置
TWI789014B (zh) 管理虛擬網元和多存取邊緣運算拓撲的系統和方法