CN101277217A - 存储维护·管理装置的冗余化方法及使用该方法的装置 - Google Patents

存储维护·管理装置的冗余化方法及使用该方法的装置 Download PDF

Info

Publication number
CN101277217A
CN101277217A CNA2007101946237A CN200710194623A CN101277217A CN 101277217 A CN101277217 A CN 101277217A CN A2007101946237 A CNA2007101946237 A CN A2007101946237A CN 200710194623 A CN200710194623 A CN 200710194623A CN 101277217 A CN101277217 A CN 101277217A
Authority
CN
China
Prior art keywords
management devices
management
storage system
data
svp
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
Application number
CNA2007101946237A
Other languages
English (en)
Other versions
CN101277217B (zh
Inventor
藤田高广
池田博和
大崎伸之
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN101277217A publication Critical patent/CN101277217A/zh
Application granted granted Critical
Publication of CN101277217B publication Critical patent/CN101277217B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0695Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2069Management of state, configuration or failover
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Abstract

本发明提供一种存储维护·管理装置的冗余化方法及使用该方法的装置,可以防止在维护·管理装置的异常而引起的失效切换后发生单一故障点而降低维护·管理装置的可靠性。第一管理装置以及第二管理装置保存所述第一存储系统的识别符、以及从第一存储系统取得的管理数据,所述方法包含以下步骤:所述第一管理装置中发生故障时,从所述多个管理装置中选择第三管理装置;将所述第二管理装置中保存的所述识别符,从所述第二管理装置发送至所述选择的第三管理装置;所述选择的第三管理装置保存从所述第二管理装置发送的所述识别符。

Description

存储维护·管理装置的冗余化方法及使用该方法的装置
技术领域
本发明涉及存储系统的维护·管理装置的冗余化方法。
背景技术
在多个计算机和多个存储系统之间以通信线(存储区域网络(SAN))进行连接,以多个计算机共享高可靠性、高功能的存储系统的计算机系统得到了普及。随着计算机系统的大规模化、复杂化,维护·管理操作的重要性不断增大。在SAN中,存储系统由多个计算机共享。因此,存储系统的维护以及管理是计算机系统的维护以及管理操作中最重要的操作之一。
例如在专利文献1中公开了使存储系统的维护以及管理的可靠性提高的技术。根据专利文献1,维护·管理对象装置所具备的维护管理处理部被多重化。当一个维护管理处理部中发生了故障时,可以使用其他维护管理处理部,因此提高维护以及管理的可靠性(参照专利文献1的图1)。
【专利文献1】特许第3771162号说明书
发明内容
由于计算机系统的大规模化以及数据量的增大,存储系统的数量不断增大。与此相伴,在通过维护·管理装置的二重化使存储系统的维护·管理的可靠性提高的情况下,大量的维护·管理装置存在于计算机系统中。
当对维护·管理装置进行二重化时,当主维护·管理装置中发生了故障时,通过副维护·管理装置进行失效切换(Failover),可以继续使用维护·管理功能。然而,在副维护·管理装置的失效切换后,尽管副维护·管理装置存在于计算机系统中,但进行了失效切换的维护·管理装置没有被冗余化。即,进行了失效切换的副维护·管理装置成为SPOF(Single Point Of Failure,单一故障点),因此维护·管理功能的可靠性降低。
本申请中公开的代表性的发明,作为对具备多个存储系统、以及管理所述多个存储系统的多个管理装置的计算机系统进行控制的方法,其特征在于:所述各存储系统具备存储数据的存储装置、控制向所述存储装置的数据存储的控制装置,所述各管理装置具备接收从所述存储系统取得的数据的第一接口、与所述第一接口连接的处理器、与所述处理器连接的存储器,所述第一接口与将所述多个管理装置可通信地连接的第一网络相连,所述多个管理装置包含第一管理装置、第二管理装置以及第三管理装置,所述存储系统包含第一存储系统,所述第一管理装置以及所述第二管理装置保存所述第一存储系统的识别符以及从所述第一存储系统取得的管理数据,所述方法包含以下步骤:在所述第一管理装置中发生了故障时,从所述多个管理装置中选择所述第三管理装置的步骤;将所述第二管理装置中保存的所述第一存储系统的识别符,从所述第二管理装置发送至所述选择的第三管理装置的步骤;所述选择的第三管理装置保存从所述第二管理装置发送的所述第一存储系统的识别符的步骤。
根据本发明的一个实施方式,在主维护·管理装置中发生故障、副维护·管理装置进行失效切换后,通过再构成冗余结构,维护·管理装置避免成为SPOF(Single Point Of Failure),从而可以提高维护·管理功能的可靠性。
另外,当副维护·管理装置中发生了故障时,也可以通过再构成冗余结构,避免主维护·管理装置成为SPOF(Single Point Of Failure)。
附图说明
图1是表示本发明的实施方式的计算机系统的结构的框图。
图2是表示本发明的实施方式的SVP的结构的框图。
图3是在逻辑上表示本发明的实施方式的存储系统与SVP的关系的说明图。
图4是本发明的实施方式的活动SVP所保存的表的说明图。
图5是本发明的实施方式的待机SVP所保存的表的说明图。
图6是表示本发明的实施方式中执行的监视程序的处理的流程图。
图7是表示本发明的实施方式中执行的DKC数据取得程序的处理的流程图。
图8是表示本发明的实施方式中执行的活动SVP监视程序的处理的流程图。
图9是表示本发明的实施方式中执行的活动SVP监视程序的处理中,当活动SVP中发生了故障时所执行的处理的流程图。
图10是本发明的实施方式的冗余再构成计算表的说明图。
图11是本发明的实施方式中再构成冗余结构后的待机SVP所保存的表的说明图。
图12是表示本发明的实施方式的待机SVP监视程序的处理的流程图。
图13是表示本发明的实施方式的冗余再构成可否应答程序的处理的流程图。
图14是在逻辑上表示本发明的实施方式的存储系统与SVP的关系的说明图。
图15是表示本发明的实施方式的SVP故障恢复程序的处理的说明图。
符号说明
1计算机系统、100光纤通道交换机、200计算机、400存储系统、
410存储装置、420存储控制装置、500SVP、600管理计算机、
700冗余结构、2100管理DKC表、2200待机SVP表、2300冗余结构活动SVP表、2400活动SVP-DKC管理表、2500SVP状态表、2600冗余再构成计算表、3000监视程序、4000活动SVP监视程序、6000待机SVP管理程序、8000冗余再构成可否应答程序、10000SVP故障恢复程序、30000DKC数据取得程序、50000DKC数据仓库
具体实施方式
参照附图,说明本发明的实施方式。
<整体图>
图1是表示本发明的实施方式的计算机系统1的结构的框图。
计算机系统1具备:多个计算机200、管理计算机600、光纤通道交换机100、多个存储系统400以及多个SVP(Service Processor)500。
计算机200与存储系统400通过光纤通道交换机100相连。
存储系统400与SVP500通过网络20互相连接。
另外,计算机200、管理计算机600、光纤通道交换机100以及SVP500通过网络10互相连接。
<光纤通道交换机100>
光纤通道交换机100具备多个接口102以及一个以上接口104。各接口102与计算机200或存储系统400连接。接口104与网络10连接。
<计算机200>
计算机200具备:控制部206、存储器210、存储装置212、显示部208、接口202以及接口204。接口202与光纤通道交换机100连接。接口204与网络10连接。
例如,在存储装置212中也可以存储应用程序(省略图示)。应用程序根据需要被读入存储器210,通过控制部206被执行。执行应用程序的控制部206可以根据需要执行针对存储系统400的数据写入(写(Write))以及读出(读(Read))。数据的写以及读请求,从接口202经由光纤通道交换机100被发送至存储系统400。
<管理计算机600>
管理计算机600具备:控制部606、存储器610、存储装置612、显示部608以及接口604。接口604与网络10连接。
在图1中仅表示一个管理计算机600,但计算机系统1可以具备与网络10相连的多个管理计算机600。
管理计算机600可以通过网络10与SVP500通信。如后所述,SVP500从存储系统400取得用于管理存储系统400的信息(例如存储系统400的性能信息等)。管理计算机600可以通过网络10,从一个或多个SVP500取得这些信息。因此,管理计算机可以统一地管理从多个存储系统400取得的信息。
或者,管理计算机600可以从SVP500接收各种通知。在这种情况下,管理计算机600通过在显示部608上进行显示,可以向计算机系统1的管理者或用户通知已接收到通知。
而且,管理计算机600可以向SVP500发送各种指示以及信息。计算机系统1的管理者或用户通过操作管理计算机600可以控制SVP500。
<存储系统400>
存储系统400具备存储控制装置420以及存储装置410。
存储控制装置420具备处理器430、控制存储器440、非易失性存储器450、高速缓冲存储器460、光纤通道接口470、光纤通道接口480以及网络接口490,并将它们互相连接。
存储装置410包含记录介质,按照来自存储控制装置420的请求,对记录介质进行数据的读和写。
光纤通道接口480与存储装置410连接。
存储控制装置420通过光纤通道接口480对存储装置410输入输出数据。
此外,光纤通道接口480可以通过ATA、串行ATA、并行SCSI、串行SCSI等接口来替换。
存储控制装置420通过将存储装置410作为具有冗余性的RAID(Redundant Arrays of Inexpensive Disks)来进行控制,可以使存储系统400的可靠性以及性能提高。
此外,存储系统400可以具备一个或多个存储装置410。存储装置410可以是例如硬盘驱动器(HDD)那样的磁存储装置,也可以是其它种类的存储装置(例如光学存储装置或半导体存储装置)。
在存储装置410中设定物理的或逻辑的存储区域(例如物理卷或逻辑卷等卷,以后将该存储区域称为卷)。通过存储区域识别符,在存储系统400内唯一识别各卷。
光纤通道接口470与光纤通道交换机100连接。存储控制装置420通过光纤通道接口470,接受从与光纤通道交换机100连接的主计算机200发出的数据输入输出请求。该数据输入输出请求是对所述存储区域进行的。
网络接口490与网络20连接。
存储装置410与存储控制装置420间的数据传输,比存储控制装置420内的数据传输慢。因此,存储控制装置420通过将频繁被访问的数据存储在高速缓冲存储器460上,可以使数据传输性能提高。高速缓冲存储器460可以是例如DRAM那样的半导体存储器。
通过将非易失性存储器450中存储的程序读入控制存储器440,由处理器430执行该程序,由此来实现上述动作。非易失性存储器450可以是例如HDD,也可以是闪速存储器(Flash Memorry)那样的非易失性的半导体存储器。控制存储器440可以是例如DRAM那样的半导体存储器。
此外,存储控制装置420可以是单处理器结构,也可以是多处理器结构。
即,存储控制装置420可以具备一个或多个处理器430。
<SVP500>
SVP500是为了维护以及管理存储系统400而通过网络20与存储系统400连接的装置。SVP500具备:控制部506、显示部508、存储器510、存储装置512、第一接口502以及第二接口504。
第一接口502与网络10连接。管理计算机600与SVP500通过第一接口502以及网络10进行通信。
第二接口504与网络20连接。存储系统400与SVP500通过第二接口504以及网络20进行通信。另外,SVP500彼此通过第二接口504以及网络20互相通信。
接下来,使用图2详细说明SVP500。
图2是表示本发明的实施方式的SVP500的结构的框图。
在存储器510中存储:管理DKC表2100、待机SVP表2200、冗余结构活动SVP表2300、活动SVP-DKC管理表2400、SVP状态表2500以及冗余再构成计算表2600。
在存储装置512中存储:监视程序3000、活动SVP监视程序4000、待机SVP监视程序6000、冗余再构成可否应答程序8000、SVP故障恢复(Failback)程序10000以及DKC数据取得程序30000。通过控制部506,将这些程序从存储装置512读出到存储器510中并进行执行。
<DKC数据仓库50000>
在存储装置512中还存储了DKC数据仓库(repository)50000。在DKC数据仓库50000中存储了与存储系统400相关的数据。具体而言,SVP500从存储系统400取得为了管理存储系统400而使用的数据(例如结构数据以及信息数据等)。
SVP500从存储系统400定期地取得这些数据,存储在DKC数据仓库50000中。DKC数据仓库50000保存在过去一定期间内所取得的数据。当积累了某一定期间以上的数据时,从DKC数据仓库50000删除最早的数据,将从存储系统400取得的最新的数据存储在DKC数据仓库50000中。
DKC数据仓库50000中存储的数据可以包含以下数据中的至少一种:例如表示处理器430中是否发生了故障的数据、表示高速缓冲存储器460的使用率的数据、表示接口470中的数据输入输出次数的数据、表示针对存储装置410的数据输入输出次数的数据。
SVP500不仅从存储系统400取得数据,也针对存储系统400进行设定(例如存储系统400的启动、停止以及结构变更等)。
通过管理DKC表2100管理SVP500与该SVP500取得数据的存储系统400的组合。关于管理DKC表2100,在后面进行说明(参照图4等)。将从存储系统400定期取得数据的SVP500称为活动SVP。
本实施方式的计算机系统1具备比存储系统400的数量多的SVP500。因此也存在不从存储系统400取得数据的SVP500。这样的SVP500是为了当活动SVP中发生故障时接管活动SVP的工作而待机(即冗余化)的SVP。将这种SVP500称为待机SVP。
通过SVP状态表2500对于SVP500是作为活动SVP工作、还是作为待机SVP工作来进行管理。SVP500可以作为活动SVP工作,也可以作为待机SVP工作。关于SVP状态表2500,在后面进行说明(参照图4等)。
<逻辑图1>
图3是在逻辑上表示本发明的实施方式的存储系统400与SVP500的关系的说明图。
图3(a)表示故障发生前的状态,图3(b)表示在SVP1中发生故障,SVPA进行失效切换(接管),再构成以SVPB作为待机SVP的冗余结构700后的状态。
在图3中,存储系统400与管理该存储系统400的SVP500(即活动SVP)通过线相结合。
例如,SVP500a(SVP1)作为活动SVP而工作,对存储系统400a(DKC1)进行管理。此外,在以下说明中所记载的用语“管理”也包含“维护”的概念载。
在此,图3中显示的SVP1~SVP5以及SVPA~SVPD分别是SVP500的识别符。SVP500a~SVP500k分别相当于图1所示的多个SVP500中的某一个。同样地,DKC1~DKC6分别是存储系统400的识别符。存储系统400a~存储系统400f分别相当于图1所示的多个存储系统400中的某一个。
图3所示的圆角矩形表示冗余结构700。所谓冗余结构700,是包含一个以上的活动SVP、与对这些活动SVP进行冗余化的一个以上的待机SVP的SVP500的集合。在区别记载各冗余结构700的情况下,使用“a”或“b”这样的标记。例如,SVP500a(SVP1)和SVP500b(SVPA)构成了冗余结构700a。SVP500b(SVPA)作为SVP500a(SVP1)的待机SVP而进行工作。即,如后所述,当SVP500a(SVP1)中发生故障时,SVP500b(SVPA)对SVP500a(SVP1)进行失效切换,然后管理存储系统400a(DKC1)。
另外,SVP500e(SVP3)是管理存储系统400c(DKC3)的活动SVP,SVP500g(SVP4)是管理存储系统400d(DKC4)的活动SVP。SVP500f(SVPC)是与SVP500e(SVP3)以及SVP500g(SVP4)构成冗余结构700c的待机SVP。即当SVP500e(SVP3)或SVP500g(SVP4)的一方中发生故障时,SVP500f(SVPC)对该发生了故障的SVP500进行失效切换,然后管理存储系统400c(DKC3)或存储系统400d(DKC4)。
<SVP所保存的表的例子>
在此,对SVP500的存储器510中存储的管理DKC表2100、待机SVP表2200、冗余结构活动SVP表2300、活动SVP-DKC管理表2400以及SVP状态表2500进行说明。
以图3(a)中作为活动SVP的SVP500a(SVP1)以及作为待机SVP的SVP500b(SVPA)为例,使用图4、图5进行说明。
图4是本发明的实施方式的活动SVP、即SVP500a(SVP1)所保存的表的说明图。
图5是本发明的实施方式的待机SVP、即SVP500b(SVPA)所保存的表的说明图。
待机SVP所保存的表分别具有与活动SVP所保存的表相同的项目。
<管理DKC表2100>
SVP500为了管理存储系统400而使用管理DKC表2100。SVP500从管理DKC表2100中设定的存储系统400取得数据。
当SVP500作为活动SVP进行工作时,在管理DKC表2100中存在条目(entry),但SVP500当作为待机SVP进行工作时,在管理DKC表2100中没有条目。当SVP500作为活动SVP进行工作时,管理DKC表2100可以包含一个或多个条目。此外,各表的条目与图4等中表示的各表的行相对应。当管理DKC表2100包含多个条目时,SVP500管理多个存储系统400。
管理DKC表2100对DKC_ID2101以及DKC_Addr2102进行管理。DKC_ID2101是至少在计算机系统1中唯一识别SVP500进行管理并取得数据的存储系统400的识别符。DKC_Addr2102是通过DKC_ID2101识别的存储系统400的接口409的地址。SVP500使用该地址与存储系统400通信,取得数据。
此外,在图4等中例如DKC_ID2101a那样,对识别各项目的号码赋予了字母标记(例如“a”或“b”等)。该标记表示各项目属于哪个SVP500所保存的表。例如,DKC_ID2101a表示SVP500a(SVP1)所保存的管理DKC表2100的DKC_ID2101。关于其它项目也相同。
图4所示的管理DKC表2100a是作为活动SVP的SVP500a(SVP1)所保存的管理DKC表2100。在管理DKC表2100a的DKC_ID2101a以及DKC_Addr2102a中,分别设定了SVP500a(SVP1)管理的存储系统400a的识别符“DKC1”、以及存储系统400a的接口490的地址“AddrD1”。
图5中所示的管理DKC表2100b是作为待机SVP的SVP500b(SVPA)所保存的管理DKC表2100。SVP500b(SVPA)不对存储系统400进行管理,因此在管理DKC表2100b中没有条目。
<待机SVP表2200>
活动SVP为了管理当自身发生故障时接管工作的待机SVP而使用待机SVP表2200。
在活动SVP的待机SVP表2200中通常有条目。另一方面,在待机SVP的待机SVP表2200中没有条目。
活动SVP的待机SVP表2200中没有条目的情况,是在该活动SVP发生故障时没有进行接管工作的待机SVP的状态。即,该活动SVP成为了SPOF(Single Point Of Failure,单一故障点)。
待机SVP表2200对待机SVP_ID2201、SVP_Addr2_2202以及监视2203进行管理。
待机SVP_ID2201是至少在计算机系统1中唯一识别作为待机SVP进行工作的SVP500的识别符。SVP_Addr2_2202是通过待机SVP_ID2201识别的SVP500的第二接口504的地址。在监视2203中设定表示活动SVP是否监视待机SVP正常工作的值。当将监视2203设定为“Y”时,活动SVP监视对应的待机SVP。另一方面,当将监视2203设定为“N”时,活动SVP不监视待机SVP。活动SVP例如可以通过经由网络20的心跳信号(Heartbeat)来监视待机SVP。
待机SVP表2200a是作为活动SVP的SVP500a(SVP1)所保存的待机SVP表2200(图4)。在待机SVP表2200a的待机SVP_ID2201a以及SVP_Addr2_2202a中,分别设定了SVP500b(SVPA)的识别符“SVPA”以及SVP500b(SVPA)的第二接口504的地址“AddrSA2”。这表示SVP500a(SVP1)通过SVP500b(SVPA)被冗余化。换言之,SVP500a(SVP1)和SVP500b(SVPA)构成冗余结构700a。SVP500b(SVPA)是用于将SVP500a(SVP1)冗余化的待机SVP。
在待机SVP表2200a的监视2203a中设定了“Y”。这表示SVP500a(SVP1)使用待机SVP表2200a来监视SVP500b(SVPA)的故障。
待机SVP表2200b是作为待机SVP的SVP500b(SVPA)保存的待机SVP表2200,因此不包含条目(图5)。
<冗余结构活动SVP表2300>
待机SVP为了管理通过该待机SVP接管工作的活动SVP而使用冗余结构活动SVP表2300。
在待机SVP的冗余结构活动SVP表2300中通常有条目。另一方面,在活动SVP的冗余结构活动SVP表2300中没有条目。
待机SVP监视在冗余结构活动SVP表2300中设定的活动SVP。并且,当活动SVP中发生了故障时,待机SVP接管该活动SVP的工作(以后,将其称为失效切换)。
相对于活动SVP的数量,当待机SVP的数量较多时,有时存在保存没有条目的冗余结构活动SVP表2300的待机SVP。保存没有条目的冗余结构活动SVP表2300的待机SVP是备用的待机SVP。
冗余结构活动SVP表2300对活动SVP_ID2301、SVP_Addr1_2302、SVP_Addr_22303、监视2304以及DKC数2305进行管理。
活动SVP_ID2301是至少在计算机系统1中唯一识别作为活动SVP而工作的SVP500的识别符。
SVP_Addr1_2302以及SVP_Addr2_2303分别是通过活动SVP_ID识别的SVP500的第一接口502的地址、以及第二接口504的地址。
在监视2304中,设定表示待机SVP是否监视通过活动SVP_ID2301识别的活动SVP正在正常工作的值。在监视2304中设定了“Y”时,待机SVP监视对应的活动SVP。另一方面,在监视2304中设定了“N”时,待机SVP不监视活动SVP。待机SVP例如通过经由网络20的心跳信号来监视活动SVP。
在DKC数2305中设定通过活动SVP_ID2301识别的活动SVP所管理的DKC台数。
冗余结构活动SVP表2300a是作为活动SVP的SVP500a(SVP1)所保存的冗余结构活动SVP表2300,因此不包含条目(图4)。
冗余结构活动SVP表2300b是作为待机SVP的SVP500b(SVPA)所保存的冗余结构活动SVP表2300(图5)。在活动SVP_ID2301b、SVP_Addr1_2302b以及SVP_Addr2_2303b中,分别设定了作为SVP500a(SVP1)的识别符的“SVP1”、SVP500a(SVP1)的第一接口502的地址“AddrS11”、以及SVP500a(SVP1)的第二接口504的地址“AddrS12”。
在监视2304b中设定“Y”。在DKC数2305b中设定SVP500a(SVP1)所管理的存储系统400的台数“1”。这表示SVP500b(SVPA)监视SVP500a(SVP1),SVP500a(SVP1)管理着一台存储系统400。
<活动SVP-DKC管理表2400>
待机SVP为了管理与该待机SVP一起构成冗余结构700的活动SVP、和该活动SVP管理的存储系统400,而使用活动SVP-DKC管理表2400。
活动SVP所保存的活动SVP-DKC管理表2400中没有条目。另一方面,在待机SVP所保存的活动SVP-DKC管理表2400中通常有条目。但是,在备用的待机SVP所保存的活动SVP-DKC管理表2400中没有条目。在备用的待机SVP保存的管理DKC表2100、待机SVP表2200、冗余结构活动SVP表2300以及活动SVP-DKC管理表2400中没有条目。
在待机SVP进行失效切换后,再构成冗余结构700时使用活动SVP-DKC管理表2400。此时,待机SVP再构成冗余结构700,以使其他待机SVP成为自身的待机SVP。关于冗余结构700的再构成,从监视程序3000的处理流程的说明中可以明了(参照图6~图9)。
活动SVP-DKC管理表2400对活动SVP_ID2401、DKC_ID2402以及DKC_Addr2403进行管理。活动SVP_ID2401是至少在计算机系统1中可以唯一识别作为活动SVP而工作的SVP500的识别符。DKC_ID2402是至少在计算机系统1中唯一识别活动SVP管理并取得数据的存储系统400的识别符。DKC_Addr2403是通过DKC_ID2402识别的存储系统400的接口490的地址。
活动SVP-DKC管理表2400a是作为活动SVP的SVP500a(SVP1)所保存的活动SVP-DKC管理表2400,因此不包含条目(图4)。
活动SVP-DKC管理表2400b是作为待机SVP的SVP500b(SVPA)所保存的活动SVP-DKC管理表2400(图5)。
在活动SVP_ID2401b中设定作为SVP500a(SVP1)的识别符的“SVP1”。该设定表示SVP500b(SVPA)监视SVP500a(SVP1)。
在DKC_ID2402b以及DKC_Addr2403b中,分别设定了SVP500a(SVP1)所管理的存储系统400a(DKC1)的识别符“DKC1”、以及存储系统400a(DKC1)的接口490的地址“AddrD1”。这些设定表示SVP500a(SVP1)管理存储系统400a(DKC1)、以及存储系统400a(DKC1)的接口490的地址是“AddrD1”。
<SVP状态表2500>
SVP状态表2500是SVP500管理自身状态的表。活动SVP、待机SVP、以及备用的待机SVP中的某一个SVP500也为了管理自身状态而使用SVP状态表2500。
SVP状态表2500对SVP_ID2501、SVP_Addr1_2502、SVP_Addr2_2503、状态2504、再构成可否2505以及设置层数2506进行管理。
SVP_ID2501是至少可以在计算机系统1中唯一识别本SVP500(即保存该SVP状态表2500的SVP500)的识别符。
SVP_Addr1_2502以及SVP_Addr2_2503分别是SVP500的第一接口502的地址、以及第二接口504的地址。
在状态2504中设定表示本SVP500是活动SVP还是待机SVP的值。当在状态2504中设定了“活动”时SVP500作为活动SVP工作,当设定了“待机”时SVP500作为待机SVP工作。
再构成可否2505设定表示是否对冗余结构700的再构成请求进行应答的值。当在再构成可否2505中设定了“可以”时,SVP500对再构成请求进行应答,当设定了“不可以”时,SVP500不对再构成请求进行应答。针对不进行冗余结构700的再构成的SVP500,通过将再构成可否2505设定为“不可以”,可以防止再构成冗余结构700。
在设置层数2506中,由管理者对在SVP500的设置时设置SVP的(建筑物)的层数进行设定。
SVP状态表2500a是作为活动SVP的SVP500a(SVP1)所保存的SVP状态表2500。在SVP_ID2501a、SVP_Addr1_2502a以及SVP_Addr2_2503a中,分别设定作为SVP500a(SVP1)自身的识别符的“SVP1”、SVP500a(SVP1)自身的第一接口502的地址“AddrS11”、以及第二接口504的地址“AddrS12”。当变更这些地址时,第一接口502以及第二接口504的地址被变更。在状态2504a中设定“活动”,其表示“SVP500a(SVP1)作为活动SVP而工作。在再构成可否2505a中设定“不可以”,其表示由于SVP500a不是待机SVP因此不对再构成请求进行应答。在设置层数2506a中设定了“3”。这表示在第3层设置了SVP500a(SVP1)。
SVP状态表2500b是作为待机SVP的SVP500b(SVPA)所保存的SVP状态表2500。在SVP_ID2501b、SVP_Addr1_2502b以及SVP_Addr2_2503b中,分别设定作为SVP500b(SVPA)自身的识别符的“SVPA”、SVP500b(SVPA)自身的第一接口502的地址“AddrSA1”、以及第二接口504的地址“AddrSA2”。当变更这些地址时,第一接口502以及第二接口504的地址被变更。在状态2504b中设定“待机”,表示SVP500b(SVPA)作为待机SVP而工作。在再构成可否2505b中设定“可以”,表示SVP500b(SVPA)对再构成请求进行应答。在设置层数2506b中设定了“3”。这表示在第3层设置了SVP500b(SVPA)。
此外,本实施方式的SVP状态表2500,作为表示设置了SVP500的位置的信息而管理设置层数2506。但是,设置层数2506是表示设置了SVP500的位置的信息的一例,也可以管理其它表示位置的信息。例如,SVP状态表2500可以管理表示设置了SVP500的位置的坐标的信息。
<监视程序3000>
监视程序3000是SVP500为了监视其它SVP500而执行的程序。通过SVP500的控制部506将监视程序3000从存储装置512读出,在每一定时间定期地执行。
SVP500,在该SVP500是活动SVP时从存储系统400取得数据,监视待机SVP。另一方面,SVP500,在该SVP500是待机SVP时监视活动SVP。
图6是表示本发明的实施方式中执行的监视程序3000的处理的流程图。
通过执行监视程序3000的控制部506来执行图6所示的各步骤。
控制部506在步骤3010中参照SVP状态表2500。
控制部506在步骤3020中判定SVP状态表2500的状态2504是否是“活动”。当状态2504是“活动”时,本SVP500是活动SVP。在这种情况下,控制部506执行待机SVP监视程序6000(步骤3030),然后执行DKC数据取得程序30000(步骤3040),结束处理。
另一方面,在步骤3020中SVP状态表2500的状态2504不是“活动”时,本SVP500是待机SVP。在这种情况下,控制部506执行活动SVP监视程序4000(步骤3050),结束处理。关于活动SVP监视程序4000,在后面参照图8进行详细说明。
例如,SVP500a的控制部506参照SVP状态表2500a的状态2504a。在这种情况下,由于在状态2504a中设定了“活动”,因此SVP500a的控制部506判定出自身是活动SVP。
另一方面,SVP500b的控制部506参照SVP状态表2500b的状态2504b。在这种情况下,由于在状态2504b中设定了“待机”,因此SVP500b的控制部506判定出自身不是活动SVP(即,是待机SVP)。
关于DKC数据取得程序30000、待机SVP监视程序6000以及活动SVP监视程序4000,在后面进行说明(参照图7至图9以及图12)。
<DKC数据取得程序30000>
DKC数据取得程序30000,是活动SVP用于取得存储系统400的数据、将所取得的数据存储在自身的DKC数据仓库50000中、而且存储在构成了冗余结构700的待机SVP的DKC数据仓库50000中的程序。通过SVP500的控制部506,将DKC数据取得程序30000从存储装置512读出并执行。在监视程序3000的步骤3040中,通过活动SVP的控制部506执行DKC数据取得程序30000。例如,图3(a)的SVP500a(SVP1)的控制部506执行DKC数据取得程序30000。
图7是表示本发明的实施方式中执行的DKC数据取得程序30000的处理的流程图。
图7作为一例,对SVP500a(SVP1)的控制部506执行DKC数据取得程序30000的情况进行说明。
控制部506参照管理DKC表2100a,取得从中取得数据的存储系统400a(DKC1)的识别符(即“DKC1”)(步骤30010)。
然后,控制部506从通过步骤30010中所取得的识别符而识别的存储系统400a(DKC1)取得数据,将所取得的数据存储在DKC数据仓库50000a中(步骤30020)。
然后,控制部506参照待机SVP表2200a,将步骤30010中取得的存储系统400a(DKC1)的数据存储在作为待机SVP的SVPA(SVP500b)的DKC数据仓库50000b中(步骤30030)。然后控制部506结束处理。
<活动SVP监视程序4000>
活动SVP监视程序4000是待机SVP用于监视活动SVP的运行状况的程序。通过SVP500的控制部506,将活动SVP监视程序4000从存储装置512读出并执行。在监视程序3000的步骤3050中,通过待机SVP的控制部506执行活动SVP监视程序4000。例如,SVP500b(SVPA)的控制部506执行活动SVP监视程序4000。
图8是表示本发明的实施方式中执行的活动SVP监视程序4000的处理的流程图。
图8作为一例,对图3(a)的SVP500b(SVPA)的控制部506执行活动SVP监视程序4000的情况进行说明。关于后述的图9也相同。
控制部506在步骤4010中从冗余结构活动SVP表2300b中取得在活动SVP_ID2301b中设定的“SVP1”以及在SVP_Addr2_2303b中设定的“AddrS12”。
控制部506在步骤4020中通过网络20对步骤4010中取得的活动SVP请求运行状况的应答。此时,控制部506使用SVP_Addr2“AddrS12”作为请求的发送目的地。此外,所谓在步骤4010中取得的活动SVP,是通过识别符SVP1而识别的SVP500a。在以下的说明中为简单起见,将通过识别符SVP1而识别的SVP500a简称为SVP1。
控制部506判定是否接收到针对步骤4020中发送的请求的应答(步骤4030)。在步骤4030中判定为有应答时,处理进入步骤4040。另一方面,当判定为没有应答时,处理进入图9的步骤5010(A)。当有应答时表示SVP1在正常地工作。当没有应答时表示SVP1中发生了故障。步骤4020中的运行状况应答请求和针对该请求的应答是例如通过网络20的心跳信号。
当步骤4030中判定为有应答时,控制部506判定是否对冗余结构活动SVP表2300b的全部活动SVP完成了处理(步骤4040)。在步骤4040中判定为针对冗余结构活动SVP表2300b的全部活动SVP完成了处理时,控制部506结束处理。另一方面,当判定为冗余结构活动SVP表2300b中有未处理的活动SVP时,控制器506重复步骤4010以后的处理。在冗余结构活动SVP表2300b的例子中,仅设定了一个活动SVP(即SVP1)。因此,在该例中,当处理了SVP1后结束处理。
图9是表示本发明的实施方式中执行的活动SVP监视程序4000的处理中、在活动SVP中发生了故障时执行的处理的流程图。
在图8的步骤4030中,当没有应答时处理进入图9的步骤5010(A)。
在步骤5010中,控制部506从冗余结构活动SVP表2300b中设定的活动SVP中的、在步骤4030中未应答的活动SVP以外的活动SVP所保存的待机SVP表2200中,删除与本SVP500(即执行活动SVP监视程序4000的SVP500)相关的条目(步骤5010)。所谓与本SVP500相关的条目,是作为待机SVP_ID2201而设定了本SVP500的识别符的条目。
通过本SVP500向活动SVP发送删除条目的请求来执行步骤5010。接收到该请求的活动SVP执行所请求的条目的删除。
当待机SVP通过对步骤4030中未应答的活动SVP进行失效切换而成为活动SVP时,该待机SVP不再是冗余化了的其它活动SVP的待机SVP(即,活动SVP无法对其它SVP500进行失效切换)。因此,从其它SVP的待机SVP表2200中删除本SVP500的条目。在冗余结构活动SVP表2300b中仅设定了一个活动SVP,因此不执行步骤5010。
为了说明步骤5010,举出图3(a)的SVP500f(SVPC)。SVP500f(SVPC)是将两个活动SVP、即SVP500e(SVP3)以及SVP500g(SVP4)冗余化的待机SVP。换言之,当SVP500e(SVP3)以及SVP500g(SVP4)的某一个中发生故障时,SVP500f(SVPC)对该发生了故障的SVP500进行失效切换。
在SVP500f(SVPC)中执行活动SVP监视程序4000。在步骤4030中没有来自SVP500e(SVP3)的应答时,在步骤5010中,SVP500f(SVPC)参照冗余结构活动SVP表2300f。冗余结构活动SVP表2300f虽未图示,但根据标记“f”可以理解它是由SVP500f保存的表。以下,号码后的标记(例如“e”或“g”等)表示保存着表的SVP500。
此外,在执行步骤5010的时刻,冗余结构活动SVP表2300f包含两个条目。在这两个条目的活动SVP_ID2301中分别设定了“SVP3”以及“SVP4”。
另一方面,SVP500e(SVP3)所保存的待机SVP表2200e仅包含一个条目。在该条目的待机SVP_ID2201中设定了“SVPC”。同样地,SVP500g(SVP4)所保存的待机SVP表2200g中仅包含一个条目。在该条目的待机SVP_ID2201中设定了“SVPC”。
SVP500f(SVPC),从未应答的SVP500e(SVP3)以外的活动SVP、即SVP500g(SVP4)的待机SVP表2200g中,删除包含本SVP500的识别符SVPC的条目。
步骤5010的结果是,从本SVP500所属的冗余结构700中包含的活动SVP中的、除发生故障的活动SVP以外的全部活动SVP的待机SVP表2200中,删除包含本SVP500的识别符的条目。
以下,再次以SVP500b(SVPA)为例,说明步骤5020以后的处理。
SVP500b(SVPA)的控制部506在步骤5020中参照冗余结构活动SVP表2300b,取得在步骤4030中未应答的活动SVP1的地址、即“AddrS11”。然后,控制部506将所取得的地址“AddrS11”设定在SVP状态表2500b的SVP_Addr1_2302b中。而且,控制部506参照活动SVP-DKC管理表2400b,将步骤4030中未应答的活动SVP1所管理的存储系统400的识别符以及地址设定在管理DKC表2100b中。具体而言,活动SVP1管理过通过识别符“DKC1”而识别的存储系统400a。因此,控制部506将识别符“DKC1”所对应的DKC_ID2402b以及DKC_Addr2403b中设定的“DKC1”以及“AddrD1”,分别设定在管理DKC表2100b的DKC_ID2101b以及DKC_Addr2102b中。而且,控制部506将SVP状态表2500b的状态2504b设定为“活动”,将再构成可否2505b设定为“不可以”。由此,SVP500b(SVPA)接管在步骤4030中未应答的活动SVP1的工作。
在执行失效切换前,管理计算机600使用地址“AddrS11”来访问活动SVP1。此后,当执行失效切换时,在步骤5020中SVP500b(SVPA)接管未应答的活动SVP1的地址“AddrS11”。其结果是,管理计算机600可以使用与执行失效切换前所使用的地址相同的地址“AddrS11”来访问SVP500b(SVPA)。即,能够以透明的方式执行失效切换。
然后,控制部506通过网络20广播(broadcast)冗余再构成可否应答请求(步骤5030)。
然后,控制部506判定是否有针对步骤5030中发送的请求的应答(步骤5040)。当判定为有针对请求的应答时,处理进入步骤5050。另一方面,当判定为没有应答时,处理进入步骤5300。
在步骤5040中判定为没有应答时,计算机系统1内不存在可以将本SVP500(在该例中,SVP500b(SVPA))冗余化的待机SVP。即,在这种情况下,本SVP500成为SPOF(Single Point Of Failure、单一故障点)。因此,控制部506向管理者通知SPOF(步骤5300),进入步骤5090。在步骤5300中,例如在管理者使用的管理计算机600中显示故障状态,而且向管理者发送电子邮件。
在步骤5040中判定为有应答时,控制部506生成冗余再构成计算表2600b,取得DKC台数最小的待机SVP(步骤5050)。
在此,参照图10说明在步骤5050中SVP500b生成的冗余再构成计算表2600b。此外,冗余再构成计算表2600b是SVP500b生成的冗余再构成计算表2600。
图10是本发明的实施方式的冗余再构成计算表2600的说明图。
在针对冗余再构成可否应答请求的应答中包含:作为应答了的SVP500的识别符的SVP_ID;第二接口的地址Addr2;通过应答了的SVP500被冗余化的活动SVP的数量、即活动SVP台数;以及这些活动SVP管理的存储系统400的数量、即DKC台数。关于冗余再构成可否应答程序8000,在后面进行说明(参照图13)。
作为一例,在步骤5040中假定从作为待机SVP的SVP500d(SVPB)、SVP500f(SVPC)以及SVP500k(SVPD)有应答。冗余再构成计算表2600b包含:SVP_ID2601b、Addr2_2602b、活动SVP台数2603b、DKC台数2604b以及设置层数2605b。
如图3(a)所示,SVP500d(SVPB)通过识别符“SVPB”被识别。SVP500d(SVPB)将一个活动SVP(即SVP500c(SVP2))冗余化。SVP500c(SVP2)管理一个存储系统400(即存储系统400b(DKC2))。而且,在此例中假定SVP500d(SVPB)的第二接口的地址Addr2为“AddrSB2”,在第四层设置了SVP500d(SVPB)。在这种情况下,SVP500d(SVPB),作为SVP_ID而应答“SVPB”,作为Addr2而应答“AddrSB2”,作为活动SVP台数而应答“1”,作为DKC台数而应答“1”,作为设置层数而应答“4”。将它们存储在冗余再构成计算表2600b的栏2601b至栏2605b中。
来自SVP500f(SVPC)以及SVP500k(SVPD)的应答中包含的值,也同样地被存储在冗余再构成计算表2600b中。在步骤5050中选择的待机SVP是DKC台数2604b最少的SVP500d(SVPB)。
结果,DKC台数2604b是存储系统400的数量,该存储系统400是待机SVP在DKC数据仓库50000中保存的数据的取得源。例如,根据图3(a),SVP500d(SVPB)将SVP500c(SVP2)从存储系统400b(DKC2)取得的用于管理的数据保存在DKC数据仓库50000d中。因此作为SVP500d(SVPB)所保存的数据的取得源的存储系统400的数量是“1”。另一方面,SVP500f(SVPC)将SVP500e(SVP3)从存储系统400c(DKC3)取得的用于管理的数据、以及SVP500g(SVP4)从存储系统400d(DKC4)取得的用于管理的数据,保存在DKC数据仓库50000f中。因此,作为SVP500f(SVPC)所保存的数据的取得源的存储系统400的数量是“2”。
再次参照图9,说明步骤5060以后的处理。
SVPA(SVP500b)的控制部506参照活动SVP-DKC管理表2400b。其结果,得知作为在步骤5040中未应答的活动SVP的SVP1管理过存储系统400a(DKC1),即SVP1从存储系统400a(DKC1)取得过数据。因此,控制部506,将SVP1从存储系统400a(DKC1)取得的数据的副本,从SVPA(SVP500b)的DKC数据仓库50000b拷贝到SVPB(SVP500d)的DKC数据仓库50000d(步骤5060)。在此,SVPB(SVP500d)是在步骤5050中选择的待机SVP。SVP1从存储系统400a(DKC1)取得的数据的副本,是图7的步骤30030中被存储在SVPA(SVP500b)的DKC数据仓库50000b中的副本。
此外,通过SVP500经由接口504以及网络20收发数据来执行SVP500间的数据拷贝。或者可以通过接口502以及网络10收发数据。
然后,SVPA(SVP500b)的控制部506,在步骤5050中选择的待机SVP、即SVPB(SVP500d)上的冗余结构活动SVP表2300d以及活动SVP-DKC管理表2400d中追加条目(步骤5070)。
具体而言,控制部506参照在步骤5020中设定的管理DKC表2100b以及SVP状态表2500b。其结果,得知本SVP500的识别符是“SVPA”,本SVP500从此管理存储系统400a(DKC1)(即,从SVP1接管该管理)。然后,控制部506在冗余结构活动SVP表2300d中追加作为活动SVP_ID2301d而包含SVPA的条目。而且,控制部506追加分别作为活动SVP_ID2401d以及DKC_ID2402d而包含SVPA以及DKC1的条目。
例如,通过SVPA(SVP500b)向SVPB(SVP500d)发送追加指示,来执行这些条目的追加。接收到该指示的SVPB(SVP500d)的控制部506按照指示追加条目。其结果,在成为SVPA的待机SVP的SVPB的冗余结构活动SVP表2300d以及活动SVP-DKC管理表2400d中,追加与SVPA以及DKC1相关的条目(参照图11)。
即,执行步骤5070的结果是,SVPB(SVP500d)的控制部506可以得知,本SVP500将SVPA(SVP500b)冗余化,换言之,当SVPA(SVP500b)中发生了故障时,本SVP500需要从SVPA(SVP500b)接管存储系统400a(DKC1)的管理。
然后,SVPA(SVP500b)的控制部506,将步骤5050中选择的待机SVP的识别符“SVPB”追加在待机SVP表2200b中(步骤5080)。
通过以上的动作,作为步骤4030中未应答的活动SVP的SVP1的工作,被SVPB(SVP500d)接管,而且再构成了冗余结构700。在图3(b)中表示,如上所述在SVP1中发生故障、SVPA进行失效切换后,再构成以SVPB作为待机SVP的冗余结构700的状态。SVPA(SVP500b)管理DKC1,SVP2管理DKC2,SVPA和SVP2通过SVPB被冗余化。
这样,例如SVP1中发生故障时,SVPA(SVP500b)通过对SVP1进行失效切换,作为新的活动SVP而工作。因此,SVPA(SVP500b)所属的冗余结构700a不再包含待机SVP。在这种情况下再构成冗余结构700,以便包含一个以上的待机SVP。具体而言,解除由SVP1和SVPA(SVP500b)构成的冗余结构700a、以及由SVP2(SVP500c)和SVPB(SVP500d)构成的冗余结构700b,构成包含这四个SVP500的新的冗余结构700e。冗余结构700e包含两个活动SVP(即SVPA(SVP500b)以及SVP2(SVP500c))、和对这些活动SVP进行冗余化的一个待机SVP(即SVPB(SVP500d))。
图11是本发明的实施方式中再构成冗余结构后的待机SVP、即SVP500d(SVPB)所保存的表的说明图。
具体而言,图11表示SVPB(SVP500d)所保存的管理DKC表2100d、待机SVP表2200d、冗余结构活动SVP表2300d、活动SVP-DKC管理表2400d以及SVP状态表2500d。这些表所管理的项目的概要与图4以及图5中说明的相同。以下说明在上述例子中的冗余结构700e的SVPB(SVP500d)中,在这些表中设定的具体值。
SVPB(SVP500d)是待机SVP,因此管理DKC表2100d以及待机SVP表2200d不包含条目。
SVPB(SVP500d)将两个SVP冗余化。因此,冗余结构活动SVP表2300d包含两个条目。
在第一条目的活动SVP_ID2301d、SVP_Addr1_2302d、SVP_Addr2_2303d、监视2304d以及DKC数2305中,分别设定“SVP2”、“AddrS21”、“AddrS22”、“Y”以及“1”。
“SVP2”是通过SVPB(SVP500d)被冗余化的SVP2(SVP500c)的识别符。“AddrS21”是SVP2(SVP500c)的第一接口502的地址。“AddrS22”是SVP2(SVP500c)的第二接口504的地址。监视2304d的值“Y”表示SVPB(SVP500d)监视SVP2(SVP500c)。由于SVP2(SVP500c)仅管理一个存储系统400b(DKC2),因此在DKC数2305d中设定“1”。
在第二条目的活动SVP_ID2301d、SVP_Addr1_2302d、SVP_Addr2_2303d、监视2304d以及DKC数2305d中,分别设定“SVPA”、“AddrS11”、“AddrSA2”、“Y”以及“1”。
“SVPA”是通过SVPB(SVP500d)被冗余化的SVPA(SVP500b)的识别符。“AddrS11”是SVPA(SVP500b)的第一接口502的地址。该“AddrS11”是与发生了故障的SVP1中设定的地址相同的地址(参照图9的步骤5020)。“AddrSA2”是SVPA(SVP500b)的第二接口504的地址。监视2304d的值“Y”表示SVPB(SVP500d)监视SVPA(SVP500b)。由于SVPA(SVP500b)仅管理一个存储系统400a,因此在DKC数2305d中设定“1”。
SVPB(SVP500d)将两个SVP500冗余化,这些SVP500分别管理一个存储系统。因此,活动SVP-DKC表2400d包含两个条目。
在第一条目的活动SVP_ID2401d、DKC_ID2402d以及DKC_Addr2403d中,分别设定“SVP2”、“DKC2”以及“AddrD2”。
“SVP2”是通过SVPB(SVP500d)被冗余化的SVP2(SVP500c)的识别符。“DKC2”是SVP2(SVP500c)管理的存储系统400b(DKC2)的识别符。“AddrD2”是存储系统400b(DKC2)的接口490的地址。
在第二条目的活动SVP_ID2401d、DKC_ID2402d以及DKC_Addr2403d中,分别设定“SVPA”、“DKC1”以及“AddrD1”。
“SVPA”是通过SVPB(SVP500d)被冗余化的SVPA(SVP500b)的识别符。“DKC1”是SVPA(SVP500b)管理的存储系统400a(DKC1)的识别符。“AddrD1”是存储系统400a(DKC1)的接口490的地址。
SVP状态表2500d是SVPB(SVP500d)保存的SVP状态表2500。在SVP_ID2501d、SVP_Addr1_2502d以及SVP_Addr2_2503d中,分别设定作为SVPB(SVP500d)的识别符的“SVPB”、SVPB(SVP500d)的第一接口502的地址“AddrSB1”、以及第二接口504的地址“AddrSB2”。在状态2504d中设定“待机”,表示SVPB(SVP500d)作为待机SVP而工作。在再构成可否2505d中设定“可以”,表示对再构成请求进行应答。在设置层数2506d中设定了“4”。这表示在第四层设置了SVPB(SVP500d)。
另一方面,冗余结构700的再构成的结果是,成为新活动SVP的SVPA(500b)所保存的表如下面这样被更新。
DKC管理表2100b的DKC_ID2101b以及DKC_Addr2102b分别被更新为“DKC1”以及“AddrD1”。它们与发生了故障的SVP1中所设定的相同。
待机SVP表2200b的待机SVP_ID2201b、SVP_Addr2_2202b以及监视2203b分别被更新为“SVPB”、“AddrSB2”以及“Y”。“SVPB”以及“AddrSB2”是新待机SVP(即SVPA(500b)中发生故障时对SVPA(500b)进行失效切换的SVP500)的识别符及其地址。
冗余结构活动SVP表2300b以及活动SVP-DKC管理表2400b,由于被删除条目,因此不再包含条目。
SVP状态表2500b的SVP_Addr1_2502b、状态2504b以及再构成可否2505b分别被更新为“AddrS11”、“活动”以及“不可以”。
再次参照图9说明步骤5090以后的处理。
如图3的SVP(SVP500f)那样,有时一个待机SVP对多个活动SVP进行冗余化。在这种情况下,当待机SVP对一个活动SVP进行失效切换时,不存在对冗余结构700中剩余的活动SVP进行冗余化的待机SVP。即,这些剩余的活动SVP成为SPOF。此时,进行失效切换而成为新的活动SVP的SVP500,为使剩余的活动SVP不成为SPOF而再构成冗余结构700。
此外,在图3(a)的例子中,由于SVPA未对SVP1以外的活动SVP进行冗余化,因此不执行此处理。以下,以SVPC(SVP500f)为例进行说明。具体而言,以下面的例子进行说明,即在图3(a)中,在SVP3(SVP500e)中发生故障,SVPC(SVP500f)进行失效切换,选择SVPB(SVP500d)作为进行了失效切换的SVP的待机SVP。在这种情况下,通过以下的处理,再构成包含将剩余的活动SVP、即SVP4(SVP500g)冗余化的待机SVP的冗余结构700。
此外,关于SVP3(SVP500e)、SVP4(SVP500g)、SVPC(SVP500f)以及SVPD(SVP500k)所保存的表,省略图示。在以下的说明中,通过在表的名称的末尾附加的“e”、“g”、“f”以及“k”的标记,识别通过哪个SVP500保存这些表。
SVPC(SVP500f)的控制部506从冗余结构活动SVP表2300f和活动SVP-DKC管理表2400f中删除步骤4030中未应答的活动SVP、即SVP3(SVP500e)的条目(步骤5090)。
然后,控制部506参照冗余结构活动SVP表2300f,判定在冗余结构活动SVP表2300f中是否有条目(步骤5100)。当判定为在冗余结构活动SVP表2300f中有条目时,处理进入步骤5110。当判定为没有条目时,结束处理(B)。
在步骤5100中判定为有条目时,进行了失效切换的待机SVP也成为步骤4030中未应答的活动SVP以外的活动SVP的待机SVP。即,进行了失效切换的待机SVP所属的冗余结构700,除发生了故障的SVP500以外,还包含通过该待机SVP被冗余化的活动SVP。例如,冗余结构700c除发生了故障的SVP3(SVP500e)以外,还包含通过SVPC(SVP500f)被冗余化的SVP4(SVP500g)。在这种情况下,针对这些活动SVP也再构成冗余结构700。即,在冗余结构活动SVP表2300f中,在删除了SVP3(SVP500e)的条目后还存在SVP4的条目,因此进入步骤5110。然后,针对SVP4(SVP500g)也再构成冗余结构700。在当前时刻,对SVP3(SVP500e)进行了失效切换的SVPC(SVP500f),通过SVPB(SVP500d)被冗余化,但SVP4(SVP500g)处于未被冗余化的状态。
SVPC(SVP500f)的控制部506从冗余结构活动SVP表2300f取得作为活动SVP的识别符的SVP4(步骤5110)。然后,控制部506通过网络20广播冗余再构成可否应答请求(步骤5120)。
控制部506判定是否有针对步骤5120的请求的应答(步骤5130)。在步骤5130中判定为有应答时,处理进入步骤5140。当判定为没有应答时,处理进入步骤5400。
在步骤5130中判定为没有应答时,无法将作为活动SVP的SVP4(SVP500g)冗余化。即SVP4(SVP500g)成为SPOF。在这种情况下,控制部506向管理者通知SPOF(步骤5400),进入步骤5180。在向管理者的通知中,在管理者使用的管理计算机600中显示故障状态、向管理者发送电子邮件。
在步骤5130中判定为有应答时,根据接收到的应答生成冗余再构成计算表2600f,选择DKC台数最小的待机SVP(步骤5140)。
作为一例,假定在步骤5120中SVPA(SVP500b)、SVPB(SVP500d)以及SVPD(SVP500k)对来自SVPC(SVP500f)的请求进行应答,在步骤5140中选择了SVPD(SVP500k)。
控制部506参照活动SVP-DKC管理表2400f。其结果,得知作为步骤5110中取得的活动SVP的SVP4(SVP500g)管理着存储系统400d(DKC4)。因此,控制部506将SVP4(SVP500g)从存储系统400d(DKC4)取得的数据的副本从SVP4(SVP500g)的DKC数据仓库50000g拷贝到步骤5140中选择的待机SVP、即SVPD(SVP500k)的DKC数据仓库50000k中(步骤5150)。
然后,控制部506在步骤5140中选择的待机SVP、即SVPD(SVP500k)上的冗余结构活动SVP表2300k、活动SVP-DKC管理表2400k中追加在步骤5110中取得的活动SVP、即SVP4(SVP500g)的条目(步骤5160)。即,在成为SVP4的待机SVP的SVPD的冗余结构活动SVP表2300k中、和活动SVP-DKC管理表2400k中,追加SVP4和DKC4的条目。通过与步骤5070相同的方法来执行此追加。
然后,控制部506将步骤5110中取得的活动SVP、即SVP4(SVP500g)上的待机SVP表2200g的条目变更为步骤5140中选择的待机SVP、即SVPD(SVP500k)的条目(步骤5170)。即,控制部506将被设定为SVP4的待机SVP的SVPC变更为SVPD。
然后,控制部506参照活动SVP-DKC管理表2400f,从DKC数据仓库50000f中删除从存储系统400d(DKC4)中取得的数据(步骤5180),该存储系统400d(DKC4)由步骤5110中取得的活动SVP即SVP4管理。
然后,控制部506从冗余结构活动SVP表2300f和活动SVP-DKC管理表2400中,删除在步骤5110中取得的活动SVP即SVP4(SVP500g)的条目(步骤5190)。
在步骤5140中,通过取得DKC台数最小的待机SVP来再构成冗余结构700,待机SVP为了冗余化而存储的、从存储系统400取得的数据被均等地分散在待机SVP中。由此使待机SVP的负荷分散。
另外,SVP500所具备的DKC数据仓库50000中可以存储的数据的容量有限。因此,当DKC数据仓库50000中存储的数据量超过预定值时,按照从旧到新的顺序删除数据。作为保存从多个存储系统400取得的数据的SVP500,所述存储系统400的数量越多,为了存储来自一台存储系统400的数据而被分配的DKC数据仓库50000的容量越小。因此,这种SVP500无法长时间保存从存储系统400取得的数据。通过如上那样将从存储系统400取得的数据适当地分散到各SVP500中,可以使容量有限的DKC数据仓库50000中存储的每一台存储系统400的数据量增大(即延长数据的存储期间)。
此外,在步骤5050或步骤5140中存在多个DKC台数最小的待机SVP的情况下,可以选择在地理上设置在接近新的活动SVP的位置的待机SVP。地理的位置可以通过任何坐标来表现。例如,计算机系统1中包含的SVP500,当被设置在一个建筑物的多层中时,可以选择设置层数最接近的待机SVP。这样,通过选择地理上接近的待机SVP,当SVP500自身的设备维护等需要直接处理SVP设备的操作时,操作者可以省去在冗余结构700中包含的多个SVP500之间移动的麻烦。
<待机SVP监视程序6000>
待机SVP不管理存储系统400。但是,当待机SVP中发生故障后,当活动SVP中发生故障时无法进行失效切换。换言之,当待机SVP中发生故障时,通过该待机SVP被冗余化的活动SVP成为SPOF。因此,活动SVP需要监视待机SVP,当待机SVP中发生故障时再构成冗余结构700。
待机SVP监视程序6000是活动SVP用于监视待机SVP的运行状况的程序。通过SVP500的控制部506,将待机SVP监视程序6000从存储装置512读出并执行。通过活动SVP的控制部506,在监视程序3000的步骤3030中执行待机SVP监视程序6000。例如,由图3(a)的SVP500a(SVP1)执行。
图12是表示本发明的实施方式的待机SVP监视程序6000的处理的流程图。
作为一例,对通过SVP500a(SVP1)的控制部506执行的情况进行说明。
最初,控制部506在步骤6010中从待机SVP表2200a取得待机SVP的识别符、即SVPA(SVP500b)。
然后,控制部506对在步骤6010中取得的待机SVP、即SVPA(SVP500b)请求运行状况应答(步骤6020)。
然后,控制部506判定是否有针对步骤6020的请求的应答(步骤6030)。当判定为有针对步骤6020的请求的应答时,在步骤6010中取得的待机SVP、即SVPA(SVP500b)正常地运行。在这种情况下,由于不需要再构成冗余结构700,因此控制部506结束处理。在此,运行状况应答请求以及针对其的应答,例如是通过网络20的心跳信号(Heartbeat)。
在步骤6030中判定为没有应答时,在步骤6010中取得的待机SVP、即SVPA(SVP500b)中发生了故障。在这种情况下,控制部506广播冗余再构成可否应答请求(步骤6040)。
然后,控制部506判定是否有针对步骤6040的冗余再构成可否应答请求的应答(步骤6050)。当判定为有针对步骤6040的冗余再构成可否应答请求的应答时(步骤6050),处理进入步骤6060。另一方面,当判定为没有应答时,处理进入步骤6100。
在步骤6050中判定为有应答时,控制部506根据应答生成冗余再构成计算表2600a,选择DKC台数最小的待机SVP(步骤6060)。在此作为一例,假定SVPB、SVPC以及SVPD对来自SVP1(SVP500a)的请求进行应答,在步骤6060中选择了SVPB。
控制部506在步骤6060中选择的待机SVP、即SVPB(SVP500d)的冗余结构活动SVP表2300d以及活动SVP-DKC管理表2400d中,追加本SVP500即SVP1(SVP500a)以及本SVP500管理的存储系统400a(DKC1)的条目(步骤6070)。可以通过与图9的步骤5070相同的方法来执行此追加。
然后,控制部506参照管理DKC表2100a。其结果,得知本SVP500管理着存储系统400a(DKC1)。控制部506将从本SVP500管理的存储系统400a(DKC1)取得的数据,从DKC数据仓库50000a拷贝到步骤6060中选择的待机SVP、即SVPB(SVP500d)的DKC数据仓库50000d中(步骤6080)。
然后,控制部506将待机SVP表2200a的待机SVP_ID2201a,从步骤6030中未应答的待机SVP即SVPA(SVP500b)变更为步骤6060中选择的待机SVP即SVPB(SVP500d)(步骤6090),结束处理。
在步骤6050中判定为没有应答时,无法将活动SVP冗余化。即作为活动SVP的SVP1(SVP500a)成为SPOF。在这种情况下,控制部506从待机SVP表2200a删除步骤6030中未应答的待机SVP即SVPA(SVP500a)的条目,向管理者通知SPOF(步骤6100)。在向管理者的通知中,在管理者使用的管理计算机600中显示故障状态、以及向管理者发送电子邮件。
在步骤6050中,通过取得DKC台数最小的待机SVP来再构成冗余结构700,待机SVP为了冗余化而存储的、从存储系统400取得的数据被大体均等地分散至待机SVP中。由此使待机SVP的负荷分散。
另外,如图9中说明的那样,可以增大在有限的存储区域中存储的每一台存储系统400的数据量(即延长数据的存储期间)。
此外,如图9中说明的那样,在步骤6060中,当存在多个DKC数最小的待机SVP时,可以选择被设置在与活动SVP地理上接近的位置的待机SVP。地理的位置可以通过任何坐标来表现。例如,当计算机系统1中包含的SVP500被设置在一个建筑物的多层中时,比较SVP状态表2500的设置层数2506和冗余再构成计算表的设置层数2604,可以选择设置层数相同或最接近的待机SVP。这样,通过选择地理上接近的待机SVP,当SVP自身的设备维护等需要直接操作SVP设备的操作时,操作者可以省去在冗余结构700中包含的多个SVP500之间移动的麻烦。
<冗余再构成可否应答程序8000>
通过SVP500的控制部506,将冗余再构成可否应答程序8000从存储装置512读出并执行。
当SVP500从其它SVP500通过网络20接收到冗余再构成可否应答请求时,通过控制部506执行冗余再构成可否应答程序8000。
图13是表示本发明的实施方式的冗余再构成可否应答程序8000的处理的流程图。
控制部506在步骤8010中接受冗余再构成可否应答请求。
然后,控制部506参照SVP状态表2500的再构成可否2505,判定是否可以进行再构成(步骤8020)。
在步骤8020中判定为SVP状态表2500的再构成可否2505是“不可以”时,控制部506结束处理。
在步骤8020中判定为SVP状态表2500的再构成可否2505是“可以”时,控制部506参照SVP状态表2500的SVP_ID2501、SVP_Addr2_2503、设置层数2506以及冗余结构活动SVP表2300,向请求源应答活动SVP数、和DKC数2305的总和(步骤8030),结束处理。所谓活动SVP数,是在冗余结构活动SVP表2300中包含的条目的数量。所谓DKC数2305的总和,是冗余结构活动SVP表2300中包含的条目的DKC数2305的合计值。
例如,以SVP500b的控制部506执行冗余再构成可否应答程序8000的情况为例进行说明。在这种情况下,控制部506在步骤8030中参照SVP状态表2500b,作为SVP_ID2501而应答SVPA、作为SVP_Addr2_2503而应答AddrSA2、作为设置层数2506而应答3。而且,控制部506参照冗余结构活动SVP表2300b,作为活动SVP数而应答1,作为DKC数据的总和而应答1。
活动SVP数以及DKC数的总和,在待机SVP将多个活动SVP冗余化的情况下为多个。例如,若是图3(a)的SVP500f(SVPC),则活动SVP数为2,DKC数的总和为2。
另外,在冗余结构活动SVP表2300中没有条目时,活动SVP数以及DKC数的总和均为0。
<逻辑图2>
图14是在逻辑上表示本发明的实施方式的存储系统400与SVP500的关系的说明图。
图14(a)与图3(a)相同。图14(b)是在图14(a)上新追加了SVPE(SVP500m),再构成冗余结构后的状态。图14(c)是在图14(b)上进一步追加了SVPG(SVP500n)后的状态。SVPG成为备用的待机SVP,冗余结构700没有被再构成。
接下来,对如此在计算机系统1中新追加SVP500时、或者使发生了故障的SVP500恢复(故障恢复)时所执行的SVP故障恢复程序10000进行说明。
<SVP故障恢复程序10000>
通过SVP500的控制部506,将SVP故障恢复程序10000从存储装置512读出并执行。
当在计算机系统1中新追加了SVP500时、或者使发生了故障的SVP500恢复(故障恢复)时,管理者从管理计算机600指定新追加的SVP500、或者恢复了的SVP500来执行SVP故障恢复程序10000。或者,管理者可以直接使用新追加的SVP500或恢复了的SVP500来执行SVP故障恢复程序10000。
图15是表示本发明的实施方式的SVP故障恢复程序10000的处理的流程图。
作为一例,对在图14(a)所示的计算机系统1中追加SVP500m(SVPE)的情况进行说明。
在SVP故障恢复程序10000的执行前,管理者在SVP状态表2500m(省略图示)中设定识别SVP500m的识别符“SVPE”、SVP500m(SVPE)的第一接口的地址“AddrSE1”、第二接口的地址“AddrSE2”、状态“待机”以及再构成可否“可以”。
当执行SVP故障恢复程序10000时,SVP500m(SVPE)的控制部506通过网络20广播冗余再构成可否应答请求(步骤10010)。
控制部506判定是否有针对冗余再构成可否应答请求的应答(步骤10020)。当判定为有针对冗余再构成可否应答请求的应答时,处理进入步骤10030。当判定为没有应答时,控制部506结束处理。
在步骤10020中判定为有应答时,控制部506根据应答生成冗余再构成计算表2600,取得活动SVP台数2603为两台以上、且DKC台数2604最多的SVP_ID2601(步骤10030)。由于活动SVP未对冗余再构成可否应答请求进行应答,因此在步骤10030中取得的是待机SVP。
例如,假定在步骤10020中从作为待机SVP的SVP500b(SVPA)、SVP500d(SVPB)、SVP500f(SVPC)以及SVP500k(SVPD)有应答。如图14(a)所示,SVPA作为活动SVP台数而应答1,作为DKC台数而应答1。SVPB作为活动SVP台数而应答1,作为DKC台数而应答1。SVPC作为活动SVP台数而应答2,作为DKC台数而应答2。SVPD作为活动SVP台数而应答1,作为DKC台数而应答2。控制部506将接收到的应答中包含的上述活动SVP台数以及DKC台数,分别设定为冗余再构成计算表2600的活动SVP台数2603以及DKC台数2604。在步骤10030中所选择的待机SVP,是活动SVP在两台以上并且DKC台数最多的SVPC。
控制部506判定是否有符合步骤10030的条件的待机SVP(步骤10040)。当判定为有符合条件的待机SVP时,处理进入步骤10050。当判定为没有符合条件的待机SVP时,控制部506结束处理。在图14(a)中追加了SVP500m(SVPE)时,如前所述,作为待机SVP,SVPC符合条件。在后面,对没有符合步骤10030的条件的待机SVP的情况进行说明。
当步骤10040中有符合步骤10030的条件的待机SVP时,考虑到负荷集中在该待机SVP中。即,在该待机SVP的数据仓库50000中存储了从很多存储系统400取得的数据,因此与其它待机SVP相比,缩短了数据的存储期间。在这种情况下,使用所追加的SVP500m(SVPE)来再构成冗余结构700,以使符合条件的SVP的负荷分散。
控制部506取得作为符合条件的待机SVP(即步骤10030中取得的待机SVP)的SVPC(SVP500f)的冗余结构活动SVP表2300f(步骤10050)。
然后,控制部506将步骤10050中取得的SVPC的冗余结构活动SVP表2300f中包含的条目分割为两组,以使各组中的DKC数2305的总和均等(步骤10060)。在无法完全均等地分割时,可以最接近于均等地进行分割。例如,可以通过按照从DKC数2305较少的条目开始的顺序交替地分为两个组,来执行这种分割。
在SVPC的例子中,冗余结构活动SVP表2300f包含活动SVP_ID2301是SVP3、和SVP4的两个条目。SVP3管理着DKC3,SVP4管理着DKC4。在这种情况下,分为由SVP3的条目构成的组、和由SVP4的条目构成的组。然后,控制部506取得各组中包含的活动SVP。在此例中,取得属于一组的SVP3和属于另一组的SVP4。
控制部506,在步骤10060中分割为两个组的活动SVP中,选择属于DKC数2305的总和较小的一组的活动SVP。在上述的例子中,DKC数2305的总和都是1,因此可以选择任何一个。在此,对选择了SVP4的情况进行说明。
控制部506,将步骤10030中取得的待机SVP(即SVPC(SVP500f))所保存的冗余结构活动SVP表2300f以及活动SVP-DKC管理表2400f的条目中的、与SVP4(SVP400g)相关的条目(即作为活动SVP_ID而设定了“SVP4”的条目),追加(拷贝)到执行SVP故障恢复程序10000的SVPE(SVP500m)的待机SVP的冗余结构活动SVP表2300m以及活动SVP-DKC管理表2400m中(步骤10070)。通过执行SVP故障恢复程序10000的SVPE(SVP500m)将发送必要的条目的数据的请求发送至步骤10030中取得的待机SVP,可以执行该拷贝。
即,为了将SVP4(SVP400g)的待机SVP从SVPC(SVP500f)变更为SVPE(SVP500m),控制部506将与SVP4(SVP400g)相关的条目,从SVPC(SVP500f)的冗余结构活动SVP表2300f以及SVP-DKC管理表2400f,拷贝到SVPE(SVP500m)的冗余结构活动SVP表2300m以及活动SVP-DKC管理表2400m。
然后,控制部506将从在步骤10070中追加了条目的SVP4(SVP400g)管理的存储系统400d(DKC4)取得的数据,从步骤10030中取得的SVPC(SVP500f)的DKC数据仓库50000f,拷贝到执行SVP故障恢复程序的SVPE(SVP500m)的DKC数据仓库50000m(步骤10080)。该拷贝也可以和步骤10070相同地通过发送发送请求来执行。
然后,控制部506在步骤10070中,将SVP4(SVP400g)的待机SVP表2200g的待机SVP_ID2201g从SVPC(SVP500f)变更为执行SVP自动程序的SVPE(SVP500m)(步骤10090)。
然后,控制部506从步骤10030中取得的待机SVP、即SVPC(SVP500f)的冗余结构活动SVP表2300f以及活动SVP-DKC管理表2400f中,删除与作为活动SVP的SVP4(SVP500g)有关的条目(步骤10100)。其结果,此前通过SVPC(SVP500f)被冗余化了的SVP4(SVP500g)通过SVPE(SVP500m)被冗余化。
从而,控制部506结束处理。
通过SVPE(SVP500m)的追加以及SVP故障恢复程序10000的执行,基于图14(a)所示的活动SVP3、活动SVP4以及待机SVPC的冗余结构700c,被再构成为基于图14(b)所示的活动SVP3和待机SVPC的冗余结构700f、以及基于SVP4和SVPE的冗余结构700g。
上述图14以及图15以新追加了SVPE(SVP500m)的情况为例进行了说明,但在SVPE(SVP500m)从故障中恢复的情况下也执行同样的处理。
通过SVP故障恢复程序10000的执行,管理者无需手动变更存储系统400和SVP500的结构,便可以容易地自动进行新SVP500的追加、以及从故障中恢复的SVP500的故障恢复。
另外,在步骤10030中,通过选择DKC台数最多的待机SVP来再构成冗余结构700,待机SVP为了冗余化而存储的存储系统400的数据被均等地分散到待机SVP中。由此,待机SVP的负荷被分散,另外可以增大在有限的存储区域中存储的每一台存储系统400的数据量(即延长数据的存储期间)。
而且,在步骤10030中,当存在多个DKC台数最多的待机SVP时,可以选择新追加的SVP500和在地理上设置在接近的位置的待机SVP。地理位置可以通过任意坐标来表现。例如,当计算机系统1中包含的SVP500被设置在一个建筑物的多层中时,可以将新追加的SVP500的SVP状态表2500的设置层数2506、与冗余再构成计算表2600的设置层数2605进行比较。在这种情况下,可以选择具有与设置层数2506相同或最接近的设置层数2605的待机SVP。这样,通过选择地理上接近的待机SVP,当SVP自身的设备维护等需要直接操作SVP设备的操作时,操作员可以省去在成为冗余结构700的多个SVP500间移动的麻烦。
对于在步骤10040中判定为没有符合条件的待机SVP的情况进行说明。以在图14(b)所示的计算机系统1中还追加了SVPG(SVP500n)的情况为例进行说明。
当追加SVPG(SVP500n)时,与SVPE(SVP500m)的情况相同,在SVP故障恢复程序10000的执行前,管理者在SVP状态表2500n(省略图示)中设定识别SVP500n的识别符“SVPG”、第一接口的地址“AddrSG1”、第二接口的地址“AddrSG2”、状态“待机”以及再构成可否“可以”。
在步骤10010中,SVPG(SVP500n)的控制部506广播冗余再构成可否应答请求。
在步骤10020中,假定从作为待机SVP的SVP500b(SVPA)、SVP500d(SVPB)、SVP500f(SVPC)、SVP500k(SVPD)以及SVP500m(SVPE)有应答。如图14(b)所示,SVPA作为活动SVP台数而应答1,作为DKC台数而应答1。SVPB作为活动SVP台数而应答1,作为DKC台数而应答1。SVPC作为活动SVP台数而应答2,作为DKC台数而应答1。SVPD作为活动SVP台数而应答1,作为DKC台数而应答2。SVPE作为活动SVP台数而应答1,作为DKC台数而应答1。
在步骤10030中,选择符合待机SVP的选择条件的、即活动SVP为两台以上并且DKC台数最多的待机SVP。但是,在上述例子中没有活动SVP为两台以上的待机SVP。因此,在步骤10040中判定为没有符合条件的待机SVP,结束处理。
其结果,由于SVPG(SVP500n)的冗余结构活动SVP表2300n以及活动SVP-DKC管理表2400n中没有条目,因此没有通过SVPG(SVP500n)被冗余化的活动SVP。换言之,SVPG(SVP500n)成为不构成冗余结构700的待机SVP。这种SVP是备用的待机SVP(以下,将这种待机SVP称为备用待机SVP)。图14(c)是表示包含作为这种备用待机SVP的SVPG(SVP500n)的计算机系统1的图。
作为备用待机SVP的SVPG(SVP500n),在冗余结构活动SVP表2300n中不包含条目。因此,SVPG(SVP500n)的控制部506,当接收到冗余再构成可否应答请求时,通过执行冗余再构成可否应答程序8000,应答0作为活动SVP数,应答0作为DKC数。
根据活动SVP监视程序4000以及待机SVP监视程序6000,针对冗余再构成可否应答请求选择DKC台数最小的待机SVP。因此,当活动SVP或待机SVP中发生故障而再构成冗余结构时,优先选择备用待机SVP,再构成包含备用待机SVP的冗余结构700。
以上,根据本发明的一个实施方式,当维护·管理装置检测出其他维护·管理装置的异常时,通过再构成冗余结构,避免由于发生了异常的维护·管理装置而产生的SPOF。
具体而言,当主维护·管理装置中发生异常时,副维护·管理装置替换主维护·管理装置(失效切换),同时使用计算机系统中存在的其他副维护·管理装置来再构成冗余结构。
另一方面,当副维护·管理装置中发生异常时,主维护·管理装置使用计算机系统中存在的其他副维护·管理装置来再构成冗余结构。
如上所述,当主或副维护·管理装置的一方中发生异常时,为了避免SPOF的发生,再构成包含其他副维护·管理装置的冗余结构。
因此,根据本发明的一个实施方式,即使当管理存储系统的装置中发生故障,待机的管理装置进行了失效切换后,管理者无需进行手动设定便可以避免SPOF(Single Point Of Failure)。因此可以进一步提高存储系统管理的可靠性。

Claims (19)

1.一种控制计算机系统的方法,所述计算机系统具备多个存储系统、以及管理所述多个存储系统的多个管理装置,其特征在于,
所述各存储系统具有:存储数据的存储装置、以及控制向所述存储装置的数据存储的控制装置,
所述各管理装置具有:接收从所述存储系统取得的数据的第一接口、与所述第一接口连接的处理器、以及与所述处理器连接的存储器,
所述第一接口与可通信地连接所述多个管理装置的第一网络相连,
所述多个管理装置包含第一管理装置、第二管理装置以及第三管理装置,
所述存储系统包含第一存储系统,
所述第一管理装置以及所述第二管理装置保存所述第一存储系统的识别符、以及从所述第一存储系统取得的管理数据,
所述方法包含以下步骤:
当所述第一管理装置中发生了故障时,从所述多个管理装置中选择所述第三管理装置;
将所述第二管理装置中保存的所述第一存储系统的识别符从所述第二管理装置发送至所述选择的第三管理装置;以及
所述选择的第三管理装置保存从所述第二管理装置发送的所述第一存储系统的识别符。
2.根据权利要求1所述的方法,其特征在于,
包含所述第一管理装置、所述第二管理装置以及所述第三管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述方法还具备如下步骤:
将所述第二管理装置中保存的从所述第一存储系统取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;以及
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据,通过选择所述存储系统的数量最少的所述待机管理装置来执行从所述多个管理装置中选择所述第三管理装置的步骤,所述存储系统是保存的所述管理数据的取得源。
3.根据权利要求1所述的方法,其特征在于,
所述多个存储系统还包含第二存储系统,
所述多个管理装置还包含第四管理装置和第五管理装置,
所述第一管理装置将从所述第一存储系统取得的所述管理数据发送至所述第二管理装置,
所述第四管理装置将从所述第二存储系统取得的所述管理数据发送至所述第二管理装置,
所述第二管理装置从所述第一管理装置以及所述第四管理装置接收所述管理数据,保存所述接收到的管理数据,并保存所述第一存储系统的识别符和所述第二存储系统的识别符,
包含所述第五管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述方法还包含如下步骤:
将所述第二管理装置中保存的从所述第一存储系统中取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据;
在所述第一管理装置中发生了故障时,从所述多个管理装置中选择所述第五管理装置;
将所述第二管理装置中保存的所述第二存储系统的识别符、以及从所述第四管理装置接收到的管理数据,从所述第二管理装置发送至所述第五管理装置;以及
所述第五管理装置保存从所述第二管理装置发送的所述第二存储系统的识别符和所述管理数据,
通过选择所述存储系统的数量最少的所述待机管理装置来执行从所述多个管理装置中选择所述第五管理装置的步骤,所述存储系统是保存的所述管理数据的取得源。
4.根据权利要求1所述的方法,其特征在于,
包含所述第一管理装置、所述第二管理装置以及所述第三管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述方法还具备如下步骤:
将所述第二管理装置中保存的从所述第一存储系统取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;以及
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据,
通过选择设置在最接近所述第二管理装置的位置的所述待机管理装置,来执行从所述多个管理装置中选择所述第三管理装置的步骤。
5.根据权利要求1所述的方法,其特征在于,
包含所述第一管理装置、所述第二管理装置以及所述第三管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述各管理装置保存表示是否对预定请求进行应答的信息,
所述方法还包含以下步骤:
将所述第二管理装置中保存的从所述第一存储系统取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;以及
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据,
从所述多个管理装置中选择所述第三管理装置的步骤包含以下步骤:
将所述预定请求从所述第二管理装置发送至所述多个管理装置;
保存表示对所述预定请求进行应答的所述信息的所述管理装置发送应答;以及
从发送了针对所述预定请求的应答的所述多个管理装置中选择所述第三管理装置,
所述应答包含:发送了所述应答的所述管理装置的所述第一接口的地址、以及所述存储系统的数量,所述存储系统是发送了所述应答的所述管理装置保存的所述管理数据的取得源,
所述活动管理装置保存的所述信息表示对所述预定请求不进行应答。
6.根据权利要求1所述的方法,其特征在于,
所述多个管理装置还包含第六管理装置,
包含所述第一管理装置、所述第二管理装置、所述第三管理装置以及所述第六管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述方法还包含以下步骤:
将所述第二管理装置中保存的从所述第一存储系统取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据;
在从多个所述活动管理装置取得所述管理数据的所述待机管理装置中,选择所述存储系统的数量最多的所述待机管理装置,所述存储系统是保存的所述管理数据的取得源;
选择向所述选择的待机管理装置发送所述管理数据的所述多个活动管理装置中的至少一个;
将所述选择的至少一个活动管理装置取得所述管理数据的所述存储系统的识别符,从所述选择的待机管理装置发送至所述第六管理装置;
将所述选择的待机管理装置保存的所述管理数据中、从所述选择的至少一个活动管理装置发送的所述管理数据,从所述选择的待机管理装置发送至所述第六管理装置;以及
所述第六管理装置保存从所述选择的待机管理装置发送的所述存储系统的识别符以及所述管理数据。
7.根据权利要求6所述的方法,其特征在于,
当所述计算机系统不具备从多个所述活动管理装置取得所述管理数据的所述待机管理装置时,不执行以下步骤:
选择所述存储系统的数量最多的所述待机管理装置,所述存储系统是所述管理数据的取得源;
选择所述多个活动管理装置中的至少一个;
将从所述选择的至少一个活动管理装置发送的所述管理数据,从所述选择的待机管理装置发送至所述第六管理装置;以及
所述第六管理装置保存所发送的所述管理数据。
8.根据权利要求1所述的方法,其特征在于,
所述多个管理装置还具备第六管理装置,
包含所述第一管理装置、所述第二管理装置、所述第三管理装置以及所述第六管理装置的所述多个管理装置,分别是将从所述存储系统取得的所述管理数据发送至其他所述管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个,
所述方法还包含以下步骤:
将所述第二管理装置中保存的从所述第一存储系统取得的所述管理数据,从所述第二管理装置发送至所述选择的第三管理装置;
所述选择的第三管理装置保存从所述第二管理装置发送的所述管理数据;
在从多个所述活动管理装置中取得所述管理数据的所述待机管理装置中,选择设置在最接近所述第六管理装置的位置的所述待机管理装置;
选择向所述选择的待机管理装置发送了所述管理数据的所述多个活动管理装置中的至少一个;
将所述选择的至少一个活动管理装置取得所述管理数据的所述存储系统的识别符,从所述选择的待机管理装置发送至所述第六管理装置;
将所述选择的待机管理装置保存的所述管理数据中的、从所述选择的至少一个活动管理装置发送的所述管理数据,从所述选择的待机管理装置发送至所述第六管理装置;以及
所述第六管理装置保存从所述选择的待机管理装置发送的所述存储系统的识别符以及所述管理数据。
9.根据权利要求1所述的方法,其特征在于,
所述存储系统的所述控制装置具备:与计算机连接的第三接口、与所述第三接口连接的第二处理器、以及与所述第二处理器连接并暂时存储数据的高速缓冲存储器,
所述管理数据包含以下数据中的至少一种:表示所述第二处理器中是否发生了故障的数据、表示所述高速缓冲存储器的使用率的数据、表示所述第三接口中的数据输入输出次数的数据、以及表示针对所述存储装置的数据输入输出次数的数据。
10.一种管理装置,对计算机系统中包含的多个存储系统中的至少一个进行管理,其特征在于,
所述存储系统包含第一存储系统;
所述计算机系统除所述管理装置外,还具备对所述多个存储系统中的至少一个进行管理的多个其他管理装置;
所述多个其他管理装置包含第一管理装置和第二管理装置;
所述管理装置,
具备接收从所述存储系统取得的数据的第一接口、与所述第一接口连接的处理器、以及与所述处理器连接的存储器,
保存从所述第一存储系统取得的管理数据,
通过与所述第一接口连接的第一网络,与所述多个其他管理装置可通信地连接;
所述第一管理装置保存所述第一存储系统的识别符、以及从所述第一存储系统取得的管理数据;
所述处理器,
当所述第一管理装置中发生了故障时,从所述多个其他管理装置中选择所述第二管理装置,
将所述管理装置中保存的所述第一存储系统的识别符,通过所述第一网络发送至所述选择的第二管理装置。
11.根据权利要求10所述的管理装置,其特征在于,
所述管理装置、以及包含所述第一管理装置和所述第二管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述处理器,
选择所述存储系统的数量最少的所述待机管理装置来作为第二管理装置,所述存储系统是保存的所述管理数据的取得源,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置。
12.根据权利要求10所述的管理装置,其特征在于,
所述多个存储系统还包含第二存储系统;
所述多个其他管理装置还包含第三管理装置和第四管理装置;
所述管理装置,
从所述第一管理装置接收由所述第一管理装置从所述第一存储系统取得的所述管理数据,
从所述第三管理装置接收由所述第三管理装置从所述第二存储系统取得的所述管理数据,
保存所述接收到的管理数据、所述第一存储系统的识别符、以及所述第二存储系统的识别符;
包含所述第四管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述处理器,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置,
当所述第一管理装置中发生了故障时,选择所述多个其他管理装置中、所述存储系统的数量最少的所述待机管理装置来作为所述第四管理装置,所述存储系统是保存的所述管理数据的取得源,
将所述管理装置中保存的所述第二存储系统的识别符、以及从所述第三管理装置接收到的管理数据,通过所述第一网络发送至所述第四管理装置。
13.根据权利要求10所述的管理装置,其特征在于,
所述管理装置、以及包含所述第一管理装置和所述第二管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述处理器,
选择设置在最接近所述管理装置的位置的所述待机管理装置作为第二管理装置,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置。
14.根据权利要求10所述的管理装置,其特征在于,
所述管理装置、以及包含所述第一管理装置和所述第二管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述管理装置保存表示是否对预定请求进行应答的信息;
所述处理器,
将所述预定请求通过所述第一网络发送至所述多个其他管理装置,
从发送了针对所述预定请求的应答的所述多个其他管理装置中选择所述第二管理装置,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置。
15.根据权利要求14所述的管理装置,其特征在于,
通过所述第一接口接收到所述预定请求的所述处理器,当所述信息表示对所述预定请求进行应答时,发送针对所述预定请求的应答;
所述应答包含:发送了所述应答的所述管理装置的所述第一接口的地址、以及所述存储系统的数量,所述存储系统是发送了所述应答的所述管理装置保存的所述管理数据的取得源;
当所述管理装置是所述活动管理装置时,所述信息表示对所述预定请求不进行应答。
16.根据权利要求10所述的管理装置,其特征在于,
所述管理装置、以及包含所述第一管理装置和所述第二管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述处理器,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置,
在从多个所述活动管理装置取得所述管理数据的所述待机管理装置中,选择所述存储系统的数量最多的所述待机管理装置,所述存储系统是保存的所述管理数据的取得源,
选择向所述选择的待机管理装置发送了所述管理数据的所述多个活动管理装置中的至少一个,
请求所述选择的待机管理装置,将所述选择的至少一个活动管理装置取得所述管理数据的所述存储系统的识别符发送至所述管理装置,
请求所述选择的待机管理装置,将所述选择的待机管理装置保存的所述管理数据中的、从所述选择的至少一个活动管理装置发送的所述管理数据发送至所述管理装置,
保存从所述选择的待机管理装置发送的所述管理数据。
17.根据权利要求16所述的管理装置,其特征在于,
当所述计算机系统不具备从多个所述活动管理装置取得所述管理数据的所述待机管理装置时,所述处理器不执行以下步骤:
选择所述存储系统的数量最多的所述待机管理装置,所述存储系统是所述管理数据的取得源;
选择所述多个活动管理装置中的至少一个;
请求所述选择的待机管理装置,将从所述选择的至少一个活动管理装置发送的所述管理数据发送至所述管理装置;以及
保存所发送的所述管理数据。
18.根据权利要求10所述的管理装置,其特征在于,
所述管理装置、以及包含所述第一管理装置和所述第二管理装置的所述多个其他管理装置,分别是将从所述存储系统取得的所述管理数据发送至所述管理装置或所述其他管理装置的活动管理装置、或者接收从所述活动管理装置发送的所述管理数据的待机管理装置中的某一个;
所述处理器,
将所述管理装置中保存的从所述第一存储系统中取得的所述管理数据,通过所述第一网络发送至所述选择的第二管理装置,
在从多个所述活动管理装置取得所述管理数据的所述待机管理装置中,选择被设置在最接近所述管理装置的位置的所述待机管理装置,
选择向所述选择的待机管理装置发送了所述管理数据的所述多个活动管理装置中的至少一个,
请求所述选择的待机管理装置,将所述选择的至少一个活动管理装置取得所述管理数据的所述存储系统的识别符发送至所述管理装置,
请求所述选择的待机管理装置,将所述选择的待机管理装置保存的所述管理数据中的、从所述选择的至少一个活动管理装置发送的所述管理数据发送至所述管理装置,
保存从所述选择的待机管理装置发送的所述管理数据。
19.根据权利要求10所述的管理装置,其特征在于,
所述存储系统的所述控制装置具备:与计算机连接的第三接口、与所述第三接口连接的第二处理器、以及与所述第二处理器连接并暂时存储数据的高速缓冲存储器;
所述管理数据包含以下数据中的至少一种:表示在所述第二处理器中是否发生了故障的数据、表示所述高速缓冲存储器的使用率的数据、表示所述第三接口中的数据输入输出次数的数据、以及表示针对所述存储装置的数据输入输出次数的数据。
CN2007101946237A 2007-03-29 2007-11-27 存储维护·管理装置的冗余化方法及使用该方法的装置 Expired - Fee Related CN101277217B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2007087911A JP4939271B2 (ja) 2007-03-29 2007-03-29 ストレージ保守・管理装置の冗長化方法、及びその方法を使用する装置
JP2007-087911 2007-03-29

Publications (2)

Publication Number Publication Date
CN101277217A true CN101277217A (zh) 2008-10-01
CN101277217B CN101277217B (zh) 2011-07-13

Family

ID=39643840

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101946237A Expired - Fee Related CN101277217B (zh) 2007-03-29 2007-11-27 存储维护·管理装置的冗余化方法及使用该方法的装置

Country Status (4)

Country Link
US (2) US7836333B2 (zh)
EP (1) EP1975802B1 (zh)
JP (1) JP4939271B2 (zh)
CN (1) CN101277217B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741698B (zh) * 2008-11-13 2012-05-30 英业达股份有限公司 一种共享储存设备的计算器系统及其共享方法
CN102752165A (zh) * 2011-04-19 2012-10-24 国际商业机器公司 用于控制多个产业控制系统之间的通信的系统
CN104335182A (zh) * 2012-06-04 2015-02-04 阿尔卡特朗讯公司 基于云的应用的单点故障消除的方法和装置

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4939271B2 (ja) * 2007-03-29 2012-05-23 株式会社日立製作所 ストレージ保守・管理装置の冗長化方法、及びその方法を使用する装置
CN102484603B (zh) 2009-08-28 2015-09-09 惠普发展公司,有限责任合伙企业 创建冗余逻辑连接的方法和设备和存储自动化系统设备
JP5549733B2 (ja) * 2010-08-18 2014-07-16 富士通株式会社 計算機管理装置、計算機管理システム及び計算機システム
US9280409B2 (en) * 2011-10-28 2016-03-08 Hewlett Packard Enterprise Development Lp Method and system for single point of failure analysis and remediation
CN104597814B (zh) * 2014-12-24 2017-10-24 重庆川仪自动化股份有限公司 一种高稳定性的控制系统冗余的系统和方法
CN112436955B (zh) * 2020-10-16 2022-05-24 苏州浪潮智能科技有限公司 一种复杂网络的数据分布式采集方法和装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61239353A (ja) * 1985-04-03 1986-10-24 Fujitsu Ltd サ−ビスプロセツサ構成方式
US5408649A (en) * 1993-04-30 1995-04-18 Quotron Systems, Inc. Distributed data access system including a plurality of database access processors with one-for-N redundancy
JPH08185330A (ja) * 1994-12-28 1996-07-16 Nippon Telegr & Teleph Corp <Ntt> 冗長コンピュータシステム切り替え方法
US5790775A (en) * 1995-10-23 1998-08-04 Digital Equipment Corporation Host transparent storage controller failover/failback of SCSI targets and associated units
US5875242A (en) * 1996-07-26 1999-02-23 Glaser; Lawrence F. Telecommunications installation and management system and method
US5996086A (en) * 1997-10-14 1999-11-30 Lsi Logic Corporation Context-based failover architecture for redundant servers
DE69927223T2 (de) * 1998-09-08 2006-07-13 Fujitsu Services Ltd. Ausfallsicherheit eines Mehrrechnersystems
US6578158B1 (en) * 1999-10-28 2003-06-10 International Business Machines Corporation Method and apparatus for providing a raid controller having transparent failover and failback
US6691244B1 (en) 2000-03-14 2004-02-10 Sun Microsystems, Inc. System and method for comprehensive availability management in a high-availability computer system
US6625753B1 (en) * 2000-05-09 2003-09-23 International Business Machines Corporation Recovery facility for an SNA communication network
EP1370945B1 (en) 2001-02-13 2010-09-08 Candera, Inc. Failover processing in a storage system
JP3771162B2 (ja) 2001-10-03 2006-04-26 株式会社日立製作所 保守管理方法、保守管理システム、情報処理システムおよびコンピュータプログラム
US7003688B1 (en) * 2001-11-15 2006-02-21 Xiotech Corporation System and method for a reserved memory area shared by all redundant storage controllers
JP2004341982A (ja) * 2003-05-19 2004-12-02 Hitachi Ltd 記憶制御装置の保守管理方式
US7428214B2 (en) * 2004-03-04 2008-09-23 Cisco Technology, Inc. Methods and devices for high network availability
JP4939271B2 (ja) * 2007-03-29 2012-05-23 株式会社日立製作所 ストレージ保守・管理装置の冗長化方法、及びその方法を使用する装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101741698B (zh) * 2008-11-13 2012-05-30 英业达股份有限公司 一种共享储存设备的计算器系统及其共享方法
CN102752165A (zh) * 2011-04-19 2012-10-24 国际商业机器公司 用于控制多个产业控制系统之间的通信的系统
CN102752165B (zh) * 2011-04-19 2015-06-03 国际商业机器公司 用于控制多个产业控制系统之间的通信的系统
CN104335182A (zh) * 2012-06-04 2015-02-04 阿尔卡特朗讯公司 基于云的应用的单点故障消除的方法和装置

Also Published As

Publication number Publication date
US20110047410A1 (en) 2011-02-24
EP1975802A2 (en) 2008-10-01
CN101277217B (zh) 2011-07-13
EP1975802A3 (en) 2010-05-26
EP1975802B1 (en) 2013-01-02
US8078904B2 (en) 2011-12-13
US20080244580A1 (en) 2008-10-02
US7836333B2 (en) 2010-11-16
JP4939271B2 (ja) 2012-05-23
JP2008250421A (ja) 2008-10-16

Similar Documents

Publication Publication Date Title
CN101277217B (zh) 存储维护·管理装置的冗余化方法及使用该方法的装置
US8738869B2 (en) Storage system including a plurality of modules having different control information
US7620710B2 (en) System and method for performing multi-path storage operations
CN101504592B (zh) 存储子系统及其控制方法
US8688773B2 (en) System and method for dynamically enabling an application for business continuity
US20060117211A1 (en) Fail-over storage system
JP4920248B2 (ja) サーバの障害回復方法及びデータベースシステム
KR20110086114A (ko) 분산형 데이터 스토리지
CN103795553A (zh) 基于监控的主、备服务器切换
CN101056254B (zh) 一种网络存储设备的扩展方法、系统及其装置
CN102708158A (zh) 一种PostgreSQL云存储归档调度系统
CN103136075A (zh) 磁盘系统、数据保存装置以及磁盘设备
CN104268038A (zh) 磁盘阵列的高可用系统
CN103414588A (zh) 一种vtl备份方法及vtl节点
JP2001034304A (ja) 監視制御支援装置
CN108897645B (zh) 一种基于备用心跳磁盘的数据库集群容灾方法和系统
KR100970212B1 (ko) 이기종간 db 쿼리의 동적 전환을 이용하여 장애에대처하는 인증 서비스 이중화 방법 및 시스템
CN108628549A (zh) 一种用于铁路调度中心的数据库服务系统
CN111414411A (zh) 高可用度数据库系统
CN115629906B (zh) 一种恢复云分布式存储数据故障的方法及系统
JPH0668002A (ja) ネットワーク管理システム
CN116360687A (zh) 一种集群分布式存储的方法、装置、设备及介质
CN117667528A (zh) 一种故障迁移恢复的分布式存储系统高可用方法及系统
CN116760460A (zh) 故障链路切换方法、装置和系统
CN109040215A (zh) 一种bs架构下网管软件高可用性系统

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

Granted publication date: 20110713

Termination date: 20171127

CF01 Termination of patent right due to non-payment of annual fee