CN101395889A - 存储装置端口的选择优化 - Google Patents
存储装置端口的选择优化 Download PDFInfo
- Publication number
- CN101395889A CN101395889A CN200780007196.5A CN200780007196A CN101395889A CN 101395889 A CN101395889 A CN 101395889A CN 200780007196 A CN200780007196 A CN 200780007196A CN 101395889 A CN101395889 A CN 101395889A
- Authority
- CN
- China
- Prior art keywords
- port
- storage device
- data
- storage
- operational factor
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000003860 storage Methods 0.000 title claims abstract description 213
- 238000000034 method Methods 0.000 claims abstract description 18
- 230000004044 response Effects 0.000 claims abstract description 8
- 238000004891 communication Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 2
- 238000012856 packing Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 10
- 238000013500 data storage Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000037361 pathway Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
- Small-Scale Networks (AREA)
Abstract
用于选择用于连接至存储区域网络中的存储装置的端口对的端口优化部件和方法,每个端口都有预定的运行参数,该端口优化部件包括:用来响应对存储装置的配置访问请求而请求属于存储装置的配置数据和策略数据的确定部件;所述确定部件用于比较配置数据和策略数据,以确定位于存储装置上的每个存储装置端口的运行参数的不同,并且基于检测到的不同,选择一对具有优先运行参数的端口。
Description
技术领域
本发明涉及存储区域网络领域。特别地,本发明涉及存储装置端口的选择优化。
背景技术
存储区域网络(SAN)是专门的高速网络,它可以用于服务器和存储装置之间的连接。通过利用如路由器、集线器、交换机、导向器等互连元件,SAN允许网络上任何两点之间的连接。SAN消除了服务器与存储装置之间的传统专用连接。SAN也消除了服务器能访问的、目前被能够连接到单个服务器上的存储装置的数量限制的数据量的限制。
SAN被证明具有挑战性的一个方面是它能无人工干预地用连接到存储区域网络的存储器自动配备可以被配置和安排用于运行的应用程序和服务器。自动的应用程序、服务器和存储器配备要求所有的用外部连接的存储器在服务器上安排和配置应用程序的步骤都是自动无人工干预的。
在SAN环境中外部连接存储器的自动配备包括多个连续的步骤:第一,自动选择存储卷,第二,从存储装置到服务器的卷的安全映射,第三,从服务器到存储装置的SAN网络路径配置,最后,服务器上卷和文件系统的创建。
共享存储资源的自动配备要求为在存储区域网络环境中使用存储器的每个服务器配置一个不同的存储区域网络路径。这必须考虑当用户使用共享存储资源时和添加或移除附加服务器和存储装置时环境的变化动态。因此自动配备管理器必须能够在无管理员参与的情况下确定在共享存储环境中的资源的使用和配置,并且进一步确定和实现从主机到选定存储装置的合适的存储区域网络路径配置。
为存储装置确定存储区域网络路径配置问题的已知解决方案依赖由熟练的SAN管理员为应用程序或服务器创建的路径配置。这一过程能够应用于单个服务器或多个服务器,但是一旦所有的通过所确定的配置路径和特定装置网络端口的潜在连接已经耗尽或已经达到最大利用,配置必须被从新设定。或者,如果存储装置达到容量,到新的存储装置的配置路径必须被确定。在自动环境中路径选择必须被自动确定和实现,并且与环境中的变化相适应。一个关键的要求是创建的路径配置遵守选定存储装置的设计规则和使用边界。如果未能做到这一点,将会由于影响访问数据的软硬故障导致数据可用性的整体低水平。
对于上述突出问题的一个部分解决方案在公布于2003年1月2日的美国专利申请2003/0005119A1中有所描述,其中一个数据路径引擎被耦合于一个存储区域网络,用于向在一个在与存储区域网络相连的服务器上的应用程序与一个与存储区域网络相连的存储子系统上的数据卷之间提供自动存储配备。这种仪器提供了一个允许操作者为了选择可以满足体系结构的开机时间和性能要求的数据路径而使用预先创建的策略作为标准的用户接口。尽管如此,美国专利申请2003/0005119A1没有解决确定用于处理配备请求的最适合的路径和存储装置端口方面的问题。在存储区域网络中解决这个问题与最大化利用和在存储区域网络上均匀地分配工作负荷同样重要,创建的配置必须在存储装置的得到支持的设计参数和最佳使用实践之内。
发明内容
因此,从第一个方面看来,本发明提供了一种端口优化部件,用来选择用于连接到存储区域网络中的存储装置的一对端口,其中每个端口都有预定的运行参数,此端口优化部件包括:用来响应对存储装置的配置访问请求而请求属于存储装置的配置数据和策略数据的确定部件;并且所述确定部件用来比较配置数据和策略数据以确定位于存储装置上的每个存储装端口的运行参数的不同,并基于检测到的不同,选择一对具有优先运行参数的端口。
此端口优化部件有利地为选择存储装置端口而考虑硬件部件故障模式,并为了减少由于单个硬件的故障没有到达主机的路径的数量而提供。更进一步地,本发明有利地提供了运用存储装置销售商的配置信息和限制来创建有效的和得到支持的存储装置配置的能力。这也为如在一个模块存储装置中能够被连接到端口或集群的主机的数量等的运行参数的检测而提供。端口优化部件进一步规定了包括预留的路径选择存储资源以满足已知的未来应用程序的要求。这包括如预期输入/输出负载和带宽端口插槽等的、调节新主机到存储装置连接的资源。
优选的是,端口优化部件规定了确定部件为每个端口检测每个端口的当前运行负载和每个端口的最大运行负载,以确定用于端口选择的合格端口对的列表。
优选的是,端口优化部件规定了确定部件根据与被请求的存储装置相关联的策略规则确定每对合格端口对的体系结构类型。
优选的是,端口优化部件规定确定部件通过合格端口对识别被请求的存储装置的存储卷的任何限制。
优选的是,端口优化部件还提供了响应确定满足执行标准的端口对的确定部件限制合格端口对的列表的更新部件。
优选的是,端口优化部件规定了包括存储装置的运行参数数据的策略规则。
优选的是,端口优化部件规定了用被请求的存储装置的当前运行参数更新配置数据的更新部件。因此,端口优化部件能够通过连续地更新每个存储装置的配置数据连续地优化端口选择
优选的是,端口优化部件规定了用于查询在存储区域网络中运行的每个存储装置,以识别每个存储装置的当前运行参数的查询部件。
优选的是,端口优化部件还包括用来传送用于选择的合格端口对的添加或排除的通信部件。
优选的是,端口优化部件包括配置数据,所述配置数据包括在存储区域网络内运行的每个存储装置的当前运行参数。
优选的是,端口优化部件规定了确定部件进一步包括确定是否有足够的可用存储装置端口以满足所请求的数据路径的要求。
从第二个方面来看,本发明提供了一种选择用于连接至存储区域网络中的存储装置的端口对的方法,其中每个端口都有预定的运行参数,此方法包括以下步骤:响应对存储装置的配置访问请求而请求属于存储装置的配置数据和策略数据;和比较配置数据和策略数据从而为位于存储装置上的每个存储装置端口确定运行参数的不同,并基于检测到的不同,选择一对具有优先运行参数的端口。
从第三个方面来看,本发明提供了一种可装入数字计算机内存的计算机程序产品,包括用于执行的软件代码部分,当所述产品在计算机上运行时,执行上述发明。
附图说明
下面参照附图仅通过例子的方式详细描述发明的实施例,如图中所示:
图1为典型的存储区域网络的现有技术图;
图2为示出本领域已知的存储装置的多对端口的框图;
图3为示出依照本发明的一个优选实施例的端口优化部件的组成部分的框图;
图4为示出本领域已知的存储装置的单块集成电路体系结构的框图;
图5为示出本领域已知的存储装置的模块体系结构的框图;以及
图6和图7为本发明的一个优选实施例的详细操作步骤流程图。
具体实施方式
图1示出一个典型的存储区域网络100(通常称为SAN)。SAN100包括许多不同的硬件部件,这些所有的部件组成了存储区域网络100。通过利用如交换机105、集线器110和桥接器115等互连元件,SAN 100允许网络100上任何两点之间的连接。这些互连元件执行如数据帧路由选择、介质和接口转换(即铜到光纤的转换)、网络增强与带宽管理等的功能并且允许如主存储装置120,130(比如RAID系统)、服务器140和如磁带驱动器150等的备份系统等的硬件外围设备的连接。其他类型的连接到SAN 100上的硬件外围设备是计算机系统120,145,155。被访问或被存储的数据位于如RAID存储系统等的存储系统125,130上。
每个存储装置125,130包括一个或多个存储卷。存储卷把物理存储盘划分成许多分区卷,划分时不考虑实际存储元件的物理布局或拓扑。通常,虚拟卷被当作物理盘的抽象呈现在操作系统上并且被操作系统当作独立的物理盘使用。因此数据可以被存储在每个虚拟的卷上。
通常,管理连接到并连接自SAN 100的存储装置125,130的管理服务器140被安装。利用查询机制,管理服务器140可以知道连接到SAN网络100上的所有存储装置和主机以及它们的唯一地址。
管理服务器140与交换机150接口以在SAN 100中配置数据(应用数据)至被请求的存储装置125,130的路由。例如,如果一个计算机系统120,145,155需要访问一个虚拟存储卷来存储一个文字处理文档,负责管理从计算机系统120,145,155出发的路径设置的管理服务器140接收到该请求并通过存储装置上一个特定的端口与交换机进行通信以指示设置从计算机系统120,145,155出发的逻辑路径。交换机105与集线器110和桥接器115接口以存储数据。
在光纤信道环境中,例如,每个存储装置端口被分配给一个唯一的标识符:例如,构成了一个24位地址的唯一的十六进制码。交换机105负责维持和分配唯一的标识符到装置端口。例如,参见图2,存储装置125被示出有两个底板200,250,每个底板都有两个适配器230,235,240,245,每个适配器都有多个端口210,220,230,240。交换机105一旦识别出注册在SAN上的存储装置125,130,就分配给每个端口一个唯一的标识符。比如:
端口号 唯一标识符
210 aabbcc
215 ddeeff
220 gghhii
225 jjkkll
这样,交换机105一旦接收到转发数据到存储装置端口201,215,220,225的请求,就在一个数据存储器中执行查找以确定在SAN 100上的端口的唯一标识符,以达到把数据路由到被请求的存储器上的目的。
如图2中所示,存储装置125可以有许多适配器230,235,240,245和端口210,215,220,225。多个端口被使用,因此有多个数据路径。这样增强了数据的可用性,因为在一个端口发生故障的情况下,数据仍能够通过另一个端口到达存储装置。除此之外,多端口也允许数据工作负荷被分布,以最小化性能瓶颈。为了在存储装置125,130上存储数据,主机,例如服务器140,通过多个端口210,215,220,225与存储装置125进行通信。这通常最少是在两个分开的网络上连接的一对端口。通常SAN 100可由两个冗余的网络组成,从而在一个网络发生故障的情况下提供完全容错。在本说明书的下文中只涉及单个SAN100,但是假设当端口对被提及时,每个端口都是被连接在一个不同的网络中。
为了确定哪个存储装置端口125,130最适于请求者的为了创建一个有效的支持配置的要求,提供了端口优化部件300。
参考图3,本发明的一个优选实施例的端口优化部件300被示出。一旦触发设置多路径访问存储卷的请求,端口优化部件300就比较策略规则和配置数据以确定请求是否能被满足,如果能达到,就要确定在存储装置125,130上的哪些端口是处理该请求的最合适的端口210,215,220,225。
端口优化部件300分析策略规则和配置数据以便确定:a)在存储装置上的哪些端口210,215,220,225是可用的(正在工作/在线的以及那些在存储装置的支持和设计特性内的使用),和b)在可用端口中哪些端口更适于处理请求者的请求。
端口优化部件300可以安装在作为管理服务器的服务器140上、交换机105上,或存储装置125,130上。端口优化部件300包括多个子部件,这些子部件通过相互作用和相互接口来确定在SAN网络100上处理存储请求最合适的并且可用的端口。
子部件包括确定部件305,确定部件比较策略规则和配置数据以确定存储请求是否能够被处理,如果能够被处理,还要确定哪些端口是处理存储请求的最适合的端口,用来存储配置数据315的数据存储器,用来存储策略规则310的数据存储器,用来查询在SAN网络100中的装置的查询部件320和用确定部件305的输出来更新配置数据的更新部件330。上述的每个部件将会依次被解释。
确定部件305接收从管理服务器140发出的请求,请求使用在存储装置125,130上存在的存储卷,或请求在存储装置125,130的现有剩余容量上创建一个新的存储卷。确定部件305一旦接收到这个请求就检索属于被请求的存储装置125,130的配置数据,并且还检索与配置数据相关联的策略规则;即位于SAN网络100内的每个存储装置125,130都有相关联配置数据和一个或多个相关联的策略规则。策略规则由存储装置的设计和实现确定。策略规则可包括表明了最大性能极限的规则或者,可以包括表明不能被超过的(因为否则会导致数据的访问失败或性能降级的故障发生)连接极限的规则。规则也可应用于如多路径驱动器等的支持部件,例如最大允许路径数量,从而被选择的最大端口数量。
确定部件305比较策略规则和配置数据,并且确定与配置数据相比策略数据参数的不同。例如,一个特定存储装置125,130的配置数据可能表明12个服务器被连接到该存储装置上。尽管如此,策略规则可能表明总共20个服务器能够被连接到存储装置125,130上。因此,确定部件305确定还有8个服务器能被连接到存储装置123,130上。确定部件305把计算结果发送到更新部件330用于把数据传送到通信部件325,并且如果多路径访问配置请求成功,用于用新的服务器使用信息来更新配置数据。
例如,请求可以请求访问存储装置125,130上的现有存储卷。确定部件305接收这个请求并提取出相关信息。例如,该请求可能包括以下信息:
●要访问的存储卷
●所要求的数据路径数
●所预计的I/O配置文件或负载
确定部件305发送一个请求到配置数据存储器315,请求访问存储卷置于其上的存储装置的配置数据。另一个请求被发送给策略规则数据存储器310以请求访问与存储装置相关联的策略规则。确定部件305比较配置数据和策略规则以确定任何不同。例如,如果配置数据表明存储装置当前有总共12个主机连接到端口‘A’,并且策略规则表明总共20个主机可以通过端口‘A’被连接到存储装置。因此,确定部件305确定还有8个主机能够被连接到在存储装置125,130上的这个端口,因此这个端口是可接受使用的。所有在SAN网络上可被服务器访问的存储装置125,130中的端口都被分析。任何不满足策略规则的端口都被从合适的端口列表中撤销。每个策略规则都依次被应用。当所有规则都被应用,输出结果是有资格被使用的端口组。这个组中的所有端口将创建一个有效的配置,该配置在被接受的装置使用边界之内并且被存储装置销售商和设计者所支持。
其它与存储装置体系结构相关的规则被应用。体系结构可以确定存储装置中通过特定端口对特定存储卷的可访问性。能被用来访问存储卷的特定端口确定于存储装置的卷和配置。
正如参考确定装置305所做的解释,存储在数据存储器315中的配置数据包括位于SAN构造中的每个存储装置的配置数据。配置数据315详述了存储硬件的特性,比如有多少个端口置于存储装置中、存储装置的体系结构(即模块或单块集成电路)、内部怎样配置端口、硬件特定信息、端口怎样被连接到内部存储器。这些信息本身是静态的,并且被归类为管理员定义信息。配置数据还包括第二种类型的信息,此种信息具有更为动态的特性,并且被更新部件330从查询SAN构造中所有存储装置并保持其自身随环境变化而更新的管理服务器140等的外部信息源更新。这种配置数据包括如多少数据路径正在使用存储装置上的端口、多少主机已经被连接到存储装置和连接到交换机105的端口等的数据。这个数据可以被保持在配置数据存储器本身或存储装置125,130中,并且应请求从该装置被查询。
策略规则存储在数据存储器310中。策略规则为每个存储装置定义具体规则。例如,策略规则定义在任意给定时刻有多少主机能够通过一组端口被连接到存储装置上。策略规则可以是管理员定义的,或者也可以是由查询部件320从存储装置查询策略规则。
更新部件330与确定部件305和通信部件325接口。如果请求被接受,更新部件330用新的使用信息更新数据存储器315中存储的动态配置数据。例如,连接的主机数量增加1,或端口上路径的数量增加1。更新部件也发送通知给通信部件,以向请求者发送回接受或拒绝请求的信息。
如前所述,有两个基本的存储装置体系结构类型,这里描述为单块集成电路和模块。图4示出一个单块集成电路的体系结构,图5示出一个模块的体系结构。存储装置125,130的设计和实现不同,但是都属于这两类,但是可能同时具有这两类体系结构的特征。
参考图4,一个单块集成电路存储装置400被示出。一个单块集成电路的体系结构通常仅包括两个控制单元405,410(CPU,处理器,节点,控制器)连接到多个存储装置端口210,220,225。端口专用于单个控制单元或连接于所有的两个控制单元。在运行中,存储器通过以下步骤被访问:
读或写数据到存储卷210的请求将通过一个特定的端口210,215,220,225进入,并且被路由到控制单元405,410以进行处理。通常,卷将有一个优选的控制单元405,410,通过它来执行数据访问请求。控制单元405,410执行存储卷210上的数据访问请求。端口210,215,220,225可被用来访问卷250没有任何限制。尽管有用于正常访问的优选端口210,215,220,225和在优选端口210,215,220,225或控制器405,410内部部件故障的情况下可用于访问存储卷250的非优选端口210,215,220,225。
但是,使用端口210,215,220,225进行数据访问的选择基于存储装置125,130的设计。为了最大化访问可用性,选作服务器访问的端口210,215,220,225应当能使内部部件故障通过减少丢失的路径数减小影响。例如,选择的端口应能够在不同的内部数据总线、电源、适配器底板、适配器之间被连接,并且如果直接连接到控制单元,应能够在两个控制单元之间被连接。端口选择的一种途径是端口‘可用性对’。依照典型的部件双冗余,一个特定端口将会有一个配对端口,配对端口不太有可能受到通过第一个端口影响访问的不同部件的故障影响。此配对端口也通常在之前提及的第二个冗余SAN网络上。
图5示出模块存储装置500包括多个通常作为多个集群成对结合的控制单元505,510,515,520,比如虚拟化器件。在这个例子中,通常有几个控制单元(505,510,515,520)并且通常所有端口210,215,220,225都不与所有的控制单元连接,即访问是通过连接到控制单元的一个集群对的一个控制单元的端口的子集。除此之外,现有存储卷或存储器的各部分将对存储装置125,130中的控制单元505,510,515,520(集群)对拥有预先分配的所有权。在此图中卷550仅能通过端口210和端口215访问,因为所有权已经被分配给集群530,即控制单元505和510。
在操作中,以下处理步骤被执行。读或写数据到卷550的请求必须通过端口210和215进入,并基于访问端口,它被路由到控制单元505或510以进行处理。通常,存储卷550将会有一个优选的控制单元505或510,通过它数据访问请求将被正常执行。然后控制单元将执行对存储卷上的数据的访问请求。
在这个体系结构中,对卷560的访问不能通过端口210和215执行,因为这个存储卷被分配给了集群530。只有端口220,225能被用来数据访问,因为它们连接到控制单元515和520。在这个模块体系结构中,端口选择被存储卷到集群的分配所限制。
参考图6和7,优化部件300的操作步骤被示出,其中考虑到了上述的所有两种体系结构类型。在步骤600中,端口优化部件300接收一个从请求者发出的请求,以配置对存储装置125,130上的存储卷250路径访问。通常,请求者从优选列表选择一个满足它们的存储要求的存储卷250,比如能够存储1G字节数据并且提供特殊响应时间等的存储卷250。或者,识别出存储装置125,130具有空闲的存储容量,其中可以以期望的特性创建一个卷。(选择具有空闲容量或现有存储卷的装置已被现有技术解决,不再进一步讨论)。端口优化部件300接收该请求,确定部件305提取存储装置125,130的名称和请求者的存储要求。确定部件300发送请求到配置数据存储器315和策略数据存储器310以访问请求中所提到的配置数据和存储装置125,130的策略数据。
步骤605中的确定部件305判断所选的存储装置125,130是否已经超过了可连接到存储装置125,130上的主机的最大数量或允许的存储卷210的总数。如果判断结果是肯定的,控制跳转至步骤610,并且一个通知通过通信部件325被发送到请求者,通知请求者所选的存储装置125,130不合适。然后提示请求者从优选列表选择另一个存储装置125,130,从所选的具有所需特性和由现有技术所确定的空闲空间的装置的列表中重新选择另一个装置可以自动进行,也可以有人的干预。
如果判断结果是否定的,并且连接到存储装置上的主机数量没有超过最大可能的主机数,控制跳转至步骤615,从可访问被请求的存储器的控制单元或集群中选出,满足请求者质量或服务要求的控制单元和集群,即比如存储装置125,130必须能够存储1G字节的数据,执行响应时间x秒,并且具有可用性等级RAID5。
接下来在步骤620,确定部件305判断端口选择是基于集群还是基于控制单元选择-这通过确定存储单元的体系结构类型来实现。
如果体系结构类型是单块集成电路(即端口选择不基于存储卷到控制单元的分配),控制跳转至图7的步骤675,并且所有所选存储装置的端口都被选为端口选择的候选。在步骤680中,判断如果最大主机或卷的计数在一个端口上被超过,该端口是否应被排除。在判断步骤685判断应访问请求是否有足够的可用端口满足数据路径的要求。如果该判断是否定的,控制跳转至图6的步骤610。如果判断结果是肯定的,控制跳转至图6的步骤665。
回到图6的步骤620,如果端口选择是基于集群/控制单元选择,即模块体系结构,控制跳转至步骤625。进一步判断是否有多个控制单元的集群以供选择。如果卷已经存在,并且被已分配给一个集群,只有一个可能的集群以供选择,控制跳转至步骤635。如果卷210还没有被创建,并且有多个集群能访问同一个存储容量525,控制跳转至630。确定部件305从动态配置数据判断具有最低利用率,例如这可能是CUP(控制单元处理器),或最低吞吐利用率的集群。控制跳转至步骤635,确定部件305通过比较配置数据和策略规则确定所选的集群是否已经具有已经连接其上的最大数量的主机或卷。如果集群还没有达到它的最大主机和卷的计数,控制跳转到图7的步骤645,该集群被选择。
在步骤650中确定部件305把候选端口范围限制到识别为与所选集群相连接的端口。这也通过识别存储装置125,130的相关配置数据来实现。在步骤655中,确定部件305进一步判断是否任何候选端口都达到了它们的最大连接主机计数-通过比较存储装置的配置数据和它的相应的策略规则。如果判断结果是肯定的,确定超过它们的最大主机计数的端口从候选端口列表中被排除。控制跳转至步骤660,确定部件305判断在所选集群中是否有足够的可用候选端口满足请求者的多路径的要求。如果判断结果是肯定的,控制跳转至步骤665和670,通过选择所需数量的具有最低利用率的端口对来选择最佳可用性端口对,达到数据路径的要求,但是端口对数不超过相关的多路径驱动器所支持的端口对数。
回到步骤635,如果判断结果是肯定的并且在集群中没有足够的可用端口能达到请求者的要求,控制跳转至步骤640并且进一步判断是否有任何剩余的集群用于所选的存储装置125,130。如果没有可用的集群,确定装置305发送信息到更新部件330以通知请求者存储装置125,130不适合,然后提示请求者从优选列表选择另一个存储装置125,130。另一方面,如果判断结果是肯定的,并且有剩余的集群用于存储装置,控制跳转至步骤630,然后处理步骤如前所述的从步骤630开始,直到选出最佳端口对。在成功请求结束时更新部件用新的使用计数更新配置数据,例如,连接到装置的主机计数,每个端口的主机连接计数和每个端口的卷计数。
除此之外,当数据路径访问由于服务器或应用程序的退出被移除,使用计数被减少,例如主机和端口连接使用计数。
如果需要附加的卷用于具有现有到该装置路径配置的主机,这个过程的子过程被使用。现有路径配置必须重新生效来判断是否附加的卷能够通过现有端口选择被访问。否则,必须确定一个新端口选择。
这种方法能够当需要I/O工作负载的重新平衡时被用来消除由特定端口上的吞吐拥塞造成的瓶颈。
Claims (24)
1.一种端口优化部件,用于选择用于连接至存储区域网络中的存储装置的端口对,每个端口都有预定的运行参数,该端口优化部件包括:
用于响应对存储装置的配置访问请求而请求属于存储装置的配置数据和策略数据的确定部件;和
所述确定部件用于比较配置数据和策略数据,以确定位于存储装置上的每个存储装置端口的运行参数的不同,并且基于检测到的不同,选择一对具有优先运行参数的端口。
2.如权利要求1中所述的端口优化部件,其中确定部件进一步包括为每个端口检测每个端口的当前运行负载和每个端口的最大运行负载,以确定用于端口选择的合格端口对列表。
3.如权利要求2中所示的端口优化部件,其中确定部件根据与被请求的存储装置相关联的策略规则进一步确定每对合格端口对的体系结构类型。
4.如权利要求2或3中所述的端口优化部件,其中确定部件进一步包括通过合格端口对识别被请求的存储装置的存储卷的任何限制。
5.如以上权利要求中任一项所述的端口优化部件,其中更新部件响应确定满足执行标准的端口对的确定部件限制合格端口对列表。
6.如以上权利要求中任一项所述的端口优化部件,其中策略规则包括存储装置的运行参数数据。
7.如以上权利要求中任一项所述的端口优化部件,进一步包括用于用被请求的存储装置的当前运行参数更新配置数据的更新部件。
8.如以上权利要求中任一项所述的端口优化部件,进一步包括用于查询在存储区域网络中运行的每个存储装置以识别每个存储装置的当前运行参数的查询部件。
9.如以上权利要求中任一项所述的端口优化部件,进一步包括用于传送添加或排除合格端口对以进行选择的通信部件。
10.如以上权利要求中任一项所述的端口优化部件,其中配置数据包括在存储区域网络中运行的每个存储装置的当前运行参数。
11.如权利要求1中所述的端口优化部件,其中确定部件进一步包括判断是否有足够的可用存储装置端口来满足被请求的数据路径要求。
12.一种用于选择用于连接到存储区域网络中的存储装置的端口对的方法,每个端口对都有预定义的运行参数,该方法包括以下步骤:
响应对存储装置的配置访问请求而请求属于存储装置的配置数据和策略数据;和
比较配置数据和策略数据,以确定位于存储在装置上的每个存储装置端口运行参数的不同,并基于检测到的不同,选择一对具有优先运行参数的端口。
13.如权利要求12中所述的方法,其中比较步骤进一步包括为在端口对中的每个端口检测每个端口的当前运行负载和每个端口的最大运行负载,以确定用于端口选择的合格端口对列表。
14.如权利要求12中所述的方法,其中比较步骤进一步包括根据与被请求的存储装置相关联的策略规则确定每对合格端口对体系结构类型的步骤。
15.如权利要求12或13中所述的方法,其中比较步骤进一步包括通过合格端口对识别被请求的存储装置的存储卷的任何限制。
16.如以上权利要求中任一项所述的方法,进一步包括响应进一步确定满足执行标准的端口对的确定步骤限制合格端口对列表的步骤。
17.如以上权利要求中任一项所述的方法,进一步包括用被请求的存储装置的当前运行参数更新配置数据的步骤。
18.如以上权利要求中任一项所述的方法,进一步包括查询在存储区域网络中运行的每个存储装置以识别每个存储装置的当前运行参数的步骤。
19.如以上权利要求中任一项所述的方法,进一步包括传送添加或排除合格端口对以进行选择的步骤。
20.如以上权利要求中任一项所述的方法,其中策略规则包括存储装置的运行参数数据。
21.如以上权利要求中任一项所述的方法,其中配置数据包括在存储区域网络中运行的每个存储装置的当前运行参数。
22.如权利要求12中所述的方法,其中确定步骤进一步包括判断是否有足够的可用存储装置端口来满足被请求的数据路径的要求。
23.一种可装入数字计算机内存的计算机程序产品,包括用于执行的软件代码部分,当所述产品在计算机上运行时执行权利要求12至22所述的发明。
24.一种用于选择用于连接至存储区域网络中的存储装置的端口对的数据处理系统,每个端口都有预定的运行参数,该数据处理系统包括:中央处理单元,存储单元和适于执行依照权利要求1的发明的存储装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0608405.7 | 2006-04-28 | ||
GBGB0608405.7A GB0608405D0 (en) | 2006-04-28 | 2006-04-28 | Optimisation of the selection of storage device ports |
PCT/EP2007/053979 WO2007125057A1 (en) | 2006-04-28 | 2007-04-24 | Optimisation of the selection of storage device ports |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101395889A true CN101395889A (zh) | 2009-03-25 |
CN101395889B CN101395889B (zh) | 2013-03-27 |
Family
ID=36589963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780007196.5A Expired - Fee Related CN101395889B (zh) | 2006-04-28 | 2007-04-24 | 存储装置端口的选择优化 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8001295B2 (zh) |
EP (1) | EP2016743A1 (zh) |
JP (1) | JP5039951B2 (zh) |
CN (1) | CN101395889B (zh) |
GB (1) | GB0608405D0 (zh) |
TW (1) | TW200818821A (zh) |
WO (1) | WO2007125057A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573839A (zh) * | 2014-09-30 | 2016-05-11 | 伊姆西公司 | 用于端口选择的基于成本的负载平衡的方法和装置 |
CN107888517A (zh) * | 2016-09-30 | 2018-04-06 | 华为技术有限公司 | 一种为主机划域的方法及设备 |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0608405D0 (en) | 2006-04-28 | 2006-06-07 | Ibm | Optimisation of the selection of storage device ports |
US7876940B2 (en) * | 2007-01-30 | 2011-01-25 | International Business Machines Corporation | Universal image processing |
US8238624B2 (en) | 2007-01-30 | 2012-08-07 | International Business Machines Corporation | Hybrid medical image processing |
US8331737B2 (en) | 2007-04-23 | 2012-12-11 | International Business Machines Corporation | Heterogeneous image processing system |
US8326092B2 (en) | 2007-04-23 | 2012-12-04 | International Business Machines Corporation | Heterogeneous image processing system |
US8462369B2 (en) | 2007-04-23 | 2013-06-11 | International Business Machines Corporation | Hybrid image processing system for a single field of view having a plurality of inspection threads |
US7945640B1 (en) * | 2007-09-27 | 2011-05-17 | Emc Corporation | Methods and apparatus for network provisioning |
US8675219B2 (en) | 2007-10-24 | 2014-03-18 | International Business Machines Corporation | High bandwidth image processing with run time library function offload via task distribution to special purpose engines |
US9135073B2 (en) | 2007-11-15 | 2015-09-15 | International Business Machines Corporation | Server-processor hybrid system for processing data |
US20090150556A1 (en) * | 2007-12-06 | 2009-06-11 | Kim Moon J | Memory to storage communication for hybrid systems |
US9332074B2 (en) * | 2007-12-06 | 2016-05-03 | International Business Machines Corporation | Memory to memory communication and storage for hybrid systems |
US8296514B2 (en) * | 2007-12-20 | 2012-10-23 | International Business Machines Corporation | Automated correction of contentious storage virtualization configurations |
US8229251B2 (en) | 2008-02-08 | 2012-07-24 | International Business Machines Corporation | Pre-processing optimization of an image processing system |
US8379963B2 (en) | 2008-03-28 | 2013-02-19 | International Business Machines Corporation | Visual inspection system |
US20110106923A1 (en) * | 2008-07-01 | 2011-05-05 | International Business Machines Corporation | Storage area network configuration |
US8316182B2 (en) * | 2009-08-11 | 2012-11-20 | International Business Machines Corporation | Hierarchical storage management for database systems |
US9106675B2 (en) * | 2010-06-17 | 2015-08-11 | International Business Machines Corporation | Intelligent network storage planning within a clustered computing environment |
US9678804B1 (en) | 2010-09-30 | 2017-06-13 | EMC IP Holding Company LLC | Dynamic load balancing of backup server interfaces based on timeout response, job counter, and speed of a plurality of interfaces |
US8725848B1 (en) * | 2010-09-30 | 2014-05-13 | Emc Corporation | Multipath distribution |
US9047128B1 (en) | 2010-09-30 | 2015-06-02 | Emc Corporation | Backup server interface load management based on available network interfaces |
US8539172B1 (en) * | 2010-11-08 | 2013-09-17 | Infinidat Ltd. | System and method for accessing data in an external virtual memory |
US20120259961A1 (en) | 2011-04-07 | 2012-10-11 | Infinidat Ltd. | System of managing remote resources |
US8595460B2 (en) * | 2011-08-26 | 2013-11-26 | Vmware, Inc. | Configuring object storage system for input/output operations |
US9087201B2 (en) | 2012-01-05 | 2015-07-21 | Infinidat Ltd. | System and methods for host enabled management in a storage system |
US9311019B2 (en) * | 2013-07-29 | 2016-04-12 | Infinidat Ltd. | Storage system and method for accessing logical volumes |
EP2843537B1 (en) * | 2013-08-30 | 2019-03-27 | Fujitsu Limited | Method and systems for simulating a workload of a storage system |
US9219671B2 (en) * | 2013-12-06 | 2015-12-22 | Dell Products L.P. | Pro-active MPIO based rate limiting to avoid iSCSI network congestion/incast for clustered storage systems |
US9900217B2 (en) * | 2014-03-26 | 2018-02-20 | Arista Networks, Inc. | Method and system for network topology enforcement |
US11481296B2 (en) * | 2018-09-10 | 2022-10-25 | International Business Machines Corporation | Detecting configuration errors in multiport I/O cards with simultaneous multi-processing |
US11252015B2 (en) * | 2019-01-29 | 2022-02-15 | EMC IP Holding Company LLC | Determining cause of excessive I/O processing times |
US12010172B2 (en) * | 2019-09-30 | 2024-06-11 | EMC IP Holding Company LLC | Host device with multi-path layer configured for IO control using detected storage port resource availability |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421624B1 (en) * | 1999-02-05 | 2002-07-16 | Advantest Corp. | Multi-port device analysis apparatus and method and calibration method thereof |
US7016484B2 (en) * | 2000-10-13 | 2006-03-21 | Verizon Corporate Services Group Inc. | System and method for effecting inside plant load balancing in a telecommunications system |
US7343410B2 (en) * | 2001-06-28 | 2008-03-11 | Finisar Corporation | Automated creation of application data paths in storage area networks |
US6976134B1 (en) * | 2001-09-28 | 2005-12-13 | Emc Corporation | Pooling and provisioning storage resources in a storage network |
US7292589B2 (en) * | 2002-08-13 | 2007-11-06 | Narendra Kumar Dhara | Flow based dynamic load balancing for cost effective switching systems |
US7945669B2 (en) * | 2002-10-30 | 2011-05-17 | Emc Corporation | Method and apparatus for provisioning storage resources |
US20050091426A1 (en) * | 2003-10-23 | 2005-04-28 | Horn Robert L. | Optimized port selection for command completion in a multi-ported storage controller system |
JP2005165702A (ja) * | 2003-12-03 | 2005-06-23 | Hitachi Ltd | クラスタストレージのデバイス連結方法 |
JP4441362B2 (ja) * | 2004-09-10 | 2010-03-31 | 株式会社日立製作所 | ポート割当装置及びポート割当方法 |
GB0608405D0 (en) | 2006-04-28 | 2006-06-07 | Ibm | Optimisation of the selection of storage device ports |
-
2006
- 2006-04-28 GB GBGB0608405.7A patent/GB0608405D0/en not_active Ceased
-
2007
- 2007-04-13 TW TW096113115A patent/TW200818821A/zh unknown
- 2007-04-24 US US12/298,050 patent/US8001295B2/en not_active Expired - Fee Related
- 2007-04-24 JP JP2009507059A patent/JP5039951B2/ja not_active Expired - Fee Related
- 2007-04-24 EP EP07728435A patent/EP2016743A1/en not_active Withdrawn
- 2007-04-24 CN CN200780007196.5A patent/CN101395889B/zh not_active Expired - Fee Related
- 2007-04-24 WO PCT/EP2007/053979 patent/WO2007125057A1/en active Application Filing
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573839A (zh) * | 2014-09-30 | 2016-05-11 | 伊姆西公司 | 用于端口选择的基于成本的负载平衡的方法和装置 |
US10725684B2 (en) | 2014-09-30 | 2020-07-28 | EMC IP Holding Company LLC | Method and apparatus for cost-based load balancing for port selection |
CN107888517A (zh) * | 2016-09-30 | 2018-04-06 | 华为技术有限公司 | 一种为主机划域的方法及设备 |
CN107888517B (zh) * | 2016-09-30 | 2020-08-14 | 华为技术有限公司 | 一种为主机划域的方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
GB0608405D0 (en) | 2006-06-07 |
US20090089462A1 (en) | 2009-04-02 |
WO2007125057A1 (en) | 2007-11-08 |
TW200818821A (en) | 2008-04-16 |
CN101395889B (zh) | 2013-03-27 |
JP2009535681A (ja) | 2009-10-01 |
JP5039951B2 (ja) | 2012-10-03 |
US8001295B2 (en) | 2011-08-16 |
EP2016743A1 (en) | 2009-01-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101395889B (zh) | 存储装置端口的选择优化 | |
CN101258725B (zh) | 存储区域网络中的负载分布 | |
JP4188602B2 (ja) | クラスタ型ディスク制御装置及びその制御方法 | |
CN101384985B (zh) | Sas区域组权限表版本标识符 | |
US9647933B1 (en) | Port identifier management for path failover in cluster environments | |
US7673110B2 (en) | Control method of device in storage system for virtualization | |
US7475108B2 (en) | Slow-dynamic load balancing method | |
US7389367B2 (en) | Method of managing I/O interface modules in a computer system | |
US7444395B2 (en) | Method and apparatus for event handling in an enterprise | |
US20070079062A1 (en) | Method and system for storage access management in IP network | |
US20050262386A1 (en) | Storage system and a method for dissolving fault of a storage system | |
CN101673283A (zh) | 管理终端和计算机系统 | |
US20060168156A1 (en) | Hierarchical system configuration method and integrated scheduling method to provide multimedia streaming service on two-level double cluster system | |
CN101056175B (zh) | 磁盘阵列及其访问权限控制方法与装置、服务器及服务器系统 | |
US7395393B2 (en) | Storage control system | |
WO1998040820A1 (en) | A communications system for client-server data processing systems | |
US7069276B2 (en) | Computer system | |
US8555021B1 (en) | Systems and methods for automating and tuning storage allocations | |
US20030005080A1 (en) | Systems and methods for accessing data | |
EP1588360B1 (en) | System and method for distributed block level storage | |
US20230418685A1 (en) | Distributed data storage system with peer-to-peer optimization | |
US7111088B2 (en) | Computer system, management device, and logical device selecting method and program | |
CN109451090B (zh) | 一种域名解析方法及装置 | |
CN107491270A (zh) | 一种多控存储系统的资源访问方法及装置 | |
CN1244870C (zh) | 检测和改善潜在逻辑单元抖动的多请求器及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130327 |