CN105814533A - 计算机系统 - Google Patents
计算机系统 Download PDFInfo
- Publication number
- CN105814533A CN105814533A CN201480067967.XA CN201480067967A CN105814533A CN 105814533 A CN105814533 A CN 105814533A CN 201480067967 A CN201480067967 A CN 201480067967A CN 105814533 A CN105814533 A CN 105814533A
- Authority
- CN
- China
- Prior art keywords
- storage system
- logic
- control element
- logic control
- request
- 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
Classifications
-
- 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/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- 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/061—Improving I/O performance
-
- 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/0662—Virtualisation aspects
-
- 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/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- 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]
-
- 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/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
在汇集物理上的多个存储系统并将其作为一个虚拟存储系统来提供的横向扩展型存储中,以防止主计算机与虚拟存储系统间输入输出性能变差的方式确立逻辑路径,因此在向虚拟存储系统分配卷时,若未分配有确立通向卷的逻辑路径的逻辑CU,则在已分配逻辑CU数或者使用的存储容量少的存储系统中生成逻辑CU和卷。另一方面,若存在已分配逻辑CU的存储系统,则在该存储系统中生成卷。但是,在存储系统的资源不足时,将访问频率低的其他逻辑CU移动至资源丰富的其他存储系统,或者向通信频带足够的其他存储系统追加逻辑CU,并生成卷。
Description
技术领域
本发明涉及一种具有多个存储系统的计算机系统的技术。
背景技术
为了应对系统的大规模化和性能要求的高度化,将物理上的多个存储系统汇集成一个来提供与大规模存储同等的性能和容量的横向扩展型存储正在受到关注。作为横向扩展型存储的运用方法,已知有在逻辑上将多个存储系统虚拟化为一个存储资源的方法。
例如,在专利文献1中,为了使单独地运行着的存储系统作为虚拟存储系统的结构要素,控制装置将实际存储的逻辑设备(以下,记为“LDEV”)的标识符转换为虚拟存储的LDEV的标识符。另外,以LDEV为单位管理逻辑路径。
另一方面,有如下的系统:当主计算机保存将LDEV与主计算机之间连接的逻辑路径的结构定义来确立逻辑路径时,以逻辑控制单元(以下记为“逻辑CU”)为单位来确立逻辑路径。
例如,专利文献2公开了主计算机定义逻辑CU及使用该逻辑CU的逻辑路径来访问的LDEV的结构。
现有技术文献
专利文献
专利文献1:美国专利申请公开第2008/0034005号说明书
专利文献2:美国专利申请公开第2007/0174544号说明书
发明内容
作为构建横向扩展型存储的方法,考虑以如下的方式构建:对多个存储系统分配同一个虚拟存储系统编号,若将多个存储系统与主计算机物理上连接,则任何存储系统都可从主计算机接受逻辑路径建立请求。
在主计算机是主机(mainframe,以下,有时记为“MF”)的情况下,由于对每个逻辑CU能够定义多至8条逻辑路径,所以最多能够确立8个存储系统和逻辑路径。另外,有时也会确立从多个主计算机到同一个CU的逻辑路径。在MF确立了多个逻辑路径的情况下,在输入输出(I/O)执行时按照顺序使用这些逻辑路径。
在面向MF的存储系统中,还有对每个存储系统最多能够构建256个逻辑CU且对每个逻辑CU最多能够构建256个LDEV的存储系统。此处,将主计算机能够识别的虚拟存储系统内的LDEV称为全局设备(blobaldevice,以下,记为“GDEV”)。被赋予给该全局设备(GDEV)的全局设备编号(GDEV编号)在虚拟存储系统内是唯一的。而且,当向虚拟存储系统分配逻辑CU或者GDEV时,若不考虑它们的分配目的地存储系统,则有时会将作为逻辑路径目的地的逻辑CU和访问对象的GDEV分给不同的存储系统。
另外,若对多个存储系统分配同一编号的逻辑CU来确立通向这多个存储系统的逻辑路径,则由于MF主计算机均等地使用这些逻辑路径,所以产生被分配了作为访问对象的GDEV的存储系统以外的逻辑CU接受I/O请求的机会。有时在从接受了I/O请求的存储系统向被分配了作为访问对象的GDEV的存储系统传送I/O请求时,在存储系统间的频带窄的情况或者无法直接连接存储系统间的情况下,I/O性能会下降。
因此,本发明的目的在于,以削减在虚拟存储系统内数据传送的方式对存储系统分配逻辑CU和GDEV,提高从主计算机向虚拟存储系统的GDEV的数据访问性能。
为了解决这样的问题,本发明在将物理上的多个存储系统作为结构要素并作为一个虚拟存储系统来提供的横向扩展型存储中,其特征在于,在向虚拟存储系统分配GDEV时,若未分配作为访问GDEV的逻辑路径的确立目的地的逻辑CU,则在已分配的逻辑CU数少或者未使用的存储容量多的存储系统中生成逻辑CU和GDEV。另一方面,若存在已分配了作为逻辑路径的确立目的地的逻辑CU的存储系统,则在该存储系统中生成GDEV。但是,在存储系统的资源不足时,将访问频率低的其他逻辑CU移动至资源丰富的其他存储系统,或者向通信频带足够的其他存储系统追加逻辑CU,并生成卷。
根据上述的结构,能够在主计算机与虚拟存储系统之间以防止输入输出性能变差的方式确立逻辑路径。
发明效果
根据本发明,以削减虚拟存储系统内的数据传送的方式,分配逻辑CU和GDEV,能够提高从主计算机向虚拟存储系统的GDEV的数据访问性能。
附图说明
图1是示出本发明的实施方式的概要的结构框图。
图2是示出实施例1中的计算机系统的结构的框图。
图3是示出本发明的虚拟存储系统的结构信息的图。
图4是示出构成本发明的虚拟存储系统的存储系统的连接信息的图。
图5是示出本发明的虚拟存储系统的逻辑CU分配信息的图。
图6是示出本发明的存储系统的逻辑CU分配信息的图。
图7是示出本发明的存储系统的容量管理信息的图。
图8是示出本发明的存储系统的逻辑CU访问频率管理信息的图。
图9是示出实施例1的存储系统的结构信息的图。
图10是示出实施例1中的GDEV分配目的地的选择处理顺序的流程图。
图11是示出实施例1中的GDEV分配处理顺序的流程图。
图12是示出在接受到实施例1中的逻辑路径生成请求的情况下进行的处理顺序的流程图。
图13是示出在实施例1中的存储系统接受到访问请求的情况下进行的处理顺序的流程图。
图14是示出在接受到实施例1中的逻辑CU控制信息取得请求的情况下进行的处理顺序的流程图。
图15是示出实施例1中的信道路径再连接的处理顺序的流程图。
图16是示出发生了实施例2中的路径故障的虚拟存储系统的逻辑装置的结构例子的图。
图17是示出了在实施例2中的存储系统间发生路径故障时的处理顺序的流程图。
图18是示出在实施例2中的路径故障时的虚拟存储系统的结构信息的图。
图19是示出与实施例3中的资源使用状态相匹配地来移动逻辑CU的处理顺序的流程图。
图20是示出图10的GDEV分配目的地的选择处理顺序中的GDEV分配空间确保处理的流程图。
图21是示出具有实施例4中的本地路由器的存储控制器的概略结构的框图。
具体实施方式
以下,一边参照附图,一边说明本发明的实施方式。
在此之前,使用图1所示的本发明的结构框图来说明与各实施例相关的基本功能的概况。
计算机系统1由虚拟存储系统100、主计算机20(主机或者服务器等)以及逻辑装置分配管理部300构成。虚拟存储系统100是使主计算机20将多个存储系统10的资源看作是同一个存储系统的逻辑上的装置。此外,以下,有时将虚拟存储系统记为“VDKC”,另外,将存储系统记为“RDKC”。
在图1中,虚拟存储系统100由存储系统10A以及存储系统10B构成。在存储系统10中存在存储控制器11,该存储控制器11控制逻辑装置。
在逻辑装置中存在逻辑CU(LCU)110以及全局设备(GDEV)120。逻辑CU110是接受来自主计算机20的逻辑路径的单位。GDEV120是由计算机20识别的卷,并被赋予在虚拟存储系统100内唯一的标识符。
主计算机20保存装置定义信息200、子信道210以及信道路径220。在装置定义信息200中,定义有主计算机20的信道路径220、虚拟存储系统100的逻辑CU110间的路径连接结构以及通过指向逻辑CU110的逻辑路径来访问的全部GDEV120。例如,对每个主计算机20能够定义多至8条信道路径220,对每个虚拟存储系统100能够定义多至256个逻辑CU110,对每个逻辑CU110能够定义多至256个GDEV120。
在多个主计算机20与虚拟存储系统100连接的结构的情况下,为了在虚拟存储系统100侧能够识别与主计算机20连接的逻辑路径,主计算机20能够在虚拟存储系统100中登记路径组230。在图1中,逻辑CU110的LCU2与主计算机20A以及主计算机20B连接,将来自主计算机20A的逻辑路径登记为路径组230A,将来自主计算机20B的逻辑路径登记为路径组230B。主计算机20与虚拟存储系统100间的通信能够并行地使用路径组230内的逻辑路径。
逻辑装置分配管理部300管理多个存储系统10和该多个存储系统10之间的连接方式,并指示存储控制器11生成或者删除逻辑CU110和GDEV120。另外,在各存储系统10中存储有生成的逻辑装置。
其结果是,由于能够使用主计算机20与保存有数据的存储装置之间的路径最短的逻辑路径来处理I/O,所以能够利用多个小规模的存储系统10来构建高性能的虚拟存储系统100。特别是,在将多个廉价的存储系统10结合而成的横向扩展型存储系统中,能够向用户提供高性价比的存储区域。
实施例1
实施例1是如下实施方式:逻辑装置分配管理部300基于作为虚拟存储系统100的结构要素的存储系统10的连接方式,来决定分配给各存储系统10的逻辑CU110和GDEV120,各存储系统10生成逻辑CU110和GDEV120,并处理来自主计算机20的输入输出请求。
图2是示出实施例1中的计算机系统的结构的框图。计算机系统1具有多个存储系统10、至少一个主计算机20以及管理服务器30。
存储系统10与主计算机20、或者存储系统10之间经由网络连接。在主计算机20是主机(MF)的情况下,经由网络来传送信道指令或者传送数据。
存储系统10具有存储控制器11和存储装置17。存储装置17经由通信线路与控制器11连接。
存储控制器11具有处理器12和存储器13,并经由前端接口(以下,将接口简写为“I/F”)14与主计算机20或者不同的存储系统10连接,经由后端I/F15与存储装置17连接,经由管理I/F16与管理服务器30连接。
存储控制器11按照从主计算机20接收到的指令,控制对存储装置17输入输出数据的输入输出处理。另外,使用存储器13的一部分作为用于输入输出处理的缓冲器,由此能够以在比对存储装置17进行读写的时间更短的时间内完成输入输出处理的方式进行控制。将该缓冲器称为高速缓冲存储器(cache)。
处理器12控制存储系统10整体的动作。处理器12执行存储器13中保存的程序,由此存储系统10作为整体来进行各种处理。在存储器13内保存的程序有逻辑CU分配程序、逻辑路径生成程序、GDEV管理程序以及逻辑CU信息控制程序。
存储装置17具有由盘(disk)装置等的物理存储区域构成的逻辑设备(LDEV)170。LDEV170是GDEV120的数据的保存目的地。
主计算机20具有作为输入输出处理专用的系统的信道21以及生成或者删除与存储系统10的逻辑路径的逻辑路径控制程序22。信道21保存由构成定义信息200定义的子信道信息210,并确定主计算机20要访问的GDEV120。
另外,主计算机20执行各种应用程序,在需要输入输出数据时执行输入输出命令,信道21向逻辑CU110发出输入输出命令,并从存储系统10获取输入输出指令的响应数据,其中,该逻辑CU110是访问数据的分配目的地的GDEV120的逻辑路径目的地的逻辑CU。
管理服务器30具有存储器33,该存储器33保存与以下说明的虚拟存储系统相关的表格类。
图3示出本发明的虚拟存储系统的结构信息的一个例子。在管理服务器30的存储器33中保存如下的表格,该表格对构成虚拟存储系统100的存储系统10进行管理,该表格的各条目由虚拟存储系统标识符301和存储系统标识符302~305构成。
在虚拟存储系统标识符301中保存有供主计算机20确定虚拟存储系统100的产品编号,在存储系统标识符302~305中保存有成为虚拟存储系统标识符301所表示的虚拟存储系统100的结构要素的存储系统10的识别信息(存储系统标识符1~4)。在图3中示出由最多4个存储系统10构成的虚拟存储系统100的管理信息,但是并不限制于此,存储系统数也可以是5个以上,在这种情况下保存存储系统标识符的字段数变成5个以上。
图4示出构成本发明的虚拟存储系统的存储系统的连接信息的一个例子。该例子是管理特定信息的表格,其保存在管理服务器30的存储器33中,特定信息是指,表示构成虚拟存储系统100的存储系统10中的直接连接的存储系统10的信息以及表示该直接连接的存储系统10彼此的频带的信息。在表格的行方向的存储系统标识符402~405以及表格的列方向的存储系统标识符412~415中,保存有图3的字段302~305中保存的存储系统标识符(存储系统标识符RDKC1~RDKC4)。而且,在保存有存储系统标识符的字段的行与列相交的字段中,保存对存储系统间是否直接连接等两者间的连接方式进行管理的信息(在图4中表示频带的信息)。
例如,在字段441中保存有表示RDKC1(字段402)与RDKC4(字段415)间的频带是中等程度的“频带中等”。同样地,在字段442中保存有表示RDKC2(字段403)与RDKC4(字段415)之间的频带的信息,另外,在字段443中保存有表示RDKC3(字段404)与RDKC4(字段415)之间的频带的信息。若存储系统间未直接连接,则在这些字段中保存表示未直接连接的信息。在图4中用“-”示出的字段表示由于是同一存储系统间或者存储系统间的组合重复所以是不使用的字段。
图5示出本发明的虚拟存储系统的逻辑CU分配信息的一个例子。该例子是对将虚拟存储系统100的逻辑CU110分配给哪个存储系统10进行管理的表格,其保存在管理服务器30的存储器33中,各条目由虚拟存储系统标识符501、逻辑CU编号502以及存储系统标识符503~505的字段构成。
在虚拟存储系统标识符字段501中保存有供主计算机20确定虚拟存储系统100的产品编号。在逻辑CU编号字段502中保存有逻辑CU的识别编号。在存储系统标识符字段503~505中保存分配有在字段502中保存的逻辑CU的存储系统10的标识符。
条目511表示将虚拟存储系统标识符VDKC1的逻辑CU编号1分配给了存储系统标识符RDKC1。同样地,条目512表示将虚拟存储系统标识符VDKC1的逻辑CU编号2分配给了存储系统标识符RDKC2。进一步地,条目513表示将虚拟存储系统标识符VDKC2的逻辑CU编号1分配给了存储系统标识符RDKC1和RDKC2。
在图5中示出了通过同一个虚拟存储系统标识符对同一个逻辑CU编号分配了最多3个存储系统10,但是并不限制于此,存储系统数量也可以是4台以上,在这种情况下保存存储系统标识符的字段数变成4个以上。另外,在图5中用“-”示出的字段表示由于被分配有逻辑CU的存储系统数在3个以下所以是不使用的字段。
图6示出本发明的存储系统的逻辑CU分配信息的一个例子。该例子是对分配给存储系统10的虚拟存储系统100的逻辑装置进行管理的表格,其保存在管理服务器10的存储器13中,各条目由虚拟存储系统标识符601、逻辑CU编号602、GDEV编号603、存储系统标识符604、LDEV编号605以及容量606各字段构成。
在具有字段605所表示的LDEV编号的LDEV中保存有位于具有字段603所表示的GDEV编号的GDEV中的数据,该GDEV与字段601所表示的虚拟存储系统标识符和字段602所表示的逻辑CU编号对应。在字段606所表示的容量中保存字段603所表示的GDEV的容量。
在用“-”表示字段604时,表示将GDEV分配给保存有该信息的存储系统10内。另一方面,在字段604中保存有存储系统标识符时,表示GDEV的数据被保存于字段604所表示的不同的存储系统的LDEV中。在这种情况下,由于字段605和606的信息由字段604所表示的存储系统来管理,所以此处不使用字段605和606的信息而是用“-”来表示。
图7示出本发明的存储系统的容量管理信息的一个例子。将能够保存虚拟存储系统标识符701所表示的虚拟存储系统100的数据的容量的上限值保存于字段702。在以表格的方式将该容量管理信息保存于存储器13的存储系统10中,确保用于重新写入GDEV120的数据的LDEV区域时,为了GDEV120所属的虚拟存储系统100而确保的区域的合计容量超过字段702的值的情况下,制止数据写入。
图8示出本发明的存储系统的逻辑CU访问频率管理信息的一个例子。该例子是对分配给存储系统10的虚拟存储系统100的逻辑装置进行管理的表格,其保存在各存储系统10内的存储器13中,该表格的各条目由虚拟存储系统标识符801、逻辑CU编号802、GDEV编号803、存储系统标识符804、访问数805以及访问数测量期间806的各字段构成。
将对GDEV编号字段803中保存的GDEV的数据进行了访问的次数保存于字段805,该GDEV与在虚拟存储系统标识符字段801中保存的虚拟存储系统100、逻辑CU编号字段802中保存的逻辑CU对应。在字段806中保存有对字段805所表示的访问次数进行测量的期间。在用“-”表示字段804时,表示将GDEV分配给保存有该信息的存储系统10内。另一方面,在字段804中保存有存储系统标识符时,表示将GDEV的数据保存于字段804所表示的不同的存储系统的LDEV中。在这种情况下,由于字段805和806的信息由字段804所表示的存储系统来管理,所以此处不使用字段805和806的信息而是用“-”来表示。
图9示出本发明的存储系统的结构信息的一个例子。该例子是对计算机系统1所具有的存储系统10进行管理的表格,其保存在各存储系统10内的存储器13中,各条目由存储系统标识符字段901、存储容量字段902、处理器性能字段903以及高速缓冲存储器容量字段904构成。
在存储系统标识符字段901中保存有确定存储系统10的产品编号。在存储容量字段902中保存有字段901所表示的存储系统10的存储装置17的大小。在处理器性能字段903中保存有表示处理器性能的时钟数或者核数。在高速缓冲存储器容量字段904中保存高速缓冲存储器大小。
图10是示出实施例1的GDEV分配目的地的选择处理顺序的流程图。在GDEV分配目的地选择处理中,逻辑装置分配管理部300选择被分配虚拟存储系统100的GDEV120的存储系统10。
首先,在步骤S1010中,从管理者等接收向管理服务器30的GDEV分配请求,逻辑装置分配管理部300接收虚拟存储系统标识符VDKC、逻辑CU编号和GDEV编号。
接着,在步骤S1020中,逻辑装置分配管理部300使用图5的虚拟存储系统的逻辑CU分配信息来判断接收到的逻辑CU编号是否已经被分配给虚拟存储系统。即,若在虚拟存储系统标识符字段501中保存有作为对象的VDKC,在逻辑CU编号字段502中保存有作为对象的逻辑CU的条目,且在字段503~505中的任一者中保存有存储系统标识符,则能够判断为已分配对象逻辑CU。
在步骤S1020中,逻辑装置分配管理部300在判断为未分配对象逻辑CU(否:No)时,在步骤S1030中,执行对已分配的逻辑CU数少或者未使用的存储容量多的存储系统RDKC进行选择的处理。该处理包括:首先,针对逻辑CU数,使用图5的虚拟存储系统的逻辑CU分配信息,来选择在与作为对象的VDKC有关的条目的字段503~505中保存的存储系统标识符最少的RDKC。另外,针对未使用的存储容量,使用各RDKC所具有的图6的存储系统的逻辑CU分配信息,来选择作为与对象的VDKC有关的条目的字段606的GDEV的容量而分配了最少容量的RDKC。
接下来,在步骤S1040中,逻辑装置分配管理部300向在先前的步骤S1030中选择出的存储系统RDKC请求分配VDKC的逻辑CU和GDEV。接受到步骤S1040的请求的RDKC执行图11所示的逻辑CU分配处理程序LCUAP。针对该逻辑CU分配处理程序LCUAP,在后文说明。
然后,逻辑装置分配管理部300当从执行了上述分配处理的存储系统RDKC接收到逻辑CU和GDEV的分配成功这一情况时,在步骤S1050中更新图5的虚拟存储系统的逻辑CU分配信息。此处,在字段501中追加VDKC的条目,并在字段502中保存作为对象的逻辑CU编号,在字段503中保存作为对象的RDKC。在执行了上述分配处理的存储系统RDKC中针对逻辑CU和GDEV的分配失败了的情况下,逻辑装置分配管理部300在步骤S1030中重新选择不同的RDKC,并执行步骤S1040。
另一方面,逻辑装置分配管理部300当在步骤S1020中判断为已分配对象CU(是:Yes)时,在步骤S1021中判断作为分配目的地的存储系统RDKC是否有多个。这要使用图5的虚拟存储系统的逻辑CU分配信息。即,若有在虚拟存储系统标识符字段501中保存有作为对象的VDKC,在逻辑CU编号字段502中保存有作为对象的逻辑CU的条目,且在字段503~505中保存有至少2个存储系统RDKC的标识符,则能够判断为对象逻辑CU已经被分配给多个存储系统RDKC。
在步骤S1021中,当逻辑装置分配管理部300判断为未将对象逻辑CU分配给多个存储系统RDKC(否:No)时,在步骤S1023中,向已分配对象逻辑CU的存储系统RDKC请求追加分配GDEV。
另一方面,逻辑装置分配管理部300当在步骤S1021中判断为对象逻辑CU的分配目的地RDKC有多个(是:Yes)时,在步骤S1022中执行对已分配的逻辑CU数少的或者未使用的存储容量多的存储系统RDKC进行选择的处理。该处理包括,首先,针对逻辑CU数,使用图5的虚拟存储系统的逻辑CU分配信息,将保存有作为对象的VDKC和逻辑CU编号的条目的字段503~505中保存的存储系统标识符与其他条目的字段503~505中保存的条目数相比较,选择最少的RDKC。另外,针对未使用的存储容量,使用各存储系统RDKC所具有的图6的存储系统的逻辑CU分配信息,来选择作为保存有作为对象的VDKC和逻辑CU编号的条目的字段606的GDEV的容量而分配最少容量的RDKC。
接下来,逻辑装置分配管理部300执行上述的步骤S1023,从存储系统RDKC接收GDEV的分配结果,在步骤S1023中的GDEV的分配失败时,逻辑CU的分配目的地还有其他的情况下,重复步骤S1022和步骤S1023。
接着,在步骤S1024中,逻辑装置分配管理部300判断是否能够将新的GDEV追加到已分配逻辑CU的存储系统RDKC中。若GDEV的追加成功(是:Yes),则在步骤S1075中,向分配有对象逻辑CU的全部存储系统10通知将该对象逻辑CU的对象GDEV分配给上述选择的RDKC这一情况。接受步骤S1075的通知的存储系统10向图6的存储系统的逻辑CU分配信息追加条目,在字段601中保存VDKC,在字段602中保存对象逻辑CU编号,在字段603中保存对象GDEV编号,在字段604中保存RDKC。然后,逻辑装置分配管理部300在步骤S1050中更新管理信息,结束处理。
另一方面,逻辑装置分配管理部300当在步骤S1024中判断为GDEV的分配失败(否:No)时,在步骤S1060中执行GDEV分配空间确保处理。
针对该步骤1060的GDEV分配空间确保处理的流程,使用图20进行说明。
逻辑装置分配管理部300在步骤S2010中查询在分配有作为对象的逻辑CU的存储系统RDKC中是否有高访问频率的GDEV。接受了该查询的RDKC在图8的存储系统的逻辑CU访问频率管理信息中,针对字段801是对象VDKC且字段802是对象逻辑CU的条目,根据由该字段805和字段806表示的访问频率是否超过预先决定的阈值来进行判断。
逻辑装置分配管理部300当在步骤S2010中判断为没有被分配了高访问频率的GDEV的存储系统RDKC(否:No)时,在步骤S2020中选择追加逻辑CU的RDKC。其被视为,由于无论哪个GDEV的访问频率都不高,所以允许在存储系统间传送如下的I/O请求,并重新追加分配逻辑CU的RDKC,该I/O请求是基于贯穿逻辑CU而配置于多个RDKC这一情况而产生的。此处也是选择例如VDKC的逻辑CU的分配数较少的RDKC。
另外,也能够使用图4的构成虚拟存储系统的存储系统的连接信息,来选择与已经分配给VDKC的RDKC之间的频带高的RDKC。例如,在将VDKC分配给RDKC1和RDKC2的情况下,能够选择RDKC3或者RDKC4作为追加的RDKC时,在这两个RDKC中选择与RDKC1和RDKC2之间的频带高的RDKC3。
接下来,在步骤S2030中,逻辑装置分配管理部300向在先前的步骤S2020中选择出的存储系统RDKC请求追加逻辑CU并分配GDEV。
另一方面,逻辑装置分配管理部300当在步骤S2010中判断为有高访问频率的GDEV(是:Yes)时,在步骤S2040中判断是否将仅具有低访问频率的GDEV的其他逻辑CU分配给了RDKC。
逻辑装置分配管理部300当判断为有低访问频率的其他逻辑CU(是:Yes)时,在步骤S2050中选择用于转移该其他逻辑CU的GDEV的追加目的地RDKC。此处,判断为分配给该其他逻辑CU的GDEV的性能要求不高,将其他逻辑CU分散配置于多个RDKC并将GDEV驱逐至其他RDKC,由此来确保分配对象的GDEV的空间。
接着,逻辑装置分配管理部300在步骤S2060中向追加目的地RDKC请求追加其他逻辑CU并转移GDEV,在步骤S2070中转移其他逻辑CU的GDEV,由此空出作为分配对象的GDEV的空间。
另一方面,当在步骤S2040中,逻辑装置分配管理部300判断为没有低访问频率的其他逻辑CU(否:No),在步骤S2080中,在分配对象逻辑CU内选择访问频率低的GDEV和转移目的地RDKC。这是因此,通过将访问频率低的GDEV转移至其他RDKC来作为外部连接卷,来确保分配对象GDEV的空间。
此处,从已经分配了对象逻辑CU的RDKC获取访问频率信息,以访问频率最低的GDEV作为转移对象。另外,就转移目的地而言,选择例如逻辑CU的分配数少的RDKC,或者从RDKC获取已分配GDEV的合计容量信息,选择分配容量最少的RDKC。
接着,逻辑装置分配管理部300在步骤S2090中请求将访问频率低的GDEV转移至选择出的RDKC,在步骤S2095中向访问频率低的GDEV的转移源RDKC请求转移GDEV,由此空出分配对象的GDEV的空间。
从而,当确保了GDEV分配空间时,在步骤S2030中,逻辑装置分配管理部300向确保了空间的RDKC请求分配逻辑CU和GDEV。
通过以上所述,能够选择分配虚拟存储系统100的GDEV120的存储系统10。
图11是示出实施例1的GDEV分配处理顺序的流程图。这是逻辑CU分配程序LCUALP(图2)进行的处理,该处理是在存储系统10的存储控制器11从逻辑装置分配管理部300接受逻辑CU110的分配请求时开始的。
首先,在步骤S1110中,存储控制器11从逻辑装置分配管理部300接收虚拟存储系统标识符VDKC、逻辑CU编号、GDEV编号和分配给GDEV的大小。
接着,在步骤S1120中,存储控制器11判断是否由于追加指定的大小而导致分配给VDKC的容量产生不足。此处,使用图6的存储系统的逻辑CU分配信息和图7的存储系统的容量管理信息。存储控制器11将字段601是对象VDKC的条目的字段606的容量相加,判断对相加得到的容量追加指定的大小得到的值是否超过字段701是对象VDKC的条目的字段702的上限值。
存储控制器11在步骤S1120中判断为超过容量即判断为容量不足(是:Yes)时,在步骤S1125中向请求源返回未分配GDEV这一情况,并结束处理。
另一方面,存储控制器11在步骤S1120中判断为不超过容量即判断为不是容量不足(否:No)时,在接下来的步骤S1130中,判断是否已经将对象逻辑CU分配给存储系统10。此处,存储控制器11使用图6的存储系统的逻辑CU分配信息,调查在字段601是对象VDKC的条目的字段602中是否保存有对象逻辑CU编号。
存储控制器11在步骤S1130中判断为已分配逻辑CU(是:Yes)时,在步骤S1160中将对象GDEV分配给LDEV170,向图6的存储系统逻辑CU分配信息追加对象VDKC的条目,在字段602中保存对象逻辑CU编号,在字段603中保存对象GDEV编号,在字段605中保存分配目的地LDEV编号,在字段606中保存对象GDEV的大小。
另一方面,存储控制器11在步骤S1130中判断为逻辑CU未分配(否:No)时,在步骤S1140中分配对象逻辑CU。此处,向图6的存储系统的逻辑CU分配信息追加条目,在字段601中保存对象VDKC,在字段602中保存对象逻辑CU编号。另外,由于逻辑CU110对表示高速缓冲存储器的使用方法或者运行状态的控制信息进行管理,所以存储控制器11在存储器13或者LDEV170中确保用于保存该控制信息的区域。
接下来,在步骤S1150中,存储控制器11向主计算机20通知能够追加通向VDKC的逻辑CU的逻辑路径这一情况。此处,使用例如CU启动重构功能(ControlUnitInitiatedReconfiguration:CUIR)。注意到能够追加通向逻辑CU的路径的主计算机20能够利用逻辑路径控制程序22(图2),来执行将新的通向逻辑CU的逻辑路径设为有效的指令。
最后,在步骤S1160中,存储控制器11执行上述的GDEV的分配信息的追加保存并结束处理。
通过以上方式,能够将逻辑CU110和GDEV120分配给存储系统10。
图12是示出在接受到实施例1中的逻辑路径生成请求的情况下进行的处理顺序的流程图。这是逻辑路径生成程序LPATHP(图2、图19)的处理,该处理是在存储系统10的存储控制器11从主计算机20接受到生成通向逻辑CU110的逻辑路径的请求时开始的。
首先,在步骤S1210中,存储控制器11从主计算机20接收生成逻辑路径的虚拟存储系统标识符和逻辑CU编号。
接下来,在步骤S1220中,存储控制器11判断是否给自己分配有作为对象的虚拟存储系统标识符的逻辑CU编号。
存储控制器11在步骤S1220中判断为未分配对象逻辑CU(否(No))时,在步骤S1225中向主计算机20返回无法生成逻辑路径这一情况。
另一方面,存储控制器11在步骤S1220中判断为分配有对象逻辑CU(是:Yes)时,在步骤S1230中处理通常的逻辑路径设定。
通过以上方式,仅在给存储系统10分配有虚拟存储系统的逻辑CU的情况下,才能够生成逻辑路径。
图13是示出在实施例1中的存储系统10接受到访问请求的情况下进行的处理顺序的流程图。这是GDEV管理程序GDEVP(图2、图19)的处理,该处理是在存储系统10的存储控制器11从主计算机20接受到向GDEV120的输入输出请求时开始的。
首先,在步骤S1310中,接受了向GDEV120的输入输出请求的存储控制器11取得作为该输入输出请求的访问目的地的虚拟存储系统标识符、逻辑CU编号和GDEV编号。
接下来,在步骤S1320中,存储控制器11判断是否将成为输入输出请求的对象的逻辑CU分配给存储系统10。
存储控制器11在步骤S1320中判断为未分配对象逻辑CU(否:No)时,在步骤S1330中向主计算机20返回输入输出错误。此处,存储控制器11向主计算机发送表示检测到因未分配逻辑CU而引起的设备异常状态这一情况的设备状态字节,并结束GDEV访问请求处理。
另一方面,存储控制器11在步骤S1320中判断为分配有对象逻辑CU(是:Yes)时,在接下来的步骤S1340中判断是否分配有对象GDEV。此处,使用图6的存储系统的逻辑CU分配信息。在字段601中保存有VDKC,在字段602中保存有对象逻辑CU编号,在字段603中保存有对象GDEV编号,在字段605中保存有分配目的地LDEV编号的情况下,存储控制器11判断为分配有对象GDEV。
存储控制器11在步骤S1340中判断为分配有对象GDEV(是:Yes)时,在步骤S1350中访问对象GDEV的分配目的地的LDEV。
接下来,在步骤S1360中,存储控制器11更新图8的存储系统的逻辑CU访问频率管理信息中的对象GDEV的条目的字段805(访问数)。
另一方面,存储控制器11在步骤S1340中判断为未分配对象GDEV(否:No)时,在步骤S1370中取得向分配有对象GDEV的存储系统10(RDKC)的路径。此处,取得图6的存储系统的逻辑CU分配信息中的对象GDEV的条目的字段604(存储系统标识符)中保存的存储系统10。
接下来,在步骤S1380中,存储控制器11向分配有对象GDEV的存储系统10(RDKC)发送输入输出请求。此处的输入输出请求是指包含路径组信息和在步骤S1310取得的信息在内的GDEV访问请求指令。
从接受到输入输出请求的RDKC向分配有GDEV的RDKC发送指令,分配有GDEV的RDKC向主计算机直接响应。在直接响应的情况下,使用路径组230的空闲逻辑路径将访问结果发送至信道21。
另一方面,在分配有GDEV的RDKC中没有路径组230的逻辑路径的情况下,接受到输入输出请求的RDKC访问GDEV,并向主计算机响应访问结果。在这种情况下,逆向探索输入输出请求进入的路径(route),经由通过输入输出请求的RDKC向主计算机返回响应。
通过以上方式,能够在分配了对象GDEV的存储系统10中处理通向GDEV的访问请求。
图14是示出在接受到实施例1的逻辑CU控制信息取得请求的情况下进行的处理顺序的流程图。这是逻辑CU信息控制程序LCUCP(图2)的处理,该处理是在存储系统10的存储控制器11从主计算机20收到逻辑CU110的控制信息取得请求时开始的。控制信息取得请求是指例如READSUBSYSTEMDATA指令。
首先,在步骤S1410中,存储控制器11从主计算机20接受控制信息取得对象的逻辑CU编号。
接下来,在步骤S1420中,存储控制器11从对象逻辑CU分配目的地的各存储系统10取得对象逻辑CU的控制信息。此处,存储控制器11使用图6的存储系统的逻辑CU分配信息,取得分配有对象逻辑CU的其他存储系统10,将逻辑CU控制信息取得请求传送至这些存储系统10的全部。
接着,在步骤S1430中,存储控制器11综合从各存储系统10取得的全部对象逻辑CU控制信息。此处的综合是指例如将从各存储系统10取得的逻辑CU的运行管理信息相加。
最后,在步骤S1440中,存储控制器11向主计算机20返回综合后的逻辑CU控制信息,结束处理。
通过以上方式,存储控制器11能够将分配给多个存储系统10的逻辑CU的控制信息作为虚拟存储系统的一个逻辑CU的控制信息来传送给主计算机20。
图15是示出实施例1的信道路径再连接的处理顺序的流程图。信道路径再连接是指,在按照作为主机(MF)的主计算机的输入输出命令来执行指令链的中途,暂时切断逻辑路径,在下一次再连接时,与包含发出了命令的逻辑路径在内的同一路径组230内的任意的逻辑路径再连接,以能够继续执行指令链的功能。
例如,在盘的旋转等待结束时,只要路径组230内的至少一个逻辑路径不是正在工作中就能够与信道21再连接,能够开始处理接下来的指令,因此,能够缩短直到输入输出完成为止的时间。
首先,在步骤S1510中,主计算机20取得切断之前的逻辑路径的路径组230。此处,存储系统10保持有切断中的输入输出请求的路径组230的信息。
接下来,在步骤S1520中,主计算机20判断在正在进行该处理的存储系统10中是否设定有在先前的步骤S1510中取得的路径组230的逻辑路径。
当主计算机20在步骤S1520中判断为有路径组230的逻辑路径(是:Yes)时,在接下来的步骤S1530中判断在这些逻辑路径中是否有空闲的。
在主计算机20在步骤S1530中判断为有空闲的逻辑路径(是:Yes)的情况下,在步骤S1550中,使用该逻辑路径从正在进行该处理的存储系统10向信道21发送再连接请求。
另一方面,在主计算机20在步骤S1530中判断为没有空闲的逻辑路径(否:No)的情况下,在步骤S1540中,等到路径组230的逻辑路径中的某一个空出,然后当出现空闲时执行步骤S1550。
另外,主计算机20在步骤S1520中在存储系统10内没有路径组230的逻辑路径(否:No)的情况下,在步骤S1560中选择具有同一路径组230的逻辑路径的其他存储系统10(RDKC)。
接下来,在步骤S1570中,主计算机20向在先前的S1560中选择出的其他存储系统10(RDKC)发送信道路径再连接请求。此处,主计算机20从其他存储系统10(RDKC)接受到信道路径再连接失败的联络的情况下,在步骤S1560中选择再一个其他存储系统10(RDKC)并重复步骤S1570。
通过以上方式,就在虚拟存储系统100中的信道路径再连接而言,主计算机20不利用接受了输入输出请求的存储系统10的逻辑路径,而是利用被分配了访问目的地的GDEV120存储系统10的逻辑路径来再连接,由此能够缩短到开始进行接下来的指令的处理为止的时间。
如以上所述,根据实施例1,由多个存储系统构成虚拟存储系统,以削减虚拟存储系统内的数据传送的方式分配虚拟存储系统的逻辑CU和GDEV,能够从主计算机访问该虚拟存储系统的逻辑CU和GDEV。
实施例2
实施例2是在实施例1或者后述的实施例4中的计算机系统的结构中当存储系统间的路径发生故障时防止虚拟存储系统的输入输出性能变差的实施方式。
图16是示出发生了实施例2中的路径故障的虚拟存储系统的逻辑结构例的图。RDKC1~RDKC4构成虚拟存储VDKC2。
正常时的结构例(a)示出从主计算机向RDKC1和RDKC2分配逻辑CU2这一情况。在由RDKC1接受到的输入输出请求的访问目的地GDEV位于RDKC2的情况下,从RDKC1向RDKC2传送输入输出请求。
路径故障时的结构例(b)示出,由于RDKC1与RDKC2之间的路径发生了故障,所以将由RDKC1接受到的输入输出请求经过RDKC3传送至访问目的地GDEV所在的RDKC2。在这种情况下,RDKC1从连接于RDKC1的RDKC3和RDKC4中选择一个,并向选择出的RDKC3请求向RDKC2的逻辑CU2的GDEV传送。若RDKC3与作为传送目的地的RDKC2是直接连接的,则接受了从RDKC1向RDKC2传送的RDKC3向RDKC2传送。若RDKC2不是直接连接的,则向传送源以及与经过的RKDC不同的RDKC请求与传送源RDKC1以及经过的RDKC识别信息RDKC3一起依次传送至RDKC2。
CU移动后的结构例(c)示出将逻辑CU2移动至RDKC3和RDKC4,通过这些逻辑路径来接受输入输出请求这一情况。从逻辑CU2到访问目的地GDEV的某个RDKC1或者RDKC2,能够使用直接连接的RDKC间路径。
图17是示出实施例2中的存储系统(RDKC)间的路径故障发生时的处理顺序的流程图。
首先,在步骤S1700中存储系统10检测路径故障。此处,例如,图16的RDKC1检测与RDKC2之间的路径故障。
接下来,在步骤S1705中,RDKC1向逻辑装置分配管理部300通知在与RDKC2间的路径上发生了故障。
接着,在步骤S1710中,逻辑装置分配管理部300接收该路径故障的通知。以后的步骤变成逻辑装置分配管理部300中的处理。
接下来,在步骤S1720中,逻辑装置分配管理部300在图4的构成虚拟存储系统的存储系统的连接信息中保存路径故障信息。此处,作为RDKC1与RDKC2之间的路径故障的情况,逻辑装置分配管理部300将字段402的RDKC1的列与字段413的RDKC2的行相交的字段的值变更为表示故障的信息。其结果是,构成虚拟存储系统的存储系统的连接信息被变更为图18所示的在路径故障时的虚拟存储系统的结构信息(在图18中示出在从字段402的RDKC1起始的虚线箭头所表示的字段中用删除线进行了变更)。
接着,在步骤S1730中,逻辑装置分配管理部300判断是否有受到存储系统间的路径故障的影响的逻辑CU。此处,逻辑装置分配管理部300使用图5的虚拟存储系统的逻辑CU分配信息,来判断是否是通过发生了故障的路径连接的双方的存储系统中生成的逻辑CU。由于在字段503~字段505中存在保存有RDKC1和RDKC2的条目513,所以根据在字段501和字段502中保存的信息,判断为VDKC2的逻辑CU编号2的逻辑CU受到路径故障的影响。
在步骤S1730中,逻辑装置分配管理部300当判断为没有受到影响的逻辑CU(否:No)时,结束处理。
另一方面,逻辑装置分配管理部300当在步骤S1730中判断为存在受到影响的逻辑CU(是:Yes)时,在步骤S1740中选择与受到影响的逻辑CU所位于的存储系统直接连接且未受到路径故障的影响的存储系统。在图18的例子中,已知与RDKC1直接连接的存储系统是RDKC3和RDKC4这两个。另外,由于已知无论RDKC3和RDKC4中的哪一个都与被分配有逻辑CU编号为2的逻辑CU的RDKC2直接连接,所以它们都是作为逻辑CU的移动目的地的候选(利用图18的实线箭头来表示RDKC3与RDKC1直接连接,以及表示RDKC3与RDKC2直接连接)。
接着,在步骤S1750中,逻辑装置分配管理部300使用存储系统间的频带信息来决定逻辑CU编号为2的逻辑CU的移动目的地存储系统。例如,逻辑装置分配管理部300决定将位于RDKC1的逻辑CU编号为2的逻辑CU移动至与RDKC1之间的频带高的RDKC3,将位于RDKC2的逻辑CU编号为2的逻辑CU移动至剩下的RDKC4。
接下来,在步骤S1760中,逻辑装置分配管理部300向在先前的步骤S1750中选择出的移动目的地存储系统请求追加逻辑CU。此处,接受到请求的移动目的地存储系统通过逻辑CU分配处理程序LCUALP(图2)来追加逻辑CU(图11的处理)。
而且,在步骤S1770中,逻辑装置分配管理部300向与故障路径连接的存储系统请求删除逻辑CU。此处,接受到请求的移动源存储系统删除逻辑CU。例如,RDKC1删除逻辑CU编号为2的逻辑CU,在图6和图8中将VDKC2的条目的逻辑CU编号是“2”的字段变更为表示“2(在此删除)”的信息。
接着,在步骤S1780中,逻辑装置分配管理部300更新图5的虚拟存储系统的逻辑CU分配信息。例如,逻辑装置分配管理部300从条目513的字段503中删除RDKC1,取而代之地保存RDKC3,从条目513的字段504中删除RDKC2,取而代之地保存RDKC4。
通过以上方式,能够将受到路径故障的影响的逻辑CU移动至与具有GDEV的存储系统直接连接的存储系统。另外,还能够通过将GDEV转移至逻辑CU的移动目的地存储系统,进一步提高性能。
以这种方式,根据实施例2,在存储系统间的路径故障发生时,能够变更逻辑CU的分配,以避免虚拟存储系统的输入输出性能变差。
实施例3
实施例3是用于在实施例1或者后述的实施例4中检测虚拟存储系统的瓶颈并将已经被分配给存储系统的逻辑CU移动至其他存储系统的实施方式。逻辑装置分配管理部300使逻辑CU110的配置与存储系统10的负荷相匹配,将逻辑CU110分配给构成虚拟存储系统的多个存储系统10。
图19是示出与实施例3中的资源使用状态相匹配地来移动逻辑CU的处理顺序的流程图。
首先,在步骤S1910中,逻辑装置分配管理部300选择检查资源使用状态的虚拟存储系统100。此处,选择在图3的虚拟存储系统的结构信息的字段301中保存的虚拟存储系统标识符VDKC。
接下来,在步骤S1915中,逻辑装置分配管理部300从构成在先前的步骤S1910中选择的VDKC的存储系统10中取得VDKC的资源使用率。此处,逻辑装置分配管理部300从图3的虚拟存储系统的结构信息的VDKC的条目的字段302~305中保存的存储系统10中进行收集。
接着,在步骤S1920中,逻辑装置分配管理部300使用在先前的步骤S1915中取得的资源使用率,来检测高负荷的资源。在接下来的步骤S1921中,逻辑装置分配管理部300判断并决定减轻检测出的负荷高的资源中的哪一个负荷。例如,若分配了逻辑CU的RDKC数是一个,则决定减轻主计算机20与存储系统10之间的前端I/F14的负荷。另一方面,在分配了逻辑CU的RDKC数是2个以上的情况下,则决定减少RDKC数最多的逻辑CU的、负荷最高的RDKC之间的数据传送。
其结果是,接着,在步骤S1925中,逻辑装置分配管理部300判断是否决定了减轻主计算机20与存储系统10之间的前端I/F14的负荷,若不减轻主计算机20与存储系统10之间的负荷(否:No),则进入步骤S1945。另一方面,若逻辑装置分配管理部300判断为减轻主计算机20与存储系统10之间的负荷(是:Yes),则在步骤S1930中,选择能够追加被分配给存储系统10的逻辑CU110的其他存储系统10(以下,简称“RDKC”)。
此处,使用图3的虚拟存储系统的结构信息和图5的虚拟存储系统的逻辑CU分配信息,逻辑装置分配管理部300从被分配给VDKC的RDKC中选择未分配有逻辑CU的RDKC。在符合的RDKC有多个的情况下,使用图4的RDKC间连接信息和图9的存储系统的结构信息来进行选择。选择基准是,RDKC间的频带(图4)以及处理器性能2003和高速缓冲存储器容量2004(图9)足够。
接下来,在步骤S1935中,逻辑装置分配管理部300向在先前的步骤S1930中选择出的RDKC请求追加逻辑CU。接受到该请求的RDKC处理逻辑CU分配处理程序LCUALP(图2)来分配逻辑CU(图11的处理),并向图6以及图8的各信息追加逻辑CU。
接着,在步骤S1940中,逻辑装置分配管理部300向被分配有追加的逻辑CU的其他RDKC通知在先前的步骤S1935中追加了逻辑CU这一情况。例如,逻辑装置分配管理部300在将VDKC2的逻辑CU2追加至RDKC3的情况下,向原本被分配了逻辑CU2的RDKC1和RDKC2发出通知。接受到了该通知的RDKC向图6以及图8的各信息追加条目,在字段601和801中保存VDKC,在字段602和802中保存逻辑CU编号。另外,虽然保存追加至字段604的RDKC的标识符,但是由于未向追加的RDKC分配GDEV,所以字段603和803、字段605和805以及字段606和806是空信息。
接下来,在步骤S1945中,逻辑装置分配管理部300判断是否决定了减轻RDKC间的前端I/F14的负荷。此处,逻辑装置分配管理部300当判断为不减轻RDKC间的负荷(否:No)时,经过在步骤S1975中进行的后述的信息更新后结束处理。另一方面,逻辑装置分配管理部300在判断为减轻RDKC间的负荷(是:Yes)的情况下,在步骤S1950中,判断是否有分配给由高负荷的前端I/F14连接的两个RDKC的某个逻辑CU120。此处,逻辑装置分配管理部300使用图5的虚拟存储系统的逻辑CU分配信息来进行判断。
逻辑装置分配管理部300若在步骤S1950中判断为没有被分配给两个RDKC的逻辑CU120(否:No),则经过在步骤S1975中进行后述的信息更新后结束处理。另一方面,逻辑装置分配管理部300若在步骤S1950中判断为有分配给两个RDKC的逻辑CU120(是:Yes),则在步骤S1955中,选择能够汇集逻辑CU的RDKC。此处,逻辑装置分配管理部300从由高负荷的前端I/F14连接的RDKC中选择如下的RDKC:主计算机20与RDKC之间的前端I/F14的负荷不高,GDEV分配容量的余量多,根据图9,处理器性能和高速缓冲存储器容量足够。
接下来,在步骤S1960中,逻辑装置分配管理部300判断是否能够选择在先前的步骤S1955中符合条件的RDKC。在无法选择RDKC(否:No)时,由于即使汇集逻辑CU也没有性能提高的前景,所以逻辑装置分配管理部300经过在步骤S1975中进行后述的信息更新后结束处理。另一方面,逻辑装置分配管理部300在能够选择RDKC(是:Yes)时,在步骤S1965中,向选择出的RDKC请求从其他RDKC转移GDEV。接受到该请求的RDKC确保对转移过来的GDEV的数据进行保存的LDEV,更新图6的字段604~606和图8的字段804的各信息。
接着,在步骤S1970中,逻辑装置分配管理部300向转移源RDKC请求将逻辑CU和GDEV转移至集成目的地RDKC。接受到该请求的转移源RDKC将GDEV的数据复制到集成目的地RDKC,并从图6和图8的各信息中删除转移了的逻辑CU的条目。
最后,在步骤S1975中,逻辑装置分配管理部300更新图5的虚拟存储系统的逻辑CU分配信息,然后结束处理。此处,逻辑装置分配管理部300从汇集了的逻辑CU的条目的字段503~505中删除转移源RDKC的信息。
如以上所述,根据实施例3,能够与前端I/F14的负荷相匹配地来变更逻辑CU和GDEV的分配,提高虚拟存储系统的输入输出性能。
实施例4
实施例4的存储系统是如下实施方式:使实施例1的构成虚拟存储系统100的存储系统10的存储控制器11保存数据通信单元19,在数据通信单元19之间进行数据传送,由此提高虚拟存储系统100的输入输出性能。另外,在实施例4的存储系统中也执行基于实施例1的图10~图15所示的各流程图、以及实施例2~实施例3的图17和图19所示的各流程图的处理。
图21是示出具有实施例4中的数据通信单元19的存储控制器11的概略结构的框图。
数据通信单元19具有:与前端I/F14连接的本地路由器(localrouter)190、与处理器12及其他存储系统连接的开关191、缓冲器192。本地路由器190对前端I/F14与缓冲器192之间的数据传送、缓冲器192与处理器12之间的数据传送以及缓冲器192与其他存储系统10之间的数据传送进行控制。
缓冲器192保存逻辑路径生成程序LPATHP以及GDEV管理程序GDEVP,该逻辑路径生成程序LPATHP处理逻辑路径生成请求,该GDEV管理程序GDEVP处理GDEV120的访问请求,该逻辑路径生成程序LPATHP和该GDEV管理程序GDEVP在实施例1中被保存于存储控制器11的存储器13。
本地路由器190在从前端I/F14接受到向虚拟存储系统100的逻辑路径生成请求时,执行逻辑路径生成程序LPATHP,来判断是否被分配了作为逻辑路径生成对象的逻辑CU110,若未被分配则返回无法生成逻辑路径。
另外,本地路由器190当从前端I/F14接受到向虚拟存储系统100的输入输出请求时,执行GDEV管理程序GDEVP,来判断访问目的地的逻辑CU110和GDEV120的分配目的地是LDEV还是其他RDKC,若是其他RDKC则向其存储控制器11传送输入输出请求。
如以上所述,根据实施例4,由于取代存储控制器11的处理器12而是利用本地路由器190来处理逻辑路径生成请求以及GDEV输入输出请求,所以在数据通信单元之间向分配给其他存储系统的逻辑CU传送数据。通过这样,能够减轻存储控制器11的处理器12的负荷,因此能够提高虚拟存储系统的性能。
附图标记说明
1计算机系统
10存储系统
11存储控制器
12处理器
13、33存储器
14前端I/F
15后端I/F
16管理I/F
17存储装置
19数据通信单元
20主计算机
21信道
30管理服务器
100虚拟存储系统
110逻辑控制单元(逻辑CU)
120全局设备(GDEV)
170逻辑设备(LDEV)
190本地路由器
200装置定义信息
210子信道
220信道路径标识符
230路径组
300逻辑装置分配管理部
Claims (14)
1.一种计算机系统,其特征在于,具有:
多个存储系统,经由网络与至少一台主计算机连接;和
逻辑装置分配管理部,将逻辑控制单元以及所述主计算机经由该逻辑控制单元识别的卷分配给由多个所述存储系统构成的虚拟存储系统,所述逻辑控制单元是接受来自所述主计算机的逻辑路径的单位,
所述逻辑装置分配管理部在请求分配所述卷时,基于向所述虚拟存储系统分配所述逻辑控制单元的分配信息,向已分配的逻辑控制单元数少或者未使用的存储容量多的存储系统,请求分配所述逻辑控制单元以及生成所述卷。
2.如权利要求1所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在所述逻辑控制单元已分配给所述虚拟存储系统的情况下,向构成该虚拟存储系统的存储系统请求生成所述卷。
3.如权利要求2所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在构成所述已分配的虚拟存储系统的存储系统是多个的情况下,选择已分配的逻辑控制单元数少或者未使用的存储容量多的存储系统。
4.如权利要求1所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在被请求了生成所述卷的存储系统的未使用的存储容量不足以生成所述卷的情况下,将该存储系统内的负荷较低的其他逻辑CU以及卷移动至其他存储系统。
5.如权利要求1所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在已分配有所述逻辑控制单元的存储系统的未使用的存储容量不足以生成所述卷的情况下,向未分配所述逻辑控制单元的存储系统,请求将该已分配有所述逻辑控制单元的存储系统内的访问频率低的卷转移至该未分配所述逻辑控制单元的存储系统。
6.如权利要求1所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在已分配有所述逻辑控制单元的所述存储系统的未使用的存储容量不足以生成所述卷的情况下,向多个所述存储系统间的频带足够的存储系统,请求追加同一个所述逻辑控制单元以及生成所述卷。
7.如权利要求1所述的计算机系统,其特征在于,
多个所述存储系统各自当收到生成所述逻辑路径的请求时,在作为生成该逻辑路径所通向的对象的所述逻辑控制单元未分配给各存储系统自身的情况下,不接受该请求。
8.如权利要求1所述的计算机系统,其特征在于,
多个所述存储系统各自当收到向所述卷的输入输出请求时,判断该请求对象卷以及与该请求对象卷对应的逻辑控制单元是否分配给各存储系统自身,
在未分配所述逻辑控制单元的情况下,作为输入输出错误,
在虽然分配了所述逻辑控制单元但是未分配所述请求对象卷的情况下,将所述输入输出请求传送至分配有所述请求对象卷的存储系统。
9.如权利要求1所述的计算机系统,其特征在于,
多个所述存储系统各自当从所述主计算机接收到所述逻辑控制单元的控制信息的取得请求时,也向分配有作为该请求的对象的逻辑控制单元的其他存储系统传送该请求,收集并综合分配有作为该请求的对象的逻辑控制单元的全部存储系统的所述控制信息,并返回至所述主计算机。
10.如权利要求1所述的计算机系统,其特征在于,
所述逻辑装置分配管理部根据所述虚拟存储系统的资源使用率的收集信息,检测在所述主计算机与多个所述存储系统之间资源使用率高的存储系统,针对分配给该检测出的存储系统的逻辑控制单元,向未被分配该逻辑控制单元且资源使用率有富余的其他存储系统请求将该逻辑控制单元追加至该其他存储系统,
或者,检测在多个所述存储系统彼此之间资源使用率高的存储系统,为了将被分配给该检测出的存储系统双方的逻辑控制单元汇集到资源使用率较低的存储系统,向资源使用率较高的存储系统请求删除该逻辑控制单元。
11.如权利要求10所述的计算机系统,其特征在于,
所述逻辑装置分配管理部在将所述逻辑控制单元汇集到所述资源使用率较低的存储系统时,向所述存储系统双方请求将分配给所述资源使用率较高的存储系统的卷转移至所述资源使用率较低的存储系统。
12.一种计算机系统,其特征在于,具有:
至少一台主计算机;
网络;
多个存储系统,经由所述网络与所述主计算机连接;和
逻辑装置分配管理部,将逻辑控制单元以及所述主计算机经由该逻辑控制单元识别的卷分配给由多个所述存储系统构成的虚拟存储系统,所述逻辑控制单元是接受来自所述主计算机的逻辑路径的单位,
所述逻辑装置分配管理部接收同一虚拟存储系统内的存储系统间的路径故障的通知,
在所述路径故障位于分配了同一逻辑控制单元的存储系统之间的情况下,向在所述同一虚拟存储系统内不受所述路径故障的影响的存储系统,请求将所述同一逻辑控制单元移动至该存储系统。
13.一种逻辑装置分配方法,将逻辑控制单元以及主计算机经由该逻辑控制单元识别的卷分配给由多个存储系统构成的虚拟存储系统,所述逻辑控制单元是接受来自所述主计算机的逻辑路径的单位,所述逻辑装置分配方法的特征在于,包括:
对于分配所述卷的请求,参照向所述虚拟存储系统分配所述逻辑控制单元的分配信息,选择已分配的逻辑控制单元数少的或者未使用的存储容量多的存储系统的步骤;和
向选择出的所述存储系统请求分配所述逻辑控制单元以及生成所述卷的步骤。
14.如权利要求13所述的逻辑装置分配方法,其特征在于,包括:
收集所述虚拟存储系统的资源使用率的步骤;
基于收集到的所述资源使用率的信息,检测在所述主计算机与多个所述存储系统之间资源使用率高的存储系统,针对分配给该检测出的存储系统的逻辑控制单元,向未被分配该逻辑控制单元且资源使用率有富余的其他存储系统请求将该逻辑控制单元追加至该其他存储系统的步骤;
基于收集到的所述资源使用率的信息,检测在多个所述存储系统彼此之间资源使用率高的存储系统,为了将被分配给该检测出的存储系统双方的逻辑控制单元汇集到资源使用率较低的存储系统,向资源使用率较高的存储系统请求删除该逻辑控制单元的步骤。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2014/056058 WO2015132973A1 (ja) | 2014-03-07 | 2014-03-07 | 計算機システム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105814533A true CN105814533A (zh) | 2016-07-27 |
CN105814533B CN105814533B (zh) | 2018-11-13 |
Family
ID=54054803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480067967.XA Active CN105814533B (zh) | 2014-03-07 | 2014-03-07 | 计算机系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10452292B2 (zh) |
JP (1) | JP6261716B2 (zh) |
CN (1) | CN105814533B (zh) |
WO (1) | WO2015132973A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762672A (zh) * | 2018-05-23 | 2018-11-06 | 新华三技术有限公司成都分公司 | 分布式存储设备、方法及级联模块 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160119541A (ko) * | 2015-04-06 | 2016-10-14 | 삼성전자주식회사 | 데이터 저장 장치와 이를 포함하는 데이터 처리 시스템 |
JP6835474B2 (ja) * | 2016-02-26 | 2021-02-24 | 日本電気株式会社 | ストレージ装置の制御装置、ストレージ装置の制御方法、およびストレージ装置の制御プログラム |
JP6878369B2 (ja) * | 2018-09-03 | 2021-05-26 | 株式会社日立製作所 | ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム |
US11178251B2 (en) * | 2020-02-17 | 2021-11-16 | Slack Technologies, Inc. | Methods, apparatuses and computer program products for managing organization connections in a group-based communication system |
JP7036866B2 (ja) * | 2020-06-19 | 2022-03-15 | 株式会社日立製作所 | 情報処理装置及び方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005323245A (ja) * | 2004-05-11 | 2005-11-17 | Hitachi Ltd | 仮想ストレージの通信品質制御装置 |
US20070174544A1 (en) * | 2006-01-26 | 2007-07-26 | Hitachi, Ltd. | Data processing system and data processing method |
CN100334534C (zh) * | 2002-01-23 | 2007-08-29 | 思科技术公司 | 在存储区域网中实现存储虚拟化的方法与装置 |
EP1892615A2 (en) * | 2006-08-02 | 2008-02-27 | Hitachi, Ltd. | Control device for a storage system capable of acting as a constituent element of a virtual storage system |
CN101140497A (zh) * | 2006-09-06 | 2008-03-12 | 株式会社日立制作所 | 存储系统及其控制方法 |
CN101398748A (zh) * | 2005-10-04 | 2009-04-01 | 株式会社日立制作所 | 存储系统 |
JP2010066842A (ja) * | 2008-09-09 | 2010-03-25 | Hitachi Ltd | ストレージ装置及びストレージ装置の制御方法 |
JP2010257008A (ja) * | 2009-04-22 | 2010-11-11 | Hitachi Ltd | 仮想ストレージ装置を管理する管理サーバ装置及び仮想ストレージ装置の管理方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4892289B2 (ja) * | 2006-07-07 | 2012-03-07 | 株式会社日立製作所 | 複数のストレージ装置を含むストレージシステム |
JP4958641B2 (ja) * | 2007-05-29 | 2012-06-20 | 株式会社日立製作所 | 記憶制御装置及びその制御方法 |
US7934026B2 (en) * | 2008-09-17 | 2011-04-26 | International Business Machines Corporation | Apparatus and method to preserve one or more logical communication paths in a data processing system |
WO2010095176A1 (en) * | 2009-02-20 | 2010-08-26 | Hitachi, Ltd. | Storage system and method for operating storage system |
US8819230B2 (en) * | 2011-11-05 | 2014-08-26 | Zadara Storage, Ltd. | Virtual private storage array service for cloud servers |
-
2014
- 2014-03-07 CN CN201480067967.XA patent/CN105814533B/zh active Active
- 2014-03-07 US US15/039,983 patent/US10452292B2/en active Active
- 2014-03-07 WO PCT/JP2014/056058 patent/WO2015132973A1/ja active Application Filing
- 2014-03-07 JP JP2016506067A patent/JP6261716B2/ja active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100334534C (zh) * | 2002-01-23 | 2007-08-29 | 思科技术公司 | 在存储区域网中实现存储虚拟化的方法与装置 |
JP2005323245A (ja) * | 2004-05-11 | 2005-11-17 | Hitachi Ltd | 仮想ストレージの通信品質制御装置 |
CN101398748A (zh) * | 2005-10-04 | 2009-04-01 | 株式会社日立制作所 | 存储系统 |
US20070174544A1 (en) * | 2006-01-26 | 2007-07-26 | Hitachi, Ltd. | Data processing system and data processing method |
EP1892615A2 (en) * | 2006-08-02 | 2008-02-27 | Hitachi, Ltd. | Control device for a storage system capable of acting as a constituent element of a virtual storage system |
CN101140497A (zh) * | 2006-09-06 | 2008-03-12 | 株式会社日立制作所 | 存储系统及其控制方法 |
JP2010066842A (ja) * | 2008-09-09 | 2010-03-25 | Hitachi Ltd | ストレージ装置及びストレージ装置の制御方法 |
JP2010257008A (ja) * | 2009-04-22 | 2010-11-11 | Hitachi Ltd | 仮想ストレージ装置を管理する管理サーバ装置及び仮想ストレージ装置の管理方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108762672A (zh) * | 2018-05-23 | 2018-11-06 | 新华三技术有限公司成都分公司 | 分布式存储设备、方法及级联模块 |
CN108762672B (zh) * | 2018-05-23 | 2022-03-11 | 新华三技术有限公司成都分公司 | 分布式存储设备、方法及级联模块 |
Also Published As
Publication number | Publication date |
---|---|
JP6261716B2 (ja) | 2018-01-17 |
JPWO2015132973A1 (ja) | 2017-04-06 |
CN105814533B (zh) | 2018-11-13 |
US10452292B2 (en) | 2019-10-22 |
WO2015132973A1 (ja) | 2015-09-11 |
US20170220285A1 (en) | 2017-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105814533A (zh) | 计算机系统 | |
US10983860B2 (en) | Automatic prefill of a storage system with conditioning of raid stripes | |
US10282136B1 (en) | Storage system and control method thereof | |
JP4068473B2 (ja) | ストレージ装置、分担範囲決定方法及びプログラム | |
CN112532675B (zh) | 一种网络边缘计算系统的创建方法、装置及介质 | |
US9917884B2 (en) | File transmission method, apparatus, and distributed cluster file system | |
US20130104129A1 (en) | Virtual-machine control system and virtual-machine moving method | |
US11861196B2 (en) | Resource allocation method, storage device, and storage system | |
CN110096220B (zh) | 一种分布式存储系统、数据处理方法和存储节点 | |
WO2014101896A1 (zh) | 一种共享存储资源的方法和系统 | |
US11079961B1 (en) | Storage system with write-via-hash functionality for synchronous replication of logical storage volumes | |
CN106936931B (zh) | 分布式锁的实现方法、相关设备及系统 | |
CN113872997B (zh) | 基于容器集群服务的容器组pod重建方法及相关设备 | |
CN111104057B (zh) | 存储系统中的节点扩容方法和存储系统 | |
CN108804535B (zh) | 具有网络分层的软件定义存储(sds)系统 | |
CN113497747B (zh) | 存储系统、其存储装置及其操作方法 | |
US11567883B2 (en) | Connection virtualization for data storage device arrays | |
CN112398668B (zh) | 一种基于IaaS集群的云平台和节点的切换方法 | |
JP6669807B2 (ja) | 計算機システムおよび計算機 | |
EP2946300B1 (en) | Sata initiator addressing and storage device slicing | |
CN108762672B (zh) | 分布式存储设备、方法及级联模块 | |
CN112558882B (zh) | 确定磁盘重构信息的方法和装置 | |
US11507321B1 (en) | Managing queue limit overflow for data storage device arrays | |
CN115934257A (zh) | 一种虚拟化集群存储系统及其实现方法 | |
CN117215712A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |