CN104981788B - 存储系统及存储系统的控制方法 - Google Patents
存储系统及存储系统的控制方法 Download PDFInfo
- Publication number
- CN104981788B CN104981788B CN201380072318.4A CN201380072318A CN104981788B CN 104981788 B CN104981788 B CN 104981788B CN 201380072318 A CN201380072318 A CN 201380072318A CN 104981788 B CN104981788 B CN 104981788B
- Authority
- CN
- China
- Prior art keywords
- port
- storage device
- logic unit
- host computer
- unit
- 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.)
- Active
Links
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/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- 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
-
- 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]
-
- 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
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
以包括第1存储装置和第2存储装置在内的多个存储装置为基础,将虚拟存储装置提供至主机计算机。提供第1存储装置的第1逻辑单元和第2存储装置的第2逻辑单元来作为虚拟逻辑单元。第1存储装置针对来自主机计算机的端口状态的询问,返回表示第1逻辑单元的第1端口的状态及第2存储装置针对端口状态的询问无法响应的响应。第2存储装置针对上述询问不返回响应。
Description
技术领域
本发明涉及存储系统及存储系统的控制方法。
背景技术
作为本技术领域的背景技术,有日本特开2007-286946号公报(专利文献1)。该公报公开了向HA(High Availability:高可用性)结构的两个存储装置的任一个访问均能够访问最新的数据的计算机系统。
现有技术文献
专利文献
专利文献1:日本特开2007-286946号公报
发明内容
在基于多个卷的双活(Active-Active)型HA结构中,将主(primary)卷和次(secondary)卷(以下,有时也称为逻辑单元)的HA卷对作为单一逻辑单元(虚拟逻辑单元)提供至主机计算机。而且,在基于多个存储装置的双活型HA结构中,将主存储装置和次存储装置(以下,有时也简称为装置)的HA存储装置对作为单一存储装置(虚拟存储装置)提供至主机计算机。
在将多个逻辑单元作为单一虚拟逻辑单元提供至主机计算机的情况下,存在用于供主机计算机访问虚拟逻辑单元的多个路径。主机计算机为了决定用于访问虚拟逻辑单元的路径,向虚拟存储装置请求通知与虚拟逻辑单元建立了对应关系的所有端口的状态。请求使用例如SCSI(Small Computer System Interface:小型计算机系统接口)中的REPORTTARGET PORT GROUPS(报告目标端口组)指令。
在将多个存储装置作为单一虚拟存储装置提供至主机计算机的情况下,接收了端口状态通知请求的存储装置与本装置所具有的端口的状态一起还需要回复与本装置构成HA存储装置对的另一装置(以下,有时也简称为另一装置)所具有的端口的状态。
然而,在例如存储装置之间发生了通信故障的情况下,存储装置无法得知另一装置所具有的端口的状态。因此,针对端口状态通知请求的来自一方存储装置的响应与来自另一方存储装置的响应可能出现矛盾。需要在构成虚拟存储装置的所有存储装置之间进行整合。
本发明的一个方案为以包括能够彼此通信的第1存储装置和第2存储装置在内的多个存储装置为基础,将虚拟存储装置提供至主机计算机的存储系统。所述第1存储装置提供第1逻辑单元,包括与所述第1逻辑单元建立了对应关系的第1端口和包含所述第1端口的状态的信息在内的第1端口管理信息。所述第2存储装置提供第2逻辑单元,包括与所述第2逻辑单元建立了对应关系的第2端口和包含所述第2端口的状态的信息在内的第2端口管理信息。所述第1逻辑单元及所述第2逻辑单元作为一个虚拟逻辑单元提供至所述主机计算机。所述第1存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,将表示所述第1端口的状态为通过所述第1端口管理信息示出的状态且所述第2存储装置针对所述端口状态的询问无法响应的响应返回至所述主机计算机。所述第2存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,不返回响应。
发明的效果
根据本发明的一个方案,在具有双活型HA结构的存储系统中,能够针对关于端口的状态的询问返回适当的响应。
附图说明
图1示出信息系统的概要。
图2示出信息系统的结构例。
图3A示出在存储装置的存储器中保存的信息例。
图3B示出在存储装置的控制存储器中保存的信息例。
图4A示出在存储装置的路径定义表中保存的信息例。
图4B示出存储装置返回至主机计算机的端口状态的定义例。
图5A示出存储装置的存储装置对管理表的结构例。
图5B示出存储装置的逻辑单元对管理表的结构例。
图5C示出存储装置的本装置映射管理表的结构例。
图5D示出存储装置的另一装置映射管理表的结构例。
图5E示出存储装置的PG状态管理表的结构例。
图6是示出逻辑单元对管理表的更新的概略的流程图。
图7示出向主机计算机提供虚拟存储装置及虚拟逻辑单元的提供方法的一个例子。
图8是示出针对从主机计算机接收到的端口状态通知请求的响应方法的概略的流程图。
图9示出端口组状态的决定方法的一个例子。
图10示出端口组状态的决定方法的另一个例子。
图11示出包括外接存储装置的信息系统的另一个结构例。
具体实施方式
以下,参照附图,说明用于实施本发明的方式。应该注意的是,以下的说明只不过是用于实现本发明的一个例子,而不限定本发明的技术的范围。在各附图中,对共同的结构标注相同的参照附图标记。
在金融类的基础系统等追求极高的可用性(服务持续性)的信息系统中,除了使用基于RAID(Redundant Array of Independent(or Inexpensive)Disks:磁盘阵列)等的技术的高可靠化方法以外,还使用HA(High Availability)结构。
HA结构具有双重化的系统,具有用于在发生故障时自动断开发生了故障的系统而仅利用正常的系统继续动作的自动故障恢复功能。尤其是,当前,从资源的有效活用及负荷分散的观点出发,将所有系统作为运转系统来运用的双活型HA结构受到关注。
当前,存在基于存储控制器的双重化的在单一装置内的双活型HA结构。另一方面,从灾难恢复(Disaster Recovery)的观点出发,预想对基于存储装置的双重化的双活型HA结构的要求变强烈。
基于存储装置的双重化的双活型HA结构将由两个存储装置(物理存储装置)构成的HA存储装置对作为单一虚拟存储装置提供至主机计算机。基于存储装置的双重化的HA结构还将由两个存储装置分别提供的逻辑单元的对作为单一虚拟逻辑单元提供至主机计算机。主机计算机能够使用逻辑单元对的任一个路径来访问虚拟逻辑单元。
例如,在基于位于同一数据中心内的多个存储装置的双活型HA结构中,从主机计算机向虚拟逻辑单元(构成虚拟逻辑单元的不同的逻辑单元)的访问时间与所使用的路径无关,几乎都相等。因此,主机计算机基本不会因在访问虚拟逻辑单元时所使用的路径而在性能上受到影响。
另一方面,从灾难恢复的观点出发,优选将双活型HA结构的多个存储装置彼此间隔距离地配置在远处。在基于位于远处的数据中心之间的多个存储装置的HA结构中,根据所使用的路径不同,从主机计算机向虚拟逻辑单元的访问时间大不相同。
例如,一方的路径与位于与主机计算机相距很近的距离的存储装置所具有的逻辑单元建立了对应关系,因此,向使用了该路径的虚拟逻辑单元的访问时间短。另一方的路径与位于与主机计算机相距100km以上的远处的存储装置所具有的逻辑单元建立了对应关系,因此,使用了该路径的向虚拟逻辑单元的访问时间长。
在这种环境下,优选应用使存储装置能够针对路径(端口)设定使用优先度的非对称双活型HA结构。将该结构称为ALUA(Asymmetric Logical Unit Access:非对称逻辑单元访问)结构。通过利用ALUA结构,主机计算机能够优先使用延迟少的路径,从而能够同时实现性能和可用性。
具体来说,针对主机计算机向虚拟逻辑单元发行的REPORT TARGET PORT GROUPS指令,存储装置回复包含有与该虚拟逻辑单元建立了对应关系的端口的端口组(PG)的状态(PG状态),由此实现ALUA结构。所设定的PG状态包括例如“优先”、“非优先”。主机计算机相对于“非优先”的端口组(路径),更优先使用“优先”状态的端口组(路径)。
从主机计算机来看,虚拟存储装置必须为单一存储装置。REPORT TARGET PORTGROUPS指令到底向哪个存储装置发行依赖于主机计算机。需要在构成虚拟存储装置的存储装置之间整合针对该指令的响应。以下,说明解决该响应整合性的问题的存储系统。
实施例1
本实施例说明利用多个存储装置实现ALUA结构的方法。图1示出本实施例的信息系统的概要。存储装置30a、30b构成HA存储装置对,对主机计算机20来说,将两者看成单一虚拟存储装置70。
逻辑单元(有时也记载为LU)60a、60b构成HA对(HA逻辑单元对),对主机计算机20来说,将两者看成单一虚拟逻辑单元61。端口37a、37b分别与逻辑单元60a、60b建立了对应关系。对主机计算机20来说,看成与虚拟逻辑单元61建立了对应关系,也就是,在主机计算机20所保持的映射信息中,端口37a、37b与虚拟逻辑单元61建立了对应关系。
在例如存储装置30a接收了从主机计算机20向虚拟逻辑单元61发行的PEPORTTARGET PORT GROUPS指令的情况下,存储装置30a向存储装置30b请求通知包含有端口37b的端口组的PG状态。在该通知请求失败的情况下,存储装置30a参照逻辑单元对管理表111,确认本装置30a的逻辑单元60a的I/O(输入/输出)可否的状态。
端口组为通过划分构成虚拟存储装置70的存储装置30a、30b所具有的所有端口而形成的组。端口组由一个或多个端口构成。在以下说明的例子,端口组由单一存储装置的端口构成。
在向本装置30a的逻辑单元60a赋予了相当于“I/O可”的状态的情况下,存储装置30a针对包含有端口37a的端口组的状态,向主机计算机20回复在PG状态管理表114中记载的PG状态。
针对包含有端口37b的端口组的状态,向主机计算机20回复相当于“无法响应”的PG状态。根据该响应,主机计算机20识别出无法访问端口37b。该响应也可以通过完全不显示与端口37b有关的信息来回复相当于“无法响应”的PG状态。
在向本装置30a的逻辑单元60a赋予了相当于“I/O不可”的状态的情况下,存储装置30a不向主机计算机20返回针对PEPORT TARGET PORT GROUPS指令的响应。
根据该结构,在存储装置30a、30b间的通信发生了故障的情况下,也能够针对来自主机计算机20的PEPORT TARGET PORT GROUPS指令进行在存储装置30a、30b间取得了整合性的响应。由此,能够实现由多个存储装置构成的ALUA结构。
尤其是,为了灾难恢复,能够根据ALUA结构,向利用位于超过100km这种远处的数据中心的存储装置组成HA结构的用户提供高可用且高性能的系统。而且,由于能够从各个虚拟服务器访问多个存储装置,所以能够向使多个虚拟服务器在多个主机计算机运转的用户提供有效利用系统资源的系统。
图2示出本实施例中的具有存储装置30的信息系统1的结构例。在以下的说明中,主机计算机20示出某一个或多个主机计算机。就这一点而言,存储装置30、逻辑单元60、端口37等的其他结构要素也相同。
信息系统1具有管理服务器10、主机计算机20a、20b、存储装置30a、30b及外部装置40。图2示出一台管理服务器10、两台主机计算机20a、20b、两台存储装置30a、30b,但这些装置的数量没有限定。
主机计算机20a、20b、存储装置30a、30b及外部装置40经由数据通信线51彼此连接。另外,管理服务器10经由机器控制线50与主机计算机20a、20b、存储装置30a、30b连接。
管理服务器10具有辅助记忆装置11、作为处理器的CPU12、作为主记忆装置的存储器13、输入装置14、作为输出装置的显示装置15及接口(I/F)16。这些通过内部网络彼此连接。
主机计算机20具有辅助记忆装置21、作为处理器的CPU22、作为主记忆装置的存储器23、输入装置24、作为输出装置的显示装置25、I/F26、及端口27。这些通过内部网络彼此连接。
CPU22通过执行在存储器23中保存的程序来进行各种处理。例如,CPU22通过向存储装置30发送I/O请求,来访问由该存储装置30提供的逻辑单元。
存储装置30a、30b分别具有存储控制器31及盘驱动器39。盘驱动器39储存主机计算机20(主机计算机20a、20b的任意一个)请求写入的数据。
存储控制器31控制存储装置30(存储装置30a、30b的任意一个)整体。例如,存储控制器31控制从盘驱动器39读取数据。存储控制器31将盘驱动器39的记忆区域作为一个以上的逻辑单元提供至主机计算机20。若从主机计算机20接收到逻辑单元、装置的信息的请求,则存储控制器31将存储装置ID及逻辑单元ID转换为虚拟存储装置ID及虚拟逻辑单元ID,并提供至主机计算机20。
存储控制器31具有处理器32、存储器33、控制存储器34、高速缓冲存储器35、I/F36、端口37及盘控制部38。这些利用内部网络彼此连接。
处理器32通过执行在存储器33或控制存储器34中保存的程序来进行各种处理。存储器33保存通过处理器32执行的程序及通过处理器32判断为必要的信息等。可以不区别存储器33及控制存储器34。高速缓冲存储器35保存向盘驱动器39写入的数据及从盘驱动器39读取的数据。
端口37用于进行与主机计算机20或与另一方的存储装置30的连接。在本例中,作为端口37,假设与将SCSI作为上级协议的光纤通道I/F对应的端口。还可以采用与将SCSI作为上级协议的IP网络I/F等的网络I/F对应的其他种类的端口。
此外,本例将物理端口作为端口37进行说明,但也可以采用利用NPIV(N_Port IDVirtualization:N_端口身份虚拟化)等的技术进行了虚拟化的虚拟端口。
盘控制部38控制向盘驱动器39的数据写入及从盘驱动器39的数据读取。将盘驱动器39的记忆区域作为一个以上的逻辑单元60提供至存储装置30。外部装置40用于在发生了例如装置间通信故障的情况下等,确认各存储装置30是否正常运转。
存储装置30a、30b经由装置间数据通信线52彼此连接。图中仅示出了一个装置间数据通信线52,但可以存在多个通信线。例如,包括从存储装置30a向存储装置30b进行数据通信的数据通信线和从存储装置30a向存储装置30b进行数据通信的数据通信线。
接着,说明本例的信息系统1中的处理的概要。本例的信息系统1将多个存储装置30(物理存储装置30)作为单一存储装置(虚拟存储装置70)提供至主机计算机20,而且,将多个逻辑单元(实体逻辑单元)60作为单一逻辑单元(虚拟逻辑单元)61提供至主机计算机20。后面,参照图7来说明向主机计算机20提供虚拟存储装置70及虚拟逻辑单元61的具体方法。
图3A示出各主机计算机20的存储器23所保存的信息的例子。存储器23保存通过CPU22执行的程序及CPU22所需的信息等。如图3A所示,存储器23保存有路径定义表100、路径控制程序101、应用程序102及OS(操作系统)103。
路径定义表100示出与用于供存储装置30访问逻辑单元60的路径有关的信息。后面,参照图4说明路径定义表100。
路径控制程序101控制用于供存储装置30访问逻辑单元60的路径。路径控制程序101参照路径定义表100,控制路径。
应用程序102执行各种处理。例如,应用程序102提供数据库的功能或Web服务器功能。OS103控制主机计算机20的处理整体。
图3B示出各存储装置30的控制存储器34所保存的信息的例子。控制存储器34保存通过处理器32执行的程序及处理器32所需的信息等。控制存储器34保存有例如存储装置对管理表110、逻辑单元对管理表111、本装置映射管理表112、另一装置映射管理表113及PG状态管理表114。
控制存储器34还保存有输入输出处理程序115、装置间通信控制程序116、逻辑单元对状态管理程序117、映射状态管理程序118、端口状态设定程序119、端口状态确认程序120及ID转换程序121。
存储装置对管理表110为用于管理由存储装置30构成的HA存储装置对的信息。HA存储装置对由两个存储装置形成,向主机计算机20提供与HA存储装置对对应的一个虚拟存储装置70。后面,参照图5A说明存储装置对管理表110。
逻辑单元对管理表111为用于管理由存储装置30a、30b各自提供的逻辑单元60构成的HA逻辑单元对的信息。HA逻辑单元对由两个逻辑单元形成,向主机计算机20提供与HA逻辑单元对对应的一个虚拟逻辑单元61。后面,参照图5B说明逻辑单元对管理表111。
本装置映射管理表112、另一装置映射管理表113及PG状态管理表114为用于管理与由存储装置30提供的逻辑单元60建立了对应关系的端口37的信息的信息。后面,分别参照图5C、图5D及图5E,说明本装置映射管理表112、另一装置映射管理表113及PG状态管理表114。
输入输出处理程序115处理从主机计算机20接收到的I/O请求。装置间通信控制程序116控制在存储装置30之间的控制信息、用户数据的发送接收。
逻辑单元对状态管理程序117管理构成虚拟逻辑单元61的逻辑单元60(HA逻辑单元对)的对状态。逻辑单元对状态管理程序117判断逻辑单元60的对是否同步,并将判断结果保存在逻辑单元对管理表111中。
在同步的对中,每当一方的逻辑单元更新时,就反映到另一方的逻辑单元中。逻辑单元对状态管理程序117判断能否向逻辑单元60进行I/O,并将判断结果保存在逻辑单元对管理表111的LU状态(本装置)栏516中。
映射状态管理程序118管理逻辑单元60与端口37之间的映射关系,并将结果保存在本装置映射管理表112及另一装置映射管理表113中。
端口状态设定程序119以来自本存储装置30的管理者的指示或存储装置30的状态为基础,将端口37所属的端口组的状态保存在PG状态管理表114中。
端口状态确认程序120针对从主机计算机20接收的端口状态通知请求,获取作为对象的端口37的状态,并对主机计算机20进行回复。在本例中,端口37的状态与该端口37所属的PG状态一致。
具体来说,端口状态确认程序120将与由PEPORT TARGET PORT GROUPS指令指定的虚拟逻辑单元61建立了对应关系的本存储装置30及另一存储装置30的端口37所属的端口组的状态回复给主机计算机20。
ID转换程序121分别将存储装置ID及逻辑单元ID转换成虚拟存储装置ID及虚拟逻辑单元ID,并提供至主机计算机20。ID转换程序121分别将从主机计算机20接收的虚拟存储装置ID及虚拟逻辑单元ID转换成存储装置ID及逻辑单元ID。
图4A示出在主机计算机20的存储器23中保存的路径定义表100的结构例。路径定义表100管理能够访问虚拟逻辑单元61的路径。
路径定义表100具有虚拟存储装置ID栏401、虚拟LU ID栏402、路径1栏403及路径2栏404。而且,路径1栏403、路径2栏404分别具有端口ID栏421、431、PG ID栏422、432及PG状态栏423、433。
虚拟存储装置栏ID401保存主机计算机20进行访问的虚拟存储装置在信息系统1内唯一的标识符。虚拟LU ID栏402保存主机计算机20进行访问的虚拟逻辑单元61在信息系统1内唯一的标识符。路径1栏403及路径2栏404分别示出能够访问虚拟逻辑单元61的一个路径。在本例中,仅示出两个路径的信息。
端口ID栏421、431示出与虚拟逻辑单元61建立了对应关系的端口37的标识符。PGID栏422、432示出端口所属的端口组的标识符。端口ID、PG ID为在信息系统1内的唯一的标识符。PG状态栏423、433示出端口所属的端口组的状态。
路径控制程序101向存储装置30a、30b请求在PG状态栏423、433中保存的值,并保存接收到的值。图4B示出PG状态的定义例。“PG状态”栏示出针对来自主机计算机20的请求的来自存储装置30的响应示出的PG状态。在图4B的例子中,“Active/Optimized(主动/优化)”表示ALUA结构中的优先端口,“Active/Non-Optimized(主动/不优化)”表示ALUA结构中的非优先端口。优先端口及非优先端口为运用端口,主机计算机20优先使用优先端口来访问虚拟逻辑单元61。
“Standby(待机)”表示待机端口。若在运用端口发生故障,则从该运用端口切换成待机端口。“Unavailable(不可用)”表示无法使用端口,“Offline(离线)”表示无法响应端口。
存储装置30响应针对优先端口及非优先端口的读/写访问及状态信息的请求。状态信息的请求为例如INQUIRY(查询)指令、PEPORT TARGET PORT GROUPS指令。
存储装置30不受理针对待机端口及无法使用端口的读/写访问,但受理状态信息的请求,并向主机计算机20返回响应。存储装置30不受理针对无法响应端口的一切请求,也就是,不向主机计算机20返回响应。
此外,也可以仅设定上述状态的一部分。在通常的双活型HA结构的运用中,很少积极地设定例如“Standby”、“Unavailable”。
图5A示出在存储装置30的控制存储器34中保存的存储装置对管理表110的结构例。存储装置对管理表110具有虚拟存储装置ID栏501、存储装置ID(本装置)栏502、存储装置ID(另一装置)栏503。
虚拟存储装置ID栏501为主机计算机20进行访问的虚拟存储装置70在信息系统1内唯一的标识符,保存有构成HA存储装置对的存储装置之间共用的值。
存储装置ID(本装置)栏502保存作为虚拟存储装置70的结构要素的本装置的标识符。存储装置ID(另一装置)栏503保存作为虚拟存储装置70的结构要素的另一装置的标识符。存储装置ID(本装置)栏502及存储装置ID(另一装置)栏503为在信息系统1内唯一的标识符。
存储装置30通过确认在存储装置ID(另一装置)栏503中保存的值,能够获取与本装置构成HA存储对的存储装置30的ID。
图5B示出在存储装置30的控制存储器34中保存的逻辑单元对管理表111的结构例。逻辑单元对管理表111具有虚拟LU ID栏511、LU ID(本装置)栏512、LU ID(另一装置)栏513、对状态栏514、主LU ID栏515以及LU状态(本装置)栏516。
虚拟LU ID栏511保存主机计算机20进行访问的虚拟逻辑单元61的标识符。LU ID(本装置)栏512表示作为虚拟逻辑单元61的结构要素的本装置30内的逻辑单元的标识符。LU ID(另一装置)栏513表示作为虚拟逻辑单元61的结构要素的另一装置30内的逻辑单元的标识符。
对状态栏514示出构成虚拟逻辑单元61的HA逻辑单元对的状态。例如,“Duplex(双工)”表示在构成虚拟逻辑单元61的逻辑单元60间取得同步(逻辑单元60保存有相同的用户数据)。“Suspend(暂停)”表示没有在构成虚拟逻辑单元61的逻辑单元60间取得同步。例如,因存储装置间通信故障而妨碍了同步。
主LU ID栏515表示在HA逻辑单元对中,在仅利用单方的逻辑单元60进行运用的情况下优先使用的逻辑单元60的标识符。例如,在发生了存储装置间通信故障的情况下,优先使用主LU ID表示的逻辑单元60。
LU状态(本装置)栏516示出表示构成虚拟逻辑单元61的逻辑单元60中本装置的逻辑单元60为“I/O可”还是“I/O不可”的LU状态。
逻辑单元对状态管理程序117管理构成虚拟逻辑单元61的逻辑单元60(HA逻辑单元对)的对状态。逻辑单元对状态管理程序117还判断逻辑单元60的对是否同步,并将判断结果保存在逻辑单元对管理表111中。在同步的对中,每当一方的逻辑单元60更新时,就反映到另一方的逻辑单元60中。
虚拟LU ID栏511、LU ID(本装置)栏512、LU ID(另一装置)栏513、主LU ID栏515的值是例如按照管理者的指示而事先设定的。
以下,一边参照图5B的结构图及图6的流程图,一边说明逻辑单元对管理表111的更新。存储装置30a、30b监视存储装置30a、30b之间的通信故障(SP51)。有时因在存储装置30a、30b内的故障或装置间数据通信线52上的存储装置30a、30b间的通信故障而导致不能取得HA逻辑单元对的同步。检测到该状况的逻辑单元对状态管理程序117将对应的条目中的对状态栏514的值从“Duplex”变更为“Suspend”(SP52)。
通过监视装置间数据通信线52的状态及来自另一装置30的响应,能够确认各HA逻辑单元对的同步状态。在HA逻辑单元对的同步恢复了的情况下,逻辑单元对状态管理程序117将对应的条目中的对状态栏514的值从“Suspend”变更为“Duplex”。
逻辑单元对状态管理程序117判断能否进行向逻辑单元60的I/O,并将判断结果保存在逻辑单元对管理表111的LU状态(本装置)栏516中。例如,在因本装置30内的故障而导致无法恰当地访问逻辑单元60的情况下,该逻辑单元60的LU状态为“I/O不可”。
在因装置间数据通信线52上的存储装置30a、30b间的通信故障等而无法取得HA逻辑单元对的同步的情况下,逻辑单元对状态管理程序117参照主LU ID栏515(SP53)。
在“Suspend”的条目中,主LU ID栏515包括本装置30的LU ID的情况(SP53判断为是)下,逻辑单元对状态管理程序117将LU状态(本装置)栏516的值维持为“I/O可”(SP54)。在“Suspend”的条目中主LU ID栏515包括另一装置30的LU ID的情况(SP53判断为否)下,将LU状态(本装置)栏516的值变更为“I/O不可”(SP55)。
像这样,主LU ID栏515及LU状态(本装置)栏516分别示出处于非同步状态的端口(逻辑单元/存储装置)的优先度。存储装置30a、30b能够根据主LU ID栏515来决定LU状态。
图5C示出在存储装置30的控制存储器34中保存的本装置映射管理表112的结构例。本装置映射管理表112保存与存在于本装置内的逻辑单元60有关的映射信息。
本装置映射管理表112具有LU ID栏521、端口ID栏522、PG ID栏523。LU ID栏521保存存在于本装置内的逻辑单元60的标识符。端口ID栏522表示与逻辑单元60建立了对应关系的端口37的标识符。PG ID栏523表示端口37所属的端口组的标识符。
图5D示出在存储装置30的控制存储器34中保存的另一装置映射管理表113的结构例。另一装置映射管理表113保存与存在于和本装置构成HA存储装置对的另一装置30内的逻辑单元60有关的映射信息。
另一装置映射管理表113具有LU ID栏531、端口ID栏532、PG ID栏533。LU ID栏531表示存在于与本装置30构成HA存储装置对的另一装置30内的逻辑单元60的标识符。端口ID栏532表示与逻辑单元60建立了对应关系的端口37的标识符。PG ID栏533表示端口37所属的端口组的标识符。
在映射状态管理程序118变更了本装置映射管理表112的情况下,装置间通信控制程序116向构成HA存储装置对的另一装置30通知变更内容。接收了变更内容的另一装置30的映射状态管理程序118按照接收到的内容来更新另一装置映射管理表113。
存储装置30也可以在更新了本装置映射管理表112时不向另一装置30通知变更内容。在每当想要参照另一装置30的映射信息的情况下,装置间通信控制程序116向另一装置30进行映射信息的通知请求。映射状态管理程序118将该通知请求的响应保存在另一装置映射管理表113中。此外,在本例中,将一个端口ID与一个LU ID建立了对应关系,但也可以将多个端口37与一个逻辑单元60建立对应关系。
图5E示出在存储装置30的控制存储器34中保存的PG状态管理表114的结构例。PG状态管理表114具有PG ID栏541、表示管理端口组的存储装置30(本装置或另一装置)的装置信息栏542、表示利用本装置30管理的端口组的状态的PG状态栏543。PG状态栏543的值是通过管理者事先设定的。或者,存储装置30自动决定PG状态栏543的值。关于这一点,在后面进行说明。
图7是示出向主机计算机20提供虚拟存储装置70、及虚拟逻辑单元61的方法的概要图。在主机计算机20利用例如SCSI的INQUIRY指令向存储装置30a(存储装置ID:SN-a)请求了通知存储装置ID的情况下,受领了该请求的存储装置30a参照存储装置对管理表110,将从虚拟存储装置ID栏501获取的值(虚拟存储装置ID:SN-c)回复给主机计算机20。
虚拟存储装置ID栏501的值供构成HA存储装置对的存储装置30a、及30b共用,针对该存储装置ID请求的响应与被发行了该存储装置ID请求的存储装置无关,均相同。由此,将构成HA存储装置对的存储装置30a、及30b作为单一虚拟存储装置70提供至主机计算机。
同样地,在主机计算机20利用例如SCSI的INQUIRY指令向存储装置30请求了通知逻辑单元ID的情况下,受领了该请求的存储装置30参照逻辑单元对管理表111,将从虚拟LUID栏511获取的值(虚拟LU ID:Vol-3)回复给主机计算机20。
虚拟LU ID栏501的值供构成HA存储装置对的存储装置30a、及30b共用,针对该LUID请求的响应与被发行了该存储装置ID请求的存储装置无关,均相同。由此,将构成HA卷对的逻辑单元60a及60b作为单一虚拟逻辑单元61提供至主机计算机。
图8是用于决定存储装置30中的针对从主机计算机20发行的端口状态通知请求的响应内容的流程图。存储装置30针对来自主机计算机20的指定了虚拟逻辑单元61的请求,选择图4B示出的PG状态的一个。
在本例中,作为从主机计算机20发行的端口状态通知请求的一个例子,说明SCSI中的REPORT TARGET PORT GROUPS指令。
在步骤SP1中,存储装置30a接收从主机计算机20向虚拟逻辑单元61发行的REPORTTARGET PORT GROUPS指令。
在步骤SP2中,存储装置30a的端口状态确认程序120获取在该REPORT TARGETPORT GROUPS指令中包含的、作为该REPORT TARGET PORT GROUPS指令的对象的虚拟逻辑单元61的虚拟LU ID。
在步骤SP3中,存储装置30a的端口状态确认程序120参照本装置30a的逻辑单元对管理表111,从对状态栏514获取该虚拟LU ID示出的虚拟逻辑单元61的对状态的信息。
在该对状态为Duplex状态的情况(SP3判断为否)下,端口状态确认程序120执行步骤SP4。在该对状态为Suspend状态的情况(SP3判断为是)下,端口状态确认程序120执行步骤SP7。
在步骤SP4中,端口状态确认程序120启动本装置30a的装置间通信控制程序116。装置间通信控制程序116向构成HA存储装置对的另一装置30b发送该虚拟LU ID,请求通知与该虚拟LU ID对应的PG状态。
受理了该通知请求的存储装置30b启动端口状态确认程序120。存储装置30b的端口状态确认程序120参照本装置30b的逻辑单元对管理表111,从LU ID栏512获取与该虚拟LU ID对应的本装置30b的LU ID。
接着,端口状态确认程序120参照本装置30b的本装置映射管理表112,从PG ID栏523获取与获取到的LU ID对应的PG ID。接着,端口状态确认程序120参照本装置30b的PG状态管理表114,从PG状态栏543获取与该PG ID对应的PG状态的信息。
接着,端口状态确认程序120启动本装置30b的装置间通信控制程序116。装置间通信控制程序116将该PG状态发送至存储装置30a。
在步骤SP5中,存储装置30a的端口状态确认程序120从另一装置30b接收PG状态的信息。
在步骤SP6中,存储装置30a的端口状态确认程序120利用与存储装置30b同样的方法,从PG状态管理表114的PG状态栏543获取在本装置30a中与该虚拟LU ID对应的PG状态的信息。
端口状态确认程序120参照本装置30a的逻辑单元对管理表111,从LU ID(本装置)栏512获取与该虚拟LU ID对应的本装置30a的LU ID,从LU ID(另一装置)栏513获取另一装置30b的LU ID。
端口状态确认程序120参照本装置30a的本装置映射管理表112,从PG ID栏523获取与本装置30a的LU ID对应的PG ID。而且,端口状态确认程序120参照另一装置映射管理表113,从PG ID栏533获取与另一装置30b的LU ID对应的PG ID。
接着,作为针对REPORT TARGET PORT GROUPS指令的响应,端口状态确认程序120将与该虚拟LU ID对应的本装置30a的PG ID及PG状态的组合和另一装置30b的PG ID及PG状态的组合发送至主机计算机20。由此,在对状态为同步状态的情况下,能够恰当地将端口状态(PG状态)返回至主机计算机20。
在步骤SP7中,存储装置30a的端口状态确认程序120参照本装置30a的逻辑单元对管理表111,从LU状态(本装置)栏516获取与该虚拟LU ID对应的本装置的LU状态。在该LU状态为“I/O可”的情况(SP7判断为是)下,端口状态确认程序120执行步骤SP8。在该LU状态为“I/O不可”的情况(SP7判断为否)下,端口状态确认程序120执行步骤SP9。
在步骤SP8中,端口状态确认程序120参照本装置30a的逻辑单元对管理表111,从LU ID(本装置)栏512获取与该虚拟LU ID对应的本装置的LU ID。
接着,端口状态确认程序120参照本装置30a的本装置映射管理表112,从PG ID栏523获取与该LU IDa对应的PG ID。接着,端口状态确认程序120参照本装置30a的PG状态管理表114,从PG状态栏543获取PG状态。
接着,端口状态确认程序120参照本装置30a的另一装置映射管理表113,从PG ID栏533获取与另一装置30b的LU ID对应的另一装置30b的PG ID。
接着,作为针对该REPORT TARGET PORT GROUPS指令的响应,端口状态确认程序120将与该虚拟LU ID对应的本装置30a的PG ID及PG状态的组合和另一装置30b的PG ID及PG状态的组合发送至主机计算机20。此时响应的另一装置30b的PG状态为表示经由该端口组的所有通信都无效的“Offline”。
在本步骤中,由于存储装置30、30b间的通信无效,所以向主机计算机20通知的另一装置30b的PG ID有可能在实际上和与另一装置30b的LU ID建立了对应关系的PG ID不同。在步骤SP8中,向主机计算机20通知另一装置30b的端口组的状态处于“Offline”状态。由此,从主机计算机20向该虚拟逻辑单元61的访问不使用属于该端口组的端口37,就能够防止实际运用上的问题。
在步骤SP9中,存储装置30a的端口状态确认程序120不进行针对该REPORT TARGETPORT GROUPS指令的响应。主机计算机20在规定的时间以内没有接收到来自存储装置30的响应的情况下,判断为该用于发行REPORT TARGET PORT GROUPS指令的端口37处于不能使用的状态。主机计算机20利用另一个端口37重新发行REPORT TARGET PORT GROUPS指令。
通过上述步骤SP8及SP9,即使在对状态为非同步状态的情况下,也能够向主机计算机20进行存储装置间不矛盾的响应。
取代上述动作,映射状态管理程序118也可以从另一装置映射管理表113及PG状态管理表114删除属于该端口组的另一装置30b的端口37与该虚拟逻辑单元61之间的对应关系。由此,来表示另一装置30b无法响应REPORT TARGET PORT GROUPS指令。
在这种情况下,端口状态确认程序120针对REPORT TARGET PORT GROUPS指令,仅回复与该虚拟LU ID对应的本装置30a的PG ID及PG状态的组合。针对与该虚拟LU ID对应的另一装置30b的PG ID及PG状态不进行任何回复。
此外,存储装置30a也可以不具有另一装置映射管理表113。在该结构中,在步骤SP6及SP8中,端口状态确认程序120无法参照另一装置30b的PG ID。关于步骤SP6,只要在步骤SP4及SP5中针对存储装置30b进行PG状态的请求及接收时,一并进行与该虚拟LU ID对应的PG ID的请求及接收即可。关于步骤SP8,端口状态确认程序120参照PG状态管理表114,装置信息栏542的值只要针对作为“本装置”的PG ID以外的所有PG ID都回复“Offline”即可。
另外,在步骤SP4中,装置间通信控制程序116也可以向构成HA存储装置对的另一装置30b发送逻辑单元对管理表111的LU ID(另一装置)栏513。在这种情况下,存储装置30b的端口状态确认程序120参照本装置映射管理表112,从PG ID栏523获取与获取到的LU ID对应的PG ID。
在组成ALUA结构的情况下,存储装置30的管理者针对各端口37所属的端口组设定PG状态。例如,针对所有端口组设定“Active/Optimized”(优先)或“Active/Non-Optimized”(非优先)的状态之一。
各端口组的状态能够由存储装置30的管理者自由决定。例如,只要以以下这种基准来设定即可。
(1)考虑仅对构成HA逻辑单元对的两个逻辑单元60中的某一个逻辑单元60组成本地复制对的结构。在这种结构中,管理者只要将和与备用逻辑单元组成了本地复制对的逻辑单元60建立了对应关系的端口37所属的端口组的状态设为“Active/Optimized”(优先)即可。
而且,管理者只要将与没有组合本地复制的独立的逻辑单元60建立了对应关系的端口37所属的端口组的状态设为“Active/Non-Optimized”(非优先)即可。由此,能够提高虚拟逻辑单元的耐故障性。
(2)考虑仅对构成HA逻辑单元对的两个逻辑单元60中的某一个逻辑单元60与备用逻辑单元组成远程复制的结构。图9示出了这种结构例。在图9中,虚拟逻辑单元61a由逻辑单元60a_a、逻辑单元60b_a构成,虚拟逻辑单元61b由逻辑单元60a_b、逻辑单元60b_b构成。逻辑单元60a_a、逻辑单元60a_b由存储装置30a提供,逻辑单元60b_a、逻辑单元60b_b由存储装置30b提供。
逻辑单元60a_a与存储装置30c的逻辑单元60c构成远程复制对。逻辑单元60b_b与存储装置30d的逻辑单元60d构成远程复制对。
管理者只要将与组成了远程复制对的逻辑单元60a_a、60b_b建立了对应关系的端口37所属的端口组的状态设为“Active/Optimized”(优先)即可。管理者只要将与没有组成远程复制对的独立的逻辑单元60a_b、60b_a建立了对应关系的端口37所属的端口组的状态设为“Active/Non-Optimized”(非优先)即可。由此,能够提高虚拟逻辑单元的耐故障性。
(3)考虑具有构成HA逻辑单元对的两个逻辑单元60中的某一个逻辑单元60的存储装置30位于距主机计算机20较近的距离,具有另一个逻辑单元60的存储装置30位于距主机计算机20较远的距离的结构。
图10示出这种结构例。在图10中,虚拟逻辑单元61a由逻辑单元60a_a、逻辑单元60b_a构成,虚拟逻辑单元61b由逻辑单元60a_b、逻辑单元60b_b构成。逻辑单元60a_a、逻辑单元60a_b由存储装置30a提供,逻辑单元60b_a、逻辑单元60b_b由存储装置30b提供。
主机计算机20a访问虚拟逻辑单元61a。主机计算机20a配置在距存储装置30b远而距存储装置30a近的位置。主机计算机20b访问虚拟逻辑单元61b。主机计算机20b配置在距存储装置30a远且距存储装置30b近的位置。
管理者只要将与位于距主机计算机20a较近的距离的存储装置30a所具有的逻辑单元60a_a建立了对应关系的端口37所属的端口组设为“Active/Optimized”(优先)即可。而且,管理者只要将与位于距主机计算机20a较远的距离的存储装置30b所具有的逻辑单元60b_a建立了对应关系的端口37所属的端口组的状态设为“Active/Non-Optimized”(非优先)即可。
同样地,管理者只要将位于距主机计算机20b较近的距离的存储装置30b所具有的逻辑单元60b_b建立了对应关系的端口37所属的端口组设为“Active/Optimized”(优先)即可。而且,管理者只要将与位于距主机计算机20b较远的距离的存储装置30a所具有的逻辑单元60a_b建立了对应关系的端口37所属的端口组的状态设为“Active/Non-Optimized”(非优先)即可。由此,能够缩短从主机计算机向虚拟逻辑单元访问的响应时间。
(4)如参照图5B说明的那样,在存储装置30之间发生了故障的情况下,在构成HA逻辑单元对的两个逻辑单元60中,事先设定了利用哪一个逻辑单元60进行运用。
在此,在存储装置30间的通信故障时,将设定为“I/O可”的逻辑单元60称为主LU,将设定为“I/O不可”的逻辑单元60称为次LU。
管理者只要将与主LU建立了对应关系的端口37所属的端口组设为“Active/Optimized”(优先),将与次LU建立了对应关系的端口37所属的端口组设为“Active/Non-Optimized”(非优先)即可。由此,即使在存储装置间不能通信的状态下,主机计算机也能够访问同一逻辑单元。
在以上的例子中,存储装置30的管理者手动设定端口组的状态(优先度)。存储装置30也可以自动设定端口组的状态。例如,在上述(1)的情况下,存储装置30a、30b的装置间通信控制程序116将关于本装置30的本地复制的结构的信息发送至另一装置30,并将接收到的信息保存在控制存储器34内。
各存储装置30的端口状态设定程序119以本装置及另一装置30的本地复制结构为基础,进行在上述(1)中说明的判断,将判断结果保存在本装置30的PG状态管理表114中。
或者,在上述(4)的情况下,各存储装置30的端口状态设定程序119参照本装置30的逻辑单元对管理表111,以主LU ID的信息为基础,进行与上述(4)同样的判断,并将判断结果保存在本装置30的PG状态管理表114中。
此外,在图2示出的结构例中,由位于具有装置的虚拟化功能的存储装置30中的盘驱动器39提供的逻辑单元60构成HA逻辑单元对。与此不同,也可以将存储装置30连接外接存储装置,利用由外接存储装置的盘驱动器提供的逻辑单元来构成HA逻辑单元对。
图11示出这种结构例。在图11中,外接存储装置80a、80b分别与存储装置30a、30b连接。外接存储装置80a、80b分别包括存储控制器81及盘驱动器84。存储控制器81包括I/F82及端口83。
外接存储装置80a、80b利用盘驱动器84的记忆区域构成逻辑单元。存储装置30a、30b能够通过映射,分别将外接存储装置80a、80b的逻辑单元与本装置的逻辑单元同样地提供至主机计算机20。
存储装置30a、30b可以仅利用外接存储装置80a、80b的逻辑单元构成HA逻辑单元对,也可以利用外接存储装置80a、80b的逻辑单元和存储装置30a、30b的逻辑单元构成HA逻辑单元对。此外,在该结构中,不考虑有无存储装置30a、30b的盘驱动器39,另外,不考虑有无外接存储装置80a、80b的虚拟化功能。
如上所述,根据本实施例,在基于多个存储装置的AULA结构的存储系统中,能够避免针对虚拟逻辑单元的端口状态通知请求的响应内容的不整合。
实施例2
实施例1说明了包括具有ALUA结构的多个存储装置30的信息系统的例子。在多个存储装置具有双活型HA结构的情况下,与其对称性无关地存在与ALUA结构同样的问题。于是,本实施例说明利用多个存储装置组成对称的双活型HA结构的例子。此外,有时在与ALUA结构相区别的基础上,也将对称的双活型HA结构称为SLUA(Symmetric Logical UnitAccess:对称逻辑单元访问)结构。
以下,主要说明与实施例1的不同点。在SLUA结构中,在构成HA存储装置对的存储装置30之间无法通信的情况下,存储装置30也针对PG状态返回与实施例1同样的响应。
在SLUA结构中,在主机计算机20访问虚拟逻辑单元61的情况下,期待利用任何路径都没有差异。通常,针对主机计算机20所发行的REPORT TARGET PORT GROUPS指令的响应只要示出所有端口组的PG状态为“Active/Optimized”(优先)即可。
主机计算机20在向虚拟逻辑单元61访问时,可以使用任意的路径。例如,主机计算机20从能够访问虚拟逻辑单元61的所有路径中,通过轮叫调度(round robin)来选择用于访问的路径。
在此,通过主机计算机20的路径选择方法,可能使构成HA存储装置对的两个存储装置30中的某一方的存储装置30的负荷增大。
于是,例如,存储装置30a、30b分别以构成HA存储装置对的存储装置30a、30b双方的负荷状态为基础,响应主机计算机20定期发行的REPORT TARGET PORT GROUPS指令。基于存储装置30a、30b的负荷状态的响应为在构成HA存储装置对的存储装置30之间能够通信的情况下的响应。
例如,构成虚拟存储装置70的存储装置30a、30b分别通过负荷状态监视程序(未图示)定期地监视本装置所具有的所有处理器32的运转率,计算出每个处理器32及每单位时间的平均运转率。存储装置30a、30b的装置间通信控制程序116分别将本装置的测定值发送至另一装置,与另一装置共用本装置的测定值。
在两个存储装置30a、30b平均运转率的差超过规定值的情况下,接收到下一个REPORT TARGET PORT GROUPS指令的存储装置30进行如下的回复:平均运转率高的存储装置30所具有的端口组中规定比例的端口组的PG状态为“Active/Non-Optimized”(非优先)。上述规定比例可以通过与平均运转率的差相应地增加的函数表示,也可以为固定值。
此后,在该平均运转率的差为上述规定值以下的情况下,接收到下一个REPORTTARGET PORT GROUPS指令的存储装置30进行如下的回复:所有PG的状态为“Active/Optimized”(优先)。
存储装置30能够使用处理器32的运转率以外的负荷状态的测定值。其他负荷状态的测定值的例子为盘驱动器39的平均运转率及高速缓冲存储器35的平均使用率等。也可以使用多种测定值的组合。如上所述,根据本实施例,通过与存储装置的负荷状态相对应地控制来自主机计算机的访问,能够恰当地分散负荷。
此外,本发明不限于上述实施例,包括各种各样的变形例。例如,虚拟存储装置也可以由三个以上的存储装置构成。存储装置也可以从管理计算机接收另一存储装置的端口状态的信息、复制对的信息。
如上述例那样,主机计算机可以通过询问虚拟逻辑单元的端口组的状态,来询问该虚拟逻辑单元的端口状态,也可以仅询问该虚拟逻辑单元的端口的状态。存储装置仅针对虚拟逻辑单元的端口返回端口状态的信息。
上述例是为了便于理解本发明而进行了详细说明的内容,本发明不必须限于具有说明了的所有结构的例子。能够将某个例子的结构的一部分替换成其他例子的结构,也能够对某个例子的结构添加其他例子的结构。针对各例的结构的一部分,能够追加、删除、替换成其他结构。图中的结构示出了认为在说明时需要的内容,在产品上不必须限于示出所有结构。
Claims (15)
1.一种存储系统,其以包括能够彼此通信的第1存储装置和第2存储装置在内的多个存储装置为基础,将虚拟存储装置提供至主机计算机,所述存储系统的特征在于,
所述第1存储装置提供第1逻辑单元,包括与所述第1逻辑单元建立了对应关系的第1端口和包含所述第1端口的状态的信息在内的第1端口管理信息,
所述第2存储装置提供第2逻辑单元,包括与所述第2逻辑单元建立了对应关系的第2端口和包含所述第2端口的状态的信息在内的第2端口管理信息,
所述第1逻辑单元及所述第2逻辑单元作为一个虚拟逻辑单元提供至所述主机计算机,
所述第1存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,将表示所述第1端口的状态为通过所述第1端口管理信息示出的状态且所述第2存储装置针对所述端口状态的询问无法响应的响应返回至所述主机计算机,
所述第2存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,不返回响应。
2.如权利要求1所述的存储系统,其特征在于,
所述第1存储装置保持表示示出所述第1逻辑单元能否I/O的LU状态的第1逻辑单元管理信息,
所述第2存储装置保持表示示出所述第2逻辑单元能否I/O的LU状态的第2逻辑单元管理信息,
所述第1存储装置及所述第2存储装置分别基于所述第1逻辑单元管理信息及所述第2逻辑单元管理信息示出的LU状态,决定针对所述端口状态的询问的响应的有无。
3.如权利要求2所述的存储系统,其特征在于,
所述第1逻辑单元管理信息及所述第2逻辑单元管理信息分别示出在仅使用所述第1逻辑单元和所述第2逻辑单元的一方的情况下优先选择的主逻辑单元,
在所述第1逻辑单元及所述第2逻辑单元从同步状态变化至非同步状态的情况下,
所述第1存储装置在所述第1逻辑单元管理信息中在所述第1逻辑单元为所述主逻辑单元的情况下,将所述第1逻辑单元的LU状态维持为能够I/O,在所述第2逻辑单元为所述主逻辑单元的情况下,将所述第1逻辑单元的LU状态变更为不能I/O,
所述第2存储装置在所述第2逻辑单元管理信息中在所述第2逻辑单元为所述主逻辑单元的情况下,将所述第2逻辑单元的LU状态维持为能够I/O,在所述第1逻辑单元为所述主逻辑单元的情况下,将所述第2逻辑单元的LU状态变更为不能I/O。
4.如权利要求1所述的存储系统,其特征在于,
来自所述主机计算机的针对所述虚拟逻辑单元的端口状态的询问为针对所述虚拟逻辑单元的端口组的状态的询问,
所述第1存储装置返回的响应明示出表示包含有所述第1端口的第1端口组的标识符和所述第1端口组的状态,
通过所述第1存储装置返回的响应明示出表示包含有所述第2端口的第2端口组的标识符和所述第2端口组的状态为无法响应、或者所述第1存储装置返回的响应不包含关于所述第2端口组的信息,来示出所述第2存储装置针对所述端口状态的询问为无法响应。
5.如权利要求1所述的存储系统,其特征在于,
在所述第1逻辑单元与所述第2逻辑单元处于同步状态的情况下,能够从所述主机计算机经由所述第1端口及所述第2端口访问所述虚拟逻辑单元,
在所述第1逻辑单元与所述第2逻辑单元处于非同步状态的情况下,所述第1存储装置将所述响应返回至所述主机计算机,所述第2存储装置不返回所述响应。
6.如权利要求1所述的存储系统,其特征在于,
所述第1存储装置从所述第2存储装置接收表示所述第2端口的状态的信息,
所述第2存储装置从所述第1存储装置接收表示所述第1端口的状态的信息,
在所述第1逻辑单元与所述第2逻辑单元处于同步状态的情况下,
所述第1存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,将表示所述第1端口的状态为通过第1端口管理信息示出的状态且所述第2端口的状态为从所述第2存储装置接收到的信息示出的状态的响应返回至所述主机计算机,
所述第2存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,将表示所述第2端口的状态为通过第2端口管理信息示出的状态且所述第1端口的状态为从所述第1存储装置接收到的信息示出的状态的响应返回至所述主机计算机。
7.如权利要求1所述的存储系统,其特征在于,
所述第1存储装置及所述第2存储装置分别保持示出虚拟逻辑单元的逻辑单元处于非同步状态下的优先度的逻辑单元优先度信息,
所述逻辑单元优先度信息示出相比于所述第1逻辑单元优先于所述第2逻辑单元,
所述第1存储装置及所述第2存储装置参照所述逻辑单元优先度信息,决定向所述主机计算机的响应内容。
8.如权利要求1所述的存储系统,其特征在于,
作为所述第1端口及所述第2端口的端口状态,定义有示出从所述主机计算机访问所述虚拟逻辑单元的优先度的优先端口状态及非优先端口状态,
所述第1逻辑单元及所述第2逻辑单元的一方与备用逻辑单元构成复制对,另一方为独立逻辑单元,
在所述第1端口及所述第2端口中,与所述一方的逻辑单元建立了对应关系的端口处于所述优先端口状态,
在所述第1端口及所述第2端口中,与所述另一方的逻辑单元建立了对应关系的端口处于所述非优先端口状态。
9.如权利要求1所述的存储系统,其特征在于,
作为所述第1端口及所述第2端口的端口状态,定义有示出从所述主机计算机访问所述虚拟逻辑单元的优先度的优先端口状态及非优先端口状态,
在所述第1端口及所述第2端口中,距所述主机计算机的距离近的端口处于优先端口状态,
在所述第1端口及所述第2端口中,距所述主机计算机的距离远的端口处于非优先端口状态。
10.如权利要求1所述的存储系统,其特征在于,
作为所述第1端口及所述第2端口的端口状态,定义有示出从所述主机计算机访问所述虚拟逻辑单元的优先度的优先端口状态及非优先端口状态,
所述第1存储装置及所述第2存储装置监视本装置及另一装置的负荷状态,
所述第1存储装置及所述第2存储装置基于所述第1存储装置与所述第2存储装置的负荷状态之差,决定所述第1端口及所述第2端口的状态。
11.一种存储系统的控制方法,所述存储系统以包括能够彼此通信的第1存储装置和第2存储装置在内的多个存储装置为基础,将虚拟存储装置提供至主机计算机,所述控制方法的特征在于,
所述第1存储装置提供第1逻辑单元,包括与所述第1逻辑单元建立了对应关系的第1端口和包含所述第1端口的状态的信息在内的第1端口管理信息,
所述第2存储装置提供第2逻辑单元,包括与所述第2逻辑单元建立了对应关系的第2端口和包含所述第2端口的状态的信息在内的第2端口管理信息,
所述第1逻辑单元及所述第2逻辑单元作为一个虚拟逻辑单元提供至所述主机计算机,
所述第1存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,将表示所述第1端口的状态为通过所述第1端口管理信息示出的状态且所述第2存储装置针对所述端口状态的询问无法响应的响应返回至所述主机计算机,
所述第2存储装置针对来自所述主机计算机的指定了所述虚拟逻辑单元的端口状态的询问,不返回响应。
12.如权利要求11所述的存储系统的控制方法,其特征在于,
所述第1存储装置保持表示示出所述第1逻辑单元能否I/O的LU状态的第1逻辑单元管理信息,
所述第2存储装置保持表示示出所述第2逻辑单元能否I/O的LU状态的第2逻辑单元管理信息,
所述第1存储装置及所述第2存储装置分别基于所述第1逻辑单元管理信息及所述第2逻辑单元管理信息示出的LU状态,决定针对所述端口状态的询问的响应的有无。
13.如权利要求12所述的存储系统的控制方法,其特征在于,
所述第1逻辑单元管理信息及所述第2逻辑单元管理信息分别示出在仅使用所述第1逻辑单元和所述第2逻辑单元的一方的情况下优先选择的主逻辑单元,
在所述第1逻辑单元及所述第2逻辑单元从同步状态变化至非同步状态的情况下,
所述第1存储装置在所述第1逻辑单元管理信息中在所述第1逻辑单元为所述主逻辑单元的情况下,将所述第1逻辑单元的LU状态维持为能够I/O,在所述第2逻辑单元为所述主逻辑单元的情况下,将所述第1逻辑单元的LU状态变更为不能I/O,
所述第2存储装置在所述第2逻辑单元管理信息中在所述第2逻辑单元为所述主逻辑单元的情况下,将所述第2逻辑单元的LU状态维持为能够I/O,在所述第1逻辑单元为所述主逻辑单元的情况下,将所述第2逻辑单元的LU状态变更为不能I/O。
14.如权利要求11所述的存储系统的控制方法,其特征在于,
来自所述主机计算机的针对所述虚拟逻辑单元的端口状态的询问为针对所述虚拟逻辑单元的端口组的状态的询问,
所述第1存储装置返回的响应明示出表示包含有所述第1端口的第1端口组的标识符和所述第1端口组的状态,
通过所述第1存储装置返回的响应明示出表示包含有所述第2端口的第2端口组的标识符和所述第2端口组的状态为无法响应、或者所述第1存储装置返回的响应不包含关于所述第2端口组的信息,来示出所述第2存储装置针对所述端口状态的询问为无法响应。
15.如权利要求11所述的存储系统的控制方法,其特征在于,
在所述第1逻辑单元与所述第2逻辑单元处于同步状态的情况下,能够从所述主机计算机经由所述第1端口及所述第2端口访问所述虚拟逻辑单元,
在所述第1逻辑单元与所述第2逻辑单元处于非同步状态的情况下,所述第1存储装置将所述响应返回至所述主机计算机,所述第2存储装置不返回所述响应。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810150762.8A CN108196800B (zh) | 2013-08-20 | 2013-08-20 | 存储系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/072149 WO2015025358A1 (ja) | 2013-08-20 | 2013-08-20 | ストレージシステム及びストレージシステムの制御方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810150762.8A Division CN108196800B (zh) | 2013-08-20 | 2013-08-20 | 存储系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104981788A CN104981788A (zh) | 2015-10-14 |
CN104981788B true CN104981788B (zh) | 2018-03-20 |
Family
ID=52483171
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810150762.8A Active CN108196800B (zh) | 2013-08-20 | 2013-08-20 | 存储系统 |
CN201380072318.4A Active CN104981788B (zh) | 2013-08-20 | 2013-08-20 | 存储系统及存储系统的控制方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810150762.8A Active CN108196800B (zh) | 2013-08-20 | 2013-08-20 | 存储系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9794342B2 (zh) |
JP (1) | JP5948504B2 (zh) |
CN (2) | CN108196800B (zh) |
DE (1) | DE112013006643B4 (zh) |
GB (1) | GB2549242B (zh) |
WO (1) | WO2015025358A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2549242B (en) * | 2013-08-20 | 2020-10-28 | Hitachi Ltd | Storage system and control method for storage system |
JP6231685B2 (ja) | 2014-07-16 | 2017-11-15 | 株式会社日立製作所 | ストレージシステム及び通知制御方法 |
CN105653529B (zh) * | 2014-11-12 | 2020-08-04 | 富泰华工业(深圳)有限公司 | 存储管理系统、管理装置及方法 |
US10996864B1 (en) * | 2016-03-09 | 2021-05-04 | EMC IP Holding Company LLC | Aggregating ALUA statuses from multiple arrays |
US10782889B2 (en) * | 2016-05-10 | 2020-09-22 | Hewlett Packard Enterprise Development Lp | Fibre channel scale-out with physical path discovery and volume move |
US11803453B1 (en) * | 2017-03-10 | 2023-10-31 | Pure Storage, Inc. | Using host connectivity states to avoid queuing I/O requests |
US20190235959A1 (en) * | 2018-01-30 | 2019-08-01 | International Business Machines Corporation | Proactive Node Preference Changing in a Storage Controller |
JP6814764B2 (ja) * | 2018-04-06 | 2021-01-20 | 株式会社日立製作所 | 情報処理システム及びパス管理方法 |
US11269802B2 (en) * | 2019-06-24 | 2022-03-08 | Western Digital Technologies, Inc. | Lightweight proxy for handling SCSI commands in an active array-standby array configuration |
CN112311743A (zh) * | 2019-07-31 | 2021-02-02 | 中兴通讯股份有限公司 | 一种存储设备间通信方法、装置、存储介质及存储设备 |
CN112286446B (zh) * | 2020-09-17 | 2022-12-20 | 杭州华澜微电子股份有限公司 | 一种存储装置及其控制方法 |
JP7524701B2 (ja) | 2020-10-01 | 2024-07-30 | 富士通株式会社 | 制御装置及び制御方法 |
CN113746895B (zh) * | 2021-07-23 | 2023-04-21 | 苏州浪潮智能科技有限公司 | 一种获取多路径磁盘目标端口组信息的方法和装置 |
CN114627938A (zh) * | 2022-03-16 | 2022-06-14 | 英韧科技(上海)有限公司 | 数据写入方法和装置以及存储介质 |
US20240256125A1 (en) * | 2023-01-30 | 2024-08-01 | Dell Products L.P. | Dynamic configuration of logical storage devices accessible across multiple storage systems |
JP7548614B1 (ja) | 2023-03-28 | 2024-09-10 | Necプラットフォームズ株式会社 | 情報処理装置及び入出力処理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799743A (zh) * | 2009-02-05 | 2010-08-11 | 株式会社日立制作所 | 用于逻辑卷管理的方法和装置 |
CN101840309A (zh) * | 2009-10-28 | 2010-09-22 | 创新科存储技术有限公司 | 多路径环境下双控磁盘阵列的访问控制方法及系统 |
CN102187324A (zh) * | 2008-11-13 | 2011-09-14 | Lsi公司 | 用于直接附连存储系统的活动-活动故障转移 |
US8443232B1 (en) * | 2005-10-28 | 2013-05-14 | Symantec Operating Corporation | Automatic clusterwide fail-back |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6421711B1 (en) * | 1998-06-29 | 2002-07-16 | Emc Corporation | Virtual ports for data transferring of a data storage system |
US6952737B1 (en) * | 2000-03-03 | 2005-10-04 | Intel Corporation | Method and apparatus for accessing remote storage in a distributed storage cluster architecture |
US7266556B1 (en) * | 2000-12-29 | 2007-09-04 | Intel Corporation | Failover architecture for a distributed storage system |
JP2003296039A (ja) * | 2002-04-02 | 2003-10-17 | Hitachi Ltd | クラスタ構成記憶システム及び制御方法 |
US7263593B2 (en) * | 2002-11-25 | 2007-08-28 | Hitachi, Ltd. | Virtualization controller and data transfer control method |
JP2004192105A (ja) * | 2002-12-09 | 2004-07-08 | Hitachi Ltd | 記憶装置の接続装置およびそれを含むコンピュータシステム |
US7747835B1 (en) * | 2005-06-10 | 2010-06-29 | American Megatrends, Inc. | Method, system, and apparatus for expanding storage capacity in a data storage system |
JP4224077B2 (ja) * | 2006-04-04 | 2009-02-12 | 株式会社東芝 | ストレージシステム |
JP4920291B2 (ja) | 2006-04-18 | 2012-04-18 | 株式会社日立製作所 | 計算機システム、アクセス制御方法及び管理計算機 |
US7743155B2 (en) * | 2007-04-20 | 2010-06-22 | Array Networks, Inc. | Active-active operation for a cluster of SSL virtual private network (VPN) devices with load distribution |
JP2009093316A (ja) * | 2007-10-05 | 2009-04-30 | Hitachi Ltd | ストレージシステム及び仮想化方法 |
US8510848B1 (en) | 2009-02-02 | 2013-08-13 | Motorola Mobility Llc | Method and system for managing data in a communication network |
CN102334093B (zh) * | 2009-03-18 | 2017-08-01 | 株式会社日立制作所 | 存储控制装置以及虚拟卷的控制方法 |
US8443160B2 (en) * | 2010-08-06 | 2013-05-14 | Hitachi, Ltd. | Computer system and data migration method |
US8521922B2 (en) * | 2011-01-10 | 2013-08-27 | International Business Machines Corporation | Input/output (I/O) path selection based on workload types |
JP5749803B2 (ja) * | 2011-04-27 | 2015-07-15 | 株式会社日立製作所 | 情報記憶システム及びストレージシステム管理方法 |
CN103049225A (zh) * | 2013-01-05 | 2013-04-17 | 浪潮电子信息产业股份有限公司 | 一种双控双活的存储系统 |
GB2521964A (en) * | 2013-03-14 | 2015-07-08 | Hitachi Ltd | Method and apparatus of disaster recovery virtualization |
WO2014196000A1 (ja) * | 2013-06-03 | 2014-12-11 | 株式会社日立製作所 | ストレージ装置およびストレージ装置制御方法 |
GB2549242B (en) * | 2013-08-20 | 2020-10-28 | Hitachi Ltd | Storage system and control method for storage system |
-
2013
- 2013-08-20 GB GB1515202.8A patent/GB2549242B/en not_active Expired - Fee Related
- 2013-08-20 JP JP2015532601A patent/JP5948504B2/ja active Active
- 2013-08-20 WO PCT/JP2013/072149 patent/WO2015025358A1/ja active Application Filing
- 2013-08-20 DE DE112013006643.2T patent/DE112013006643B4/de active Active
- 2013-08-20 US US14/770,589 patent/US9794342B2/en active Active
- 2013-08-20 CN CN201810150762.8A patent/CN108196800B/zh active Active
- 2013-08-20 CN CN201380072318.4A patent/CN104981788B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8443232B1 (en) * | 2005-10-28 | 2013-05-14 | Symantec Operating Corporation | Automatic clusterwide fail-back |
CN102187324A (zh) * | 2008-11-13 | 2011-09-14 | Lsi公司 | 用于直接附连存储系统的活动-活动故障转移 |
CN101799743A (zh) * | 2009-02-05 | 2010-08-11 | 株式会社日立制作所 | 用于逻辑卷管理的方法和装置 |
CN101840309A (zh) * | 2009-10-28 | 2010-09-22 | 创新科存储技术有限公司 | 多路径环境下双控磁盘阵列的访问控制方法及系统 |
Non-Patent Citations (1)
Title |
---|
一种多路径I/O技术在电视台SAN存储网络中的应用探讨;王炎;《广播与电视技术》;20130331(第3期);第86-93页 * |
Also Published As
Publication number | Publication date |
---|---|
GB201515202D0 (en) | 2015-10-14 |
DE112013006643B4 (de) | 2023-02-02 |
GB2549242A8 (en) | 2020-07-29 |
US9794342B2 (en) | 2017-10-17 |
DE112013006643T5 (de) | 2015-11-05 |
JPWO2015025358A1 (ja) | 2017-03-02 |
US20160006810A1 (en) | 2016-01-07 |
CN108196800B (zh) | 2021-02-05 |
CN104981788A (zh) | 2015-10-14 |
GB2549242B (en) | 2020-10-28 |
WO2015025358A1 (ja) | 2015-02-26 |
JP5948504B2 (ja) | 2016-07-06 |
CN108196800A (zh) | 2018-06-22 |
GB2549242A (en) | 2017-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104981788B (zh) | 存储系统及存储系统的控制方法 | |
CN109857445A (zh) | 存储系统和控制软件配置方法 | |
CN103890729B (zh) | 计算机化方法、存储服务器及管理服务器 | |
CN102469025B (zh) | 多存储系统上的多路径交换 | |
CN101753617B (zh) | 一种云存储系统和方法 | |
CN103608796B (zh) | 大规模存储系统 | |
CN104239227B (zh) | 一种虚拟化存储管理装置、本地虚拟存储管理装置及方法 | |
US20130111471A1 (en) | Compute and storage provisioning in a cloud environment | |
CN106446159B (zh) | 一种存储文件的方法、第一虚拟机及名称节点 | |
CN104166597B (zh) | 一种分配远程内存的方法及装置 | |
CN104603739A (zh) | 对并行存储的块级访问 | |
CN103827825A (zh) | 虚拟资源对象组件 | |
US20150215394A1 (en) | Load distribution method taking into account each node in multi-level hierarchy | |
CN101271382A (zh) | 存储系统及存储系统的运用方法 | |
US20170315883A1 (en) | Data storage with virtual appliances | |
KR102191224B1 (ko) | 범용 병렬 정보 액세스를 위한 시스템 및 그것의 동작 방법 | |
CN105635310B (zh) | 一种存储资源的访问方法及装置 | |
TW201432474A (zh) | 應用伺服器至非依電性隨機存取記憶體之路徑選取技術 | |
CN104168323A (zh) | 一种云服务系统及方法 | |
CN106446268A (zh) | 一种数据库横向扩展系统及方法 | |
CN102387175A (zh) | 一种存储系统迁移的方法和系统 | |
CN103207801B (zh) | 虚拟机迁移的方法、装置和系统及光纤通道交换机 | |
US7441009B2 (en) | Computer system and storage virtualizer | |
US9544371B1 (en) | Method to discover multiple paths to disk devices cluster wide | |
CN105637471B (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 |