CN100418047C - 磁盘阵列装置以及其控制方法 - Google Patents
磁盘阵列装置以及其控制方法 Download PDFInfo
- Publication number
- CN100418047C CN100418047C CNB2005101322342A CN200510132234A CN100418047C CN 100418047 C CN100418047 C CN 100418047C CN B2005101322342 A CNB2005101322342 A CN B2005101322342A CN 200510132234 A CN200510132234 A CN 200510132234A CN 100418047 C CN100418047 C CN 100418047C
- Authority
- CN
- China
- Prior art keywords
- controller
- disc
- fiber channel
- host apparatus
- optical
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2089—Redundant storage control functionality
- G06F11/2092—Techniques of failing over between control units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
一种磁盘阵列装置,其具备对来自上位主机装置的数据输入输出请求进行应答,并进行对多个磁盘驱动器的数据输入输出处理的双控制器,构成所述双控制器的各个控制器,具备:光纤通道协议控制器,其通过前端接口连接用光纤通道与所述上位主机装置进行接口连接;FC-AL,其与所述多个磁盘驱动器的其中几个环路连接;FC-SATA转换接口,其连接所述多个所述磁盘驱动器的其他几个磁盘驱动器;和开关,通过后端接口连接用光纤通道与所述光纤通道协议控制器连接,把所述FC-AL以及所述FC-SATA转换接口的任何一个与所述后端接口连接用光纤通道选择性地连接。
Description
技术领域
本发明涉及一种磁盘阵列装置以及其控制方法。
背景技术
近年来,随着IT技术的发展,越来越要求磁盘阵列的高性能化、大容量化以及低价格化。磁盘阵列装置具有阵列状设置的多个磁盘驱动器,并基于RAID(Redundant Array of Independent Inexpensive Disks)构筑。主机装置对磁盘阵列装置发布写入访问命令或读取访问命令,由此可以对磁盘驱动器进行数据的读写。在这样的磁盘阵列装置中,为了提高抗故障性以及实现高性能,经常冗余地构成采用双控制器(二重化控制器)的结构(例如,特开2003-256150号公报)。在磁盘阵列装置中,为了实现数据传送的高速化,有时对和主机装置的接口(以下称为前端接口)以及和磁盘驱动器的接口(以下称为后端接口)的各自采用光纤通道接口,在双控制器结构的磁盘阵列装置中,每个控制器分别具备一个前端接口连接用光纤通道协议控制器和一个后端接口连接用光纤通道协议控制器。
发明内容
但是,在上述的结构中,由于每个控制器具备两个高价的光纤通道协议控制器,所以产品的成本升高。为了更加普及磁盘阵列装置,要求降低产品的制造成本。因此,也考虑以下的结构:将每个控制器的光纤通道协议控制器的数量减少到1个,由1个光纤通道协议控制器兼用前端接口连接以及后端接口连接。但是,当后端接口连接的光纤通道仅为1个通路时,在要求高可靠性的磁盘阵列装置中,在抗故障性方面存在问题。
另一方面,在采用双控制器结构的磁盘阵列装置中,当在其中一个控制器中发生应闭塞控制器的故障时,该控制器执行用于闭塞自身的闭塞处理,上位主机装置的I/O故障切换到另外的控制器。在现有的闭塞处理中,要执行以下的处理:使各种寄存器信息等信息(故障信息)退避到高速缓冲存储器的处理、对安装在已发生了故障的光纤通道协议控制器的主接口上的GBIC模块(Gigabit Interface Converter Module)的光输出功能进行抑制的处理、以及对该光纤通道协议控制器进行初始化的处理。通过该闭塞处理,就不从磁盘阵列装置向主机装置返送应答信号,所以主机装置,判断在磁盘阵列装置中发生了某种故障,并进行通路切换。此外,存储器管理者可以根据已退避到高速缓冲存储器中的故障信息来分析故障的原因。
在闭塞处理中,在抑制GBIC模块的光输出功能的同时,对光纤通道协议控制器进行初始化,其理由如下:光纤通道协议控制器,通过在与主机装置之间进行光信号的接收发送来进行依据光纤通道协议的数据通信。在进行数据通信的期间,不断地发生事件,由光纤通道协议控制器对CPU输入中断处理请求。通常,该中断处理请求的优先顺序被设定得比进行控制器闭塞的任务处理高。因此,即使在控制器中发生了故障,在光纤通道协议控制器在与主机装置之间进行数据通信的期间,不断地从光纤通道协议控制器对CPU输入中断处理请求,所以CPU无论到何时都无法进行用于进行控制器闭塞的任务处理。因此,通过抑制用于磁盘阵列装置通过主机装置和SAN(StorageArea Network)进行基于光纤通道协议的数据通信的GBIC模块的光输出功能,同时对光纤通道协议控制器进行重置,使在主机装置和光纤通道协议控制器之间不进行数据通信。于是,抑制伴随主机装置和光纤通道协议控制器之间的数据通信的事件的发生,不从光纤通道协议控制器向CPU产生中断处理请求,所以CPU可以执行用于闭塞控制器的任务处理。但是,在将控制主机装置和控制器之间的光纤通道协议的核心(以下,称作前端侧核心)和控制控制器和磁盘驱动器之间的光纤通道协议的核心(以下,称作后端侧核心)核心安装在单一的LSI中的光纤通道协议控制器中,在通过PCI-X总线连接两核心的关系上,不可以仅对其中任何一方的核心进行初始化。因此,在上述闭塞处理中,同时对两个核心进行初始化。传统上,将控制前端侧核心的模块设计成可以应对突然的初始化,但控制后端侧核心的模块没有进行这样的考虑。为了将控制后端侧核心的模块改良成能够应对突然的初始化,这需要花费相当大的力气。基于这样的理由,在将两核心安装在单一LSI中的光纤通道协议控制器中,需要用于进行稳定的闭塞处理的替代技术。
本发明是鉴于上述问题而形成的,本发明的目的之一在于提供一种提高后端接口的抗故障性且低成本的磁盘阵列装置。
本发明的另一个目的在于提供一种磁盘阵列装置的控制方法,该方法用于在上述磁盘阵列装置在具备将前端侧核心和后端侧核心安装在单一的LSI的光纤通道协议控制器的磁盘阵列装置中,在控制器发生了故障时可以进行稳定的控制器闭塞处理。
本发明再有另一个目的在于提供一种磁盘阵列装置的控制方法,该方法用于让上位主机装置或通路切换软件检测控制器故障,故障切换来自上位主机装置的I/O通路。
为了解决上述的问题,本发明的磁盘阵列装置具备对来自上位主机装置的数据输入输出请求进行应答,并进行对多个磁盘驱动器的数据输入输出处理的双控制器,构成所述双控制器的各个控制器,具备:光纤通道协议控制器,其通过前端接口连接用光纤通道与所述上位主机装置进行接口连接;两个FC-AL,其具备多个PBC,通过该多个PBC的每一个与多个磁盘驱动器的每一个环路连接;连接切换电路,通过后端接口连接用光纤通道与所述光纤通道协议控制器连接,把所述两个FC-AL的任何一个与所述后端接口连接用光纤通道选择性地连接;和机箱控制器,其控制所述多个PBC的每一个,当在所述多个磁盘驱动器中任意的一个磁盘驱动器中发生了故障的情况下,所述连接切换电路将该发生故障的磁盘驱动器从环路连接的FC-AL切换到另一方的FC-AL,所述机箱控制器通过所述被切换的另一方的FC-AL接受SES命令,并根据该接受的SES命令,控制所述多个PBC的一个使该发生故障的磁盘驱动器的环路连接切断,该SES命令用于切断所述发生了故障的磁盘驱动器和对应的FC-AL的连接。
本发明的磁盘阵列装置的控制方法,是双控制器结构的磁盘阵列装置的控制方法,所述双控制器结构的磁盘阵列装置在各个控制器中具备:CPU,其对来自上位主机装置的数据输入输出请求进行应答,进行对磁盘驱动器输入输出数据的处理;高速缓冲存储器,其暂时存储在和上位主机装置或磁盘驱动器之间输入输出的数据;核心,其通过1个通路的前端接口连接用光纤通道与上位主机装置进行接口连接,控制和上位主机装置之间的光纤通道协议;光纤通道协议控制器,其通过1个通路的后端接口连接用光纤通道与磁盘驱动器进行接口连接,并和控制与磁盘驱动器之间的光纤通道协议的核心安装在单一的LSI电路内;GBIC模块,通过前端接口连接用光纤通道在与上位主机装置之间进行光信号的接收发送;两个FC-AL,其与磁盘驱动器环路连接;和连接切换电路,把从两个FC-AL中选择出的任何一个FC-AL切换为与后端接口连接用光纤通道连接;所述控制方法,具备:CPU禁止从光纤通道协议控制器向CPU的中断的步骤;CPU切断与上位主机装置之间的光纤通道协议上的数据通信开始前的协商的步骤;CPU抑制从GBIC模块输出光信号的步骤;和CPU使故障信息退避到高速缓冲存储器中的步骤。
在使用该控制方法闭塞任何一方控制器时,或者在使用该控制方法无法闭塞的情况下,理想的是另一方的控制器抑制从上述其中一方控制器的GBIC来的光信号输出。
根据本发明,可以提供一种提高后端接口的抗故障性,并且低成本的磁盘阵列装置。另外,根据本发明,在控制器发生故障时可以进行稳定的控制器闭塞控制,而且,能引导上位主机装置的I/O通路故障切换顺畅地动作。
附图说明
图1是第一实施例的磁盘阵列装置的结构图;
图2是逻辑卷的说明图;
图3是第一实施例的故障修复处理;
图4是第一实施例的磁盘阵列装置的结构图;
图5第一实施例的控制器闭塞处理;
图6是第一实施例的控制器闭塞步骤;
图7是第一实施例的控制器闭塞步骤;
图8是第一实施例的计划停止处理;
图9是第一实施例的I/O重置处理;
图10是第二实施例的磁盘阵列装置的结构图;
图11是第三实施例的磁盘阵列系统的结构图;
图12是第四实施例的磁盘阵列装置的结构图;
图13是第五实施例的磁盘阵列装置的结构图。
具体实施方式
以下,参照各附图对本发明的实施例进行说明。各实施例并不限定权利要求的范围,此外,在实施例中说明的全部特征的组合并非是发明的解决方法所必需的。本文中涉及的“二重化”是指“两个”或“双”,例如二重化控制器是指双控制器。
(第一实施例)
图1表示本实施例的磁盘阵列装置10的结构。磁盘阵列装置10通过通信网络71与主机装置(上位主机装置)70相连接。主机装置70是作为磁盘阵列装置10的上位主机装置工作的服务器、个人电脑、工作站以及大型计算机等。作为通信网络71,例如可以列举LAN(Local Area Network)、SAN(Storage Area Network)、因特网以及专用线路等。在为开放型主机的情况下,例如根据TCP/IP(Transmission Control Protocol/Internet Protocol)、FCP(FibreChannel Protocol)以及iSCSI(internet Small Computer System Interface)等协议传送数据。在为大型计算机型主机的情况下,例如根据FICON(FibreConnection:注册商标)、ESCON(Enterprise System Connection:注册商标)、ACONARC(Advanced Connection Architecture:注册商标)以及FIBARC(FibreConnection Architecture:注册商标)等通信协议进行数据传送。
此外,还可以具备NAS(Network Attached Storage)功能,所述NAS功能是从主机装置70根据NFS(Network File System)等协议,接受由文件名指定的数据输出要求。
磁盘阵列装置10,采用已被二重化的具备控制器20、30的双控制器结构。控制器20主要具备CPU21、本地存储器(LM)22、数据控制器(D-CTL)23、超高速缓存存储器(CM)24、光纤通道协议控制器(F-CTL)25、PBC(Port Bypass Circuit)27、机箱控制器(E-CTL)28以及FC-AL(Fibre Channel Arbitrated Loop)61,62。
CPU21是对来自主机装置70的数据输入输出请求进行应答,控制向多个磁盘驱动器DRV0~DRV14输入输出数据的处理(写入访问或读取访问)的处理器,通过执行存储在本地存储器22中的微程序来控制数据控制器23、光纤通道协议控制器25以及PBC27等。通过CPU21的控制,数据控制器23对光纤通道协议控制器25和高速缓冲存储器24之间的数据传送进行控制。高速缓冲存储器24对通过光纤通道协议控制器25,在与前端接口或后端接口之间接收发送的数据进行暂时地存储。
光纤通道协议控制器25,通过前端接口连接用光纤通道41与主机装置70进行接口连接,具有接收基于光纤通道协议的块访问请求的功能。而且,光纤通道协议控制器25还通过后端接口连接用光纤通道42与磁盘驱动器DRV0~DRV14进行接口连接,并具有以下功能:根据协议发送向磁盘驱动器DRV0~DRV14输入输出数据的请求。上述协议规定用于控制磁盘驱动器DRV0~DRV14的命令等。PBC27作为后端接口连接用光纤通道42的连接目的地,从两个FC-AL61,62中选择其中的一个或选择两者进行连接切换。
FC-AL61通过已安装在FC-AL62上的PBC82,与号码为偶数的磁盘驱动器DRV0、DRV2、...、DRV14环路连接。FC-AL62通过已安装在FC-AL62上的PBC82,与号码为奇数的磁盘驱动器DRV1、DRV3、...、DRV13环路连接。PBC82是将系统使用上的故障降低到最小,为了能够追加或删除节点而自动地打开或关闭FC-AL61,62的电子开关。PBC82具有旁路光纤通道协议控制器25或磁盘驱动器DRV0~DRV14,将他们从FC-AL61,62电气上排除的功能。例如,PBC82可以将发生了故障的磁盘驱动器DRV0~DRV14从FC-AL61,62切离,进行其他磁盘驱动器DRV0~DRV14和光纤通道协议控制器25之间的通信。此外,PBC82可以维持FC-AL61,62的动作不变地插拔磁盘驱动器DRV0~DRV14。例如,在新安装了磁盘驱动器DRV15(未图示)的情况下,将该磁盘驱动器DRV15收入FC-AL61,62中,可以进行其与光纤通道协议控制器25之间的通信。
机箱控制器(E-CTL)28,控制SES(SCSI Enclosure Surcuit)驱动器。SES驱动器,具备由SCSI3(Small Computer System Interface 3)规格规定的SES(SCSI Enclosure Services)或ESI(Enclosure Service I/F)的功能,可以使SES(SCSI Enclosure Services)或ESI(Enclosure Service I/F)的功能动作。在本实施例中,SES驱动器除了FC-AL61~64之外,还可以和机箱控制器28进行通信。这里,每个FC-AL将两台磁盘驱动器DRV0~DRV3作为SES驱动器,但也可以将全部磁盘驱动器DRV0,DRV2,...,DRV14作为SES驱动器。
此外,安装在控制器20中的前端接口连接用光纤通道41以及后端接口连接用光纤通道42分别为1个通路。
另一方面,控制器30与控制器20相同地构成,具备CPU31、本地存储器(LM)32、数据控制器(D-CTL)33、高速缓冲存储器(CM)34、光纤通道协议控制器(F-CTL)35、PBC37、机箱控制器(E-CTL)38、前端接口连接用光纤通道51、后端接口连接用光纤通道52以及FC-AL63,64。PBC37作为后端接口连接用光纤通道52的连接目的地,从两个FC-AL63,64中选择其中的一个或选择两者进行连接切换。FC-AL63通过PBC82与号码为偶数的磁盘驱动器DRV0、DRV2、...、DRV14环路连接。FC-AL64通过PBC82与号码为奇数的磁盘驱动器DRV1、DRV3、...、DRV13环路连接。
此外,安装在控制器30中的前端接口连接用光纤通道51以及后端接口连接用光纤通道52分别为1个通路。
数据控制器23、33通过总线81相互连接,其中一方的数据控制器23(或33)通过总线81,可以对另一方数据控制器33(或23)进行命令传送或数据传送等。例如,在两个控制器20,30分担来进行对同一逻辑卷的访问时,在两个控制器之间可以进行写入数据或读出数据的传送。
控制器20,30可以通过所谓RAID方式规定的RAID级别(例如:0,1,5)来控制磁盘驱动器DRV0、DRV2、...、DRV14。在RAID方式中,将多个磁盘驱动器DRV0、DRV2、...、DRV14作为一组(以下称为RAID组)进行管理。在RAID组上形成了作为来自主机装置70的访问单位的逻辑卷。在各个逻辑卷中附加了称为LUN(Logical Unit Number)的识别符。
此外,在PBC27和FC-AL61,62之间,分别安装了PBC101,102。PBC101在FC-AL61中发生了故障的情况下,将后端接口连接用光纤通道42通过光纤通道111(虚线)与FC-AL63相连接。PBC102在FC-AL62中发生了故障的情况下,将后端接口连接用光纤通道42通过光纤通道112(虚线)与FC-AL64相连接。
同样地,在PBC37和FC-AL63,64之间,分别安装了PBC103,104。PBC103在FC-AL63中发生了故障的情况下,将后端接口连接用光纤通道52通过光纤通道113(虚线)与FC-AL61相连接。PBC104在FC-AL64中发生了故障的情况下,将后端接口连接用光纤通道52通过光纤通道114(虚线)与FC-AL62相连接。
假如,通过安装在各个控制器20,30中的全部的PBC101~104与光线通道111~114连接,假设接口连接用光纤通道42,52与另一控制器一侧的FC-AL61~64相连接的状态时,例如如同特开2000-187561号公报的图1所示,该状态和多个磁盘驱动器与连接两个控制器的光纤通道连接的状态相同。
在以下的说明中,假设将FC-AL61作为控制器20的运行系统FC-AL,将FCAL62作为控制器20的待机系统FC-AL,将FCAL63作为控制器30的待机系统FC-AL,将FCAL64作为控制器30的运行系统FC-AL的情况,来进行说明。
图2表示在多个磁盘驱动器DRV0~DRV14中形成的逻辑卷。这里,为了方便进行说明,表示了两个逻辑卷LU1,LU2。安装在主机装置70中的OS(operating System)指定逻辑卷名称来访问磁盘阵列装置10。假如在把构成各逻辑卷LU1,LU2的物理磁盘设定为1个时,当在该物理磁盘发生了故障时,该逻辑卷LU1,LU2就无法使用。为了防止这种情况,在RAID方式中,在不相同的多个磁盘驱动器DRV0~DRV14上形成了不同的逻辑卷LU1,LU2。另一方面,因为控制器20的运行系统FC-AL61与号码为偶数的磁盘驱动器DRV0,2,4,...,14相连接;控制器30的运行系统FC-AL64与号码为奇数的磁盘驱动器DRV1,3,5,...,13相连接,所以对各个逻辑卷LU1,LU2的访问,可以不必只由某一方的控制器20或30来进行,两个控制器20,30在协调控制下可以协同进行。
而且,当从主机装置70对磁盘阵列装置10的逻辑卷LU1或LU2进行写入访问时,还将其中一方的控制器20内部的高速缓冲存储器24中存储的写入数据通过总线81存储到另一方的控制器30内部的高速缓冲存储器34中。如此,通过这样地对数据进行二重化,即使在其中一方的控制器20中发生了故障的情况下,也可以故障切换到另一方的控制器30。当在高速缓冲存储器24,34中已存储了写入数据的时刻,磁盘阵列装置10对主机装置70通知写入访问结束。然后,控制器20通过FC-AL61,进行向磁盘驱动器DRV0,DRV2,DRV4,...,DRV14的写入访问。进行写入访问的逻辑卷LU1或LU2不只是号码为偶数的磁盘驱动器DRV0,DRV2,DRV4,...,DRV14,也包含号码为奇数的磁盘驱动器DRV1,DRV3,...,DRV13,所以控制器30通过FC-AL64,进行向号码为奇数的磁盘驱动器DRV1,DRV3,...,DRV13的写入访问。
另一方面,当从主机装置70对磁盘阵列装置10的逻辑卷LU1或LU2进行读取访问时,控制器20检查高速缓冲存储器24,在存在作为读取访问的对象的数据时,读取该数据并将其发送给主机装置70。当在该高速缓冲存储器24中没有相应的数据时,控制器20通过FC-AL61,进行向磁盘驱动器DRV0,DRV2,DRV4,...,DRV14的读取访问。进行读取访问的逻辑卷LU1或LU2不只是号码为偶数的磁盘驱动器DRV0,DRV2,...,DRV14,也包含号码为奇数的磁盘驱动器DRV1,DRV3,...,DRV13,所以控制器30通过FC-AL64,进行向号码为奇数的磁盘驱动器DRV1,DRV3,...,DRV13的读取访问。将各个控制器20,30读取出的读取数据二重写入高速缓冲存储器24,34中。
如此,两个控制器20,30在协调控制下,协同进行对1个逻辑卷的访问,由此可以使各个控制器20,30的处理负荷均等化。在本实施例中列举的例子为:划分为号码为偶数的磁盘驱动器DRV0,DRV2,...,DRV14和号码为奇数的磁盘驱动器DRV1,DRV3,...,DRV13,来对各个控制器20,30的处理负荷进行均等化,但为了控制器20,30所负担的磁盘驱动器的数目大致相同,例如,也可以划分为磁盘驱动器DRV0~DRV7和磁盘驱动器DRV8~DRV14,来对各个控制器20,30的处理负荷进行均等化。
此外,在本实施例中,控制两个PBC27,37,只要将后端接口连接用光纤通道42,52与运行系统FC-AL61,64相连接,全部磁盘驱动器器DRV0~DRV14就被连接到任意一方的控制器20或30,因此,无需个别地控制已安装在FC-AL61~64上的各个PBC82,控制简单。此外,各个CPU21,31无需区分各控制器内的工作系统FC-AL和待机系统的FC-AL,两者都可以识别为同一装置,所以控制容易。
但是,当在与FC-AL61~64连接的各个磁盘驱动器DRV0~DRV14的端口发生故障时,数据包不流入与该端口连接的FC-AL61~64,产生环路故障。当发生环路故障时,无法对磁盘驱动器DRV0~DRV14进行访问,所以需要回避故障。在这里,为了简化说明,假设在与FC-AL61一侧连接的磁盘驱动器DRV2单侧的端口P1中发生了故障的情况,对于该故障回避处理,一边参照图3一边来进行说明。
图3表示环路故障回避处理的过程。在该图中,当在与FC-AL61一侧连接的磁盘驱动器DRV2的端口P1中发生故障时(S101;YES),CPU21将后端接口连接用光纤通道42的连接目的地从FC-AL61(运行系统FC-AL)切换为FC-AL62(待机系统FC-AL)(S102)。例如通过错误消息的检测、应答信号的未到达或超时等,来检测有无故障发生,并经由数据控制器23从光纤通道协议控制器25通知给CPU21。
然后,CPU21从FC-AL62经由SES驱动器对机箱控制器28或38发送SES命令(S103)。在SES命令中包含了嫌疑磁盘驱动器(被估计为发生了故障的磁盘驱动器)的FC环路上的AL_PA(Arbitrated Loop Physical Address)。
接收到SES命令的机箱控制器28或38,控制PBC82,解除由AL_PA指定的嫌疑磁盘驱动器和FC-AL61的连接(S104)。例如,在将磁盘驱动器DRV0指定为嫌疑磁盘驱动器时,解除磁盘驱动器DRV0和FC-AL61的连接。
然后,CPU21将后端接口连接用光纤通道42的连接目的地从FC-AL62切换为FC-AL61(S105),并进行环路诊断判断FC-AL61的环路故障是否已消除(S106)。在本例中,假设在磁盘驱动器DRV2的端口P1(单侧端口)发生了故障的情况,所以即使对磁盘驱动器DRV0进行连接解除,也不能消除FC-AL61的环路故障。
在环路故障没有消除的情况下(S106;NO),依次变更嫌疑磁盘驱动器,同时反复执行S102~S105直到环路故障消除。然后,通过磁盘驱动器DRV2与FC-AL61的连接被解除,FC-AL61的环路故障被消除。
如此,即使在运行系统FC-AL61中发生环路故障,通过将后端接口连接用光纤通道42的连接目的地切换为FC-AL62,经由SES驱动器对机箱控制器28或38发送SES命令,由PBC82进行嫌疑磁盘驱动器的连接解除,可以消除FC-AL61的环路故障。此外,在本例中,因为在与FC-AL63一侧连接的磁盘驱动器DRV2的端口P2中没有发生故障,所以可以从FC-AL63或64经由SES驱动器对机箱控制器28或38发送SES命令,进行嫌疑磁盘驱动器的连接解除。
此外,例如,当在磁盘驱动器DRV2的两个端口P2,P1中发生故障时,则在FC-AL61,63中发生LISM(Loop Initialization Select Master)故障,但通过控制PBC27,将后端接口连接用光纤通道42的连接目的地切换为待机系统的FC-AL62,并经由SES驱动器对机箱控制器28或38发送SES命令,或者通过从始终和后端接口连接用光纤通道52相连接的运行系统FC-AL64经由SES驱动器对机箱控制器28或38发送SES命令,可以进行嫌疑磁盘驱动器的连接解除。
而且,在各个FC-AL61~64中发生的故障可能是由间歇故障引起的,所述间歇故障是由这些FC-AL61~64自身的破损或随时间的恶化等引起的故障,或者是由安装在这些FC-AL61~64中的装置(例如PBC82)的工作状况不好引起的故障。对于因这样的原因而引起的环路故障,即使解除FC-AL61~64和磁盘驱动器DRV0~DRV14的连接,也无法消除,所以需要将后端接口连接用光纤通道42,52的连接目的地分别切换为FC-AL62,63。
根据本实施例,虽然安装在各控制器20,30中的后端接口连接用光纤通道42,52只是一个通路,但因为对每个控制器20,30,把和磁盘驱动器DRV0~DRV14接口连接的FC-AL进行了二重化(冗余结构),所以抗故障性优秀。
图4表示以光纤通道协议控制器25,35为中心的磁盘阵列装置10的主要部分。为了容易说明,省略了控制器内部的一部分的电路要素(本地存储器22,32、机箱控制器28,38等)和后端接口周围的硬件(PBC27,37,101,102,103,104、FC-AL61,62,63,64等)的图示。
光纤通道协议控制器25,具备将前侧核心25a和后侧核心25b安装在单一的LSI(大规模集成电路)中的电路结构。核心25a是用于控制对主机装置70的数据通信中的光纤通道协议的电路,例如,具有接收来自主机装置70的基于光纤通道协议的信息块访问请求的功能。核心25b是用于控制光纤通道协议的电路,所述光纤通道协议是对磁盘驱动器DRV0~DRV14输入输出数据的光纤通道协议,例如,根据协议处理向磁盘驱动器DRV0~DRV14的数据输入输出请求,所述协议规定用于控制磁盘驱动器DRV0~DRV14的命令等。核心25a和核心25b分别由独立的模块进行控制。
PCI-X总线29,将控制器20的前端接口、后端接口、光纤通道协议控制器25以及数据控制器23相互地连接。PCI-X总线29在光纤通道协议控制器25内分为两股,与核心25a和核心25b相连接。闪速存储器(FM)161与连接CPU21和数据控制器23的PCI-X总线分路连接,可以退避控制器闭塞时所必需的最小的故障信息。这里,作为对必需的最小故障信息进行存储的存储器装置,列举了闪速存储器,但也可以使用其他的非易失性存储器。在控制器20的前端接口中安装了GBIC模块151。通信网络71例如是由光纤网络构成的SAN。在主机装置70和通信网络71的接口中安装了HBA(HostBus Adapter)72。
此外,控制器30内部的电路结构与控制器20的电路结构相同,所以省略详细的说明。35a为前端侧核心,35b为后端侧核心,39为PCI-X总线,152为GBIC模块,162为闪速存储器。
此外,各控制器20,30内的CPU21,31通过通信线83相连接,在控制器发生故障时可以相互交换消息。
用于维护或管理系统的管理终端200通过通信接口170与磁盘阵列装置10相连接,在两者之间,根据光纤通道协议或TCP/IP等规定的通信协议进行数据通信。如果两者的通信协议为光纤通道协议,则可以在通信接口170安装GBIC模块和光纤通道协议控制器。如果两者的通信协议为TCP/IP,则可以在通信接口170安装LAN端口连接器和控制TCP/IP的LSI。
操作员通过操作管理终端200,例如可以进行在磁盘驱动器DRV0~DRV14上定义的逻辑卷的设定、磁盘驱动器DRV0~DRV14的增设或减设、RAID结构的设定变更(例如从RAID级别5向RAID级别1的变更)等。此外,如后所述,还具有以下的功能:当在控制器20或30中发生了故障的情况下,取得已退避到高速缓冲存储器24,34中的故障信息,分析故障原因。
此外,管理终端200可以内置在磁盘阵列装置10中,也可以安装在外部。
图5表示控制器闭塞处理的各个处理步骤。该处理是发生了应对控制器进行闭塞的故障的控制器通过自身的判断来闭塞自己的处理。这里,以控制器30中发生故障,通过自身的判断来闭塞控制器30的情况为例,进行说明。当发生应闭塞控制器30的故障时,CPU31禁止从光纤通道协议控制器35向CPU31的中断请求(S201),切断数据通信开始前的协商(S202),所述数据通信是与主机装置70之间的基于光纤通道协议的数据通信,抑制从GBIC(千兆位接口转换器)模块152向主机装置70的光信号输出(S203),以及使必需的最小故障信息退避到闪速存储器162(S204)。在控制器30中发生了故障的时刻,如果存在在CPU31目前执行的控制器任务的延长中执行这一系列的处理S201~S204的情况,则或者还存在在来自光纤通道协议控制器35的中断请求处理的延长中执行这一系列的处理S201~S204的情况。
如此,通过切断基于光纤通道协议的数据通信前的协商,在主机装置70和磁盘阵列装置10之间,开始基于该协议的数据通信。这样,抑制与两者之间的数据通信相伴的事件,进行从光纤通道协议控制器35向CPU31的中断请求。但是,在无论到何时也不确立两者之间的协商的情况下,产生不确立协商时的事件,并对CPU31进行中断请求,所以通过禁止从光纤通道协议控制器35向CPU31的中断请求,也可以切换这样的中断请求。由此,CPU31可以执行用于闭塞控制器30的停机任务处理(S205)。在停机任务处理中,例如包含使故障信息退避到高速缓冲存储器34中的处理等。该停机任务的优先顺序被设定得比通常的控制器任务高,但其优先顺序被设定得比来自光纤通道协议控制器35的中断请求处理低。
此外,当抑制从GBIC模块152向主机装置70的光信号输出时,从控制器30向主机装置70的应答被切断,所以主机装置70判断在控制器30中发生了故障,进行通路切换。
在本说明书中包含CPU31的停机任务处理(S205)和用于使CPU31容易地执行停机任务处理的前期处理(S201~S204),这些处理被称为「闭塞处理」。该前期处理可以不必按照上述的顺序来进行,可以更换各处理的顺序。此外,光信号抑制处理(S203)是用于使CPU31进行通路切换的处理,所以可以将该处理包含在宕机任务处理中。
通过该闭基处理,无需对光纤通道协议控制器25、35进行初始化,可以切断从光纤通道协议控制器25、35向CPU21、31的中断请求,所以CPU21、31在发生故障时,可以执行用于闭塞自己的停机任务处理。万一,在无法执行停机任务处理的情况下,或者在虽然正常地执行了停机任务处理,但之后在高速缓冲存储器24、34中发生了故障,无法从高速缓冲存储器24、34中取出故障信息的情况下,因为已将必须的最小故障信息退避到闪速存储器161、162中,所以可以分析故障原因。
图6是通过控制器之间的相互通信进行控制器闭塞的处理步骤的顺序图。这里,假设在控制器30中发生了应闭塞控制器30的故障,控制器30通过自身的判断闭塞自己的情况。为了方便说明,将控制器20称为CTL#0,将控制器30称为CTL#1。
当在CTL#1中发生应闭塞CTL#1的故障时(S301),CTL#1的模块对该故障判断为闭塞CTL#1(S302)。作为CTL#1的判断闭塞的模块,例如在对CTL#1内产生的全部故障,已预先准备了判断应该执行怎样的修复处理的模块的情况下,可以是这样的模块;或者在预先准备了根据故障原因执行修复处理的模块的情况下,也可以是这样的模块。
然后,CTL#1把自身闭塞的情况通知给CTL#0(S303)。而且,CTL#1禁止从光纤通道协议控制器35向CPU31的中断请求(S304),切断和主机装置70之间的基于光纤通道协议的数据通信前的协商(S305),抑制从GBIC模块152向主机装置70的光信号输出(S306),使需要的最小故障信息退避到闪速存储器162中(S307),执行停机任务处理(S308)。
另一方面,当CTL#0从CTL#1接收到控制器闭塞的通知时,控制CTL#1来抑制从GBIC模块152向主机装置70的光信号输出(S309)。然后,CTL#0切断作为控制器之间的数据传送通路的通路81和用于在控制器之间进行信息交换的通信线83的数据通信(S310)。(S309)和(S310)的执行顺序并不限于上述的顺序,例如可以将两者的执行顺序改换,或同时执行。
如此,在CTL#1通过自身的判断闭塞自己的情况下,与用于闭塞自己的闭塞处理(S304~S308)不同,CTL#0控制CTL#1来抑制从GBIC模块152向主机装置70的光信号输出,由此,即使CTL#1的闭塞处理失败,主机装置70也可以检测到CTL#1产生故障,进行通路切换。
此外,CTL#1的闭塞处理(S304~S308)和CTL#0的光输出抑制处理(S309),并不是各个控制器一边检查相互处理的进展状况,一边计量处理时间的处理,各自的处理并非同步地进行。虽然可以同步地进行两个控制器的处理,但考虑到失掉同步的可能性,在已失掉同步的情况下,CTL#0可以无视CTL#1的光输出抑制处理(S306)的进展状况,可以执行光输出抑制处理(309)。
图7是通过控制器之间的相互通信进行控制器闭塞的处理步骤的顺序图。在这里,假设在控制器30中发生了应闭塞控制器30的故障,控制器20根据CPU31或高速缓冲存储器34产生故障等原因,检测出控制器30无法继续进行CPU处理的情况。为了方便说明,将控制器20称为CTL#0,将控制器30称为CTL#1。
在CTL#1中产生了故障后(S401),当具有CTL#0的模块为了在和CTL#1之间进行信息交换而访问CTL#1时(S402),因为CTL#1无法进行处理(S403),所以具有CTL#0的模块检测出CTL#1产生故障(具体地说,无法进行CPU处理)(S404)。所谓检测CTL#1产生故障的模块,例如可以是在和CTL#1之间交换信息的模块,或者在预先准备了在和CTL#1之间进行信息交换的专用模块,通过超时等可以检测出CTL#1不进行应答的情况下,也可以是这样的专用模块。当CTL#1无法进行CPU处理时,不能进行CTL#1的自己的闭塞处理,所以CTL#0控制CTL#1来抑制从GBIC模块152向主机装置70的光信号输出(S405)。
如此,在CTL#1无法进行闭塞自己的闭塞处理时,CTL#0控制CTL#1来抑制从GBIC模块152向主机装置70的光信号输出(S405),由此,主机装置70可以检测到CTL#1产生故障,进行通路切换。
图8是磁盘阵列装置10进行计划停止时的各个控制器20、30内的CPU21、31执行的处理步骤的流程图。所谓计划停止是有计划地去掉磁盘阵列装置10的主电源。这里,以控制器30内的CPU31的处理为例,来进行说明。当进行计划停止时(S501:YES),CPU31禁止从光纤通道协议控制器35向CPU31的中断请求(S502),切断和主机装置70之间的基于光纤通道协议的数据通信前的协商(S503),抑制从GBIC模块152向主机装置70的光信号输出(S504),把高速缓冲存储器34中剩余的脏数据转储在磁盘驱动器DRV0~DRV14中(S505)。
转储处理(S505)是CPU31执行的控制器任务中的一种,其优先顺序设定得比从光纤通道协议控制器35向CPU31的中断请求低。在磁盘阵列装置10进行计划停止时,通过执行上述的中断禁止处理(S502)和脱机处理(S503),可以容易地执行CPU31的转储处理。
图9是显示控制器20、30中发生了轻度的故障时,重置来自主机装置70的I/O处理的处理步骤的流程图。所谓轻度故障,例如是无需闭塞控制器20,30,但无法正常执行I/O处理的故障。这里,以控制器30内的CPU31的处理为例进行说明。当在控制器30中发生轻度故障(S601;YES),需要重置来自主机装置70的I/O处理时,CPU31禁止从光纤通道协议控制器35向CPU31的中断请求(S602),切断和主机装置70之间的基于光纤通道协议的数据通信开始前的协商(S603),重置来自主机装置70的I/O处理(S604)。
所谓I/O处理的重置,例如是对从主机装置70接收到的命令信息等内部信息进行重置。I/O处理的重置,是CPU31执行的控制器任务中的一种,其优先顺序设定得比从光纤通道协议控制器35向CPU31的中断请求低。当在控制器30中发生了轻度故障时,通过执行上述的中断禁止处理(S602)和脱机处理(S603),可以容易地执行CPU31的I/O处理的重置。
(第二实施例)
图10表示本实施例的磁盘阵列装置11的结构。与图1的符号为相同符号的装置与图1表示的装置相同,因此省略其详细的说明。
在本实施例中,作为后端接口连接用光纤通道42,52的连接切换电路,代替上述的PBC27、37,具备开关26、36。通过具有各自不同的端口ID的端口,将FC-SATA转换接口93和FC-AL62与开关26相连接。同样地,通过具有各自不同的端口ID的端口,将FC-SATA转换接口94和FC-AL64与开关36相连接。开关26、36将与其端口连接的装置识别为各自独立的装置,智能地进行切换控制。
FC-SATA转换接口93、94,是对光纤通道协议和SATA协议进行转换的电路,与号码为偶数的磁盘驱动器DRV0、DRV2、...、DRV14点对点连接。作为号码为偶数的磁盘驱动器DRV0、DRV2、...、DRV14,例如可以采用价格便宜的串行ATA磁盘驱动器。FC-AL62,64与号码为奇数的磁盘驱动器DRV1、DRV3、...、DRV13环路连接。作为号码为奇数的磁盘驱动器DRV1、DRV3、...、DRV13,例如,可以采用应答速度块的高性能的光纤通道·磁盘驱动器。
如此,在混装了应答速度不同的多个种类的磁盘驱动器的磁盘阵列装置11中,例如,在某数据发生了时间上的价值变化时,在同一机体内,可以使数据从光纤通道·磁盘驱动器向串行ATA磁盘驱动器移动,或者从串行ATA磁盘驱动器向光纤通道·磁盘驱动器移动。例如,可以将频繁访问的数据或要求高速应答的数据存储在光纤通道·磁盘驱动器中,另一方面,可以将访问间隔比较长的数据或不要求那么高的应答速度的数据存储在串行ATA磁盘驱动器中。此外,作为应答速度不同的多个种类的磁盘驱动器,例如可以混装SCSI磁盘驱动器、并行ATA磁盘驱动器、串行ATA磁盘驱动器以及光纤通道·磁盘驱动器。
根据本实施例,通过使用开关26、36,可以对后端接口连接用光纤通道42,52的连接目的地进行智能的切换控制,所以可以将性能不同的多个种类的磁盘驱动器与各开关26、36各自的端口连接,根据数据的时间上的价值变化等,可以在机体内改变数据的存储目的地。
(第三实施例)
图11表示本实施例的存储系统12的结构。与图1的符号为相同符号的装置与图1表示的装置相同,因此省略其详细的说明。存储系统12具备主机70、磁盘阵列装置10以及磁盘阵列装置13,这些装置通过通信网络71相互地连接。磁盘阵列装置10具有在第一实施例中所述的结构。
磁盘阵列装置13,采用了已被二重化的具备控制器20、30的双控制器结构。磁盘阵列装置13的控制器20主要具备前端接口连接用光纤通道协议控制器131、后端接口连接用光纤通道协议控制器132。光纤通道协议控制器131通过2个通路的前端接口连接用光纤通道43、44与主机装置70进行接口连接,具有接收基于光纤通道协议的信息块访问请求的功能。光纤通道协议控制器132,通过2个通路的后端接口连接用光纤通道45、46与磁盘驱动器DRV0~DRV14进行接口连接,并具有以下功能:根据协议发送请求向磁盘驱动器DRV0~DRV14输入输出数据的请求。该协议规定用于控制磁盘驱动器DRV0~DRV14的命令等。后端接口连接用光纤通道45、46分别通过FC-AL61、62与磁盘驱动器DRV0~DRV14环路连接。
控制器30也同样地具备:光纤通道协议控制器141,其通过2个通路的前端接口连接用光纤通道53、54与主机装置70进行接口连接;和光纤通道协议控制器142,其通过2个通路的后端接口连接用光纤通道55、56与磁盘驱动器DRV0~DRV14进行接口连接,根据规定控制磁盘驱动器DRV0~DRV14的命令等的协议,发送向磁盘驱动器DRV0~DRV14输入输出数据的请求。
此外,为了方便进行说明,省略了构成磁盘阵列装置10、13装置内部的CPU21、31,本地存储器22、32,高速缓冲存储器24、34,机箱控制器28、38等的图示。
在磁盘阵列装置10中,当在任何的控制器20或30中发生故障时,需要从没有发生故障的另一方控制器20或30访问磁盘驱动器DRV0~DRV14。这里,对于任何的控制器20或30,后端接口连接用光纤通道42、52为仅一个通路的结构,为了访问各个磁盘驱动器DRV0~DRV14,需要每次切换PBC27、37,因此访问速度下降。
与此相对,在磁盘阵列装置30的各个控制器20、30中,分别安装了2个通路的后端接口连接用光纤通道45、46或后端接口连接用光纤通道55、56,因此当在任何的控制器20或30中发生故障时,可以从没有发生故障的另一方控制器20或30,通过2个通路的后端接口连接用光纤通道45、46或后端接口连接用光纤通道55、56来访问磁盘驱动器DRV0~DRV14,所以访问速度不会下降。
因此,当假设在磁盘阵列装置10、13中发生了故障时,在主机装置70要求高速的访问速度的情况或对访问频度高的数据访问的情况下,最好主要对磁盘阵列装置13进行访问;在以低速的访问速度便足够的情况或对访问频度低的数据访问的情况下,最好主要对磁盘阵列装置10进行访问。对于如何决定数据的存储目的地,例如,可以根据主机装置70执行的应用程序的种类或数据的最终更新日期等参数来决定。
根据本实施例,根据数据的访问速度、访问频度、应用程序的种类以及最终更新日期等参数来变更成为数据的存储目的地的磁盘阵列装置10、13,所以可以将磁盘阵列装置10、13恰当地分开使用。
(第四实施例)
图12表示本实施例的磁盘阵列装置14的结构。与图1的符号为相同符号的装置与图1表示的装置相同,因此省略其详细的说明。在各个控制器20、30所安装的光纤通道协议控制器25、35上,分别连接了各自为1个通路的前端接口连接用光纤通道41、51和后端接口连接用光纤通道42、52。在各个控制器20、30上安装了与各个磁盘驱动器DRV0~DRV14环路连接的单一的FC-AL61,63。后端接口连接用光纤通道42、52分别与FC-AL61,63相连接。
各个控制器20、30可以分别通过FC-AL61,63,进行向全部的磁盘驱动器DRV0~DRV14的写入访问或读取访问。对于控制器20、30中的哪个控制器向磁盘驱动器DRV0~DRV14中的哪个磁盘驱动器进行写入访问或读取访问,可以静态或者动态地设定。例如,可以预先固定地设定各个控制器20、30写入访问或读取访问的磁盘驱动器DRV0~DRV14,由担当的控制器20或30执行向该磁盘驱动器DRV0~DRV14的访问,或者可以根据各个控制器20、30的处理负荷或访问频度,动态地决定担当的控制器20、30。各控制器20、30和磁盘驱动器DRV0~DRV14的连接,由安装在FC-AL61,63上的PBC82来控制。
当在与FC-AL61,63连接的各个磁盘驱动器DRV0~DRV14的一方的端口发生故障时,在与该端口连接的FC-AL61,63中发生环路故障。例如,当在与FC-AL61连接侧的磁盘驱动器DRV2的一方的端口中发生故障时,数据包不流入FC-AL61。对于这样的故障,控制器30从FC-AL61经由SES驱动器对机箱控制器28、38发送SES命令,控制PBC82来解除嫌疑磁盘驱动器和FC-AL61的连接,由此消除环路故障。
而且,在各个FC-AL61,63中发生的故障,可能是由间歇故障引起的,所述间歇故障是由这些FC-AL61,63自身的破损或随时间的恶化等引起的故障,或者是由安装在这些FC-AL61,63中的装置(例如PBC82)的工作状况不好引起的故障。对于因这样的原因而引起的环路故障,可以从没有发生故障的FC-AL61或63向各个磁盘驱动器DRV0~DRV14进行写入访问或读取访问。
根据本实施例,可以简化装置的结构,所以可以实现磁盘阵列装置11的低成本化。
(第五实施例)
图13表示本实施例的磁盘阵列装置15的结构。与图1的符号为相同符号的装置与图1表示的装置相同,因此省略其详细的说明。各个控制器20、30所安装的光纤通道协议控制器25、35通过前端接口连接用光纤通道41、51与主机装置70连接,另一方面,通过后端接口连接用光纤通道42、52以及FC-SATA转换接口91、92与磁盘驱动器DRV0~DRV14连接。
根据本实施例,对每个控制器20,30各设置一个光纤通道协议控制器25、35,而且作为磁盘驱动器DRV0~DRV14,可以采用价格低的串行ATA磁盘驱动器,所以可以实现产品的低成本化。
Claims (15)
1. 一种磁盘阵列装置,其具备对来自上位主机装置的数据输入输出请求进行应答,并进行对多个磁盘驱动器的数据输入输出处理的双控制器,其特征在于,
构成所述双控制器的各个控制器,具备:
光纤通道协议控制器,其通过前端接口连接用光纤通道与所述上位主机装置进行接口连接;
两个FC-AL,其具备多个PBC,通过该多个PBC的每一个与多个磁盘驱动器的每一个环路连接;
连接切换电路,通过后端接口连接用光纤通道与所述光纤通道协议控制器连接,把所述两个FC-AL的任何一个与所述后端接口连接用光纤通道选择性地连接;和
机箱控制器,其控制所述多个PBC的每一个,
当在所述多个磁盘驱动器中任意的一个磁盘驱动器中发生了故障的情况下,所述连接切换电路将该发生故障的磁盘驱动器从环路连接的FC-AL切换到另一方的FC-AL,
所述机箱控制器通过所述被切换的另一方的FC-AL接受SES命令,并根据该接受的SES命令,控制所述多个PBC的一个使该发生故障的磁盘驱动器的环路连接切断,该SES命令用于切断所述发生了故障的磁盘驱动器和对应的FC-AL的连接。
2. 根据权利要求1所述的磁盘阵列装置,其特征在于,
所述各个控制器,分担执行对在所述多个磁盘驱动器上形成的逻辑卷的写入访问,或读出访问。
3. 根据权利要求1所述的磁盘阵列装置,其特征在于,
所述连接切换电路为PBC。
4. 根据权利要求1所述的磁盘阵列装置,其特征在于,
所述连接切换电路为开关。
5. 根据权利要求4所述的磁盘阵列装置,其特征在于,
在所述开关中,连接有与应答速度不同的多种类的磁盘驱动器连接的多个光纤通道。
6. 根据权利要求5所述的磁盘阵列装置,其特征在于,
作为所述多个磁盘驱动器,混装了光纤通道·磁盘驱动器和串行ATA磁盘驱动器,
所述各个控制器还具备将所述后端接口连接用光纤通道与所述串行ATA磁盘驱动器连接的FC-SATA转换接口,
所述开关,分别和与所述光纤通道·磁盘驱动器环路连接的对应的FC-AL、所述FC-SATA转换接口相连接。
7. 根据权利要求1所述的磁盘阵列装置,其特征在于,
所述两个FC-AL分别连接着的磁盘驱动器的台数大致相同。
8. 根据权利要求1所述的磁盘阵列装置,其特征在于,
所述光纤通道协议控制器,是把对与所述上位主机装置之间的光纤通道协议进行控制的核心以及对与所述磁盘驱动器之间的光纤通道协议进行控制的核心安装在了单一的大规模集成电路中的电路。
9. 一种存储系统,其具备第一磁盘阵列装置、第二磁盘阵列装置和对所述第一磁盘阵列装置以及第二磁盘阵列装置请求输入输出数据的上位主机装置;其特征在于,
所述第一磁盘阵列装置,具备第一双控制器,其对来自所述上位主机装置的数据输入输出请求进行应答,进行对多个第一磁盘驱动器的数据输入输出处理,
构成所述第一双控制器的各个控制器,
具备:
第一光纤通道协议控制器,其通过1个通路的第一前端接口连接用光纤通道与所述上位主机装置进行接口连接;
具有两个FC-AL的第一FC-AL组,其与所述多个第一磁盘驱动器的每一个环路连接;和
连接切换电路,通过1个通路的后端接口连接用光纤通道与所述光纤通道协议控制器连接,把所述第一FC-AL组中的任何一个FC-AL与所述后端接口连接用光纤通道选择性地连接,
所述第二磁盘阵列装置,具备:第二双控制器,其对来自所述上位主机装置的数据输入输出请求进行应答,进行对多个第二磁盘驱动器的输入输出数据处理,
构成所述第二双控制器的各个控制器,
具备:
第二光纤通道协议控制器,其通过2个通路的第二前端接口连接用光纤通道与所述上位主机装置进行接口连接;
第三光纤通道协议控制器,其与所述第二光纤通道协议控制器连接的同时,与2个通路的第二后端接口连接用光纤通道连接;和
具有两个FC-AL的第二FC-AL组,其与所述第二后端接口连接用光纤通道的每一个通路连接,与所述多个第二磁盘驱动器环路连接。
10. 根据权利要求9所述的存储系统,其特征在于,
所述上位主机装置,对所述第一磁盘阵列装置进行低速的访问请求,对所述第二磁盘阵列装置进行高速的访问请求。
11. 一种磁盘阵列装置,其具备对来自上位主机装置的数据输入输出请求进行应答,并进行对多个磁盘驱动器的数据输入输出处理的双控制器,其特征在于,
构成所述双控制器的各个控制器,
具备:
光纤通道协议控制器,其通过前端接口连接用光纤通道与所述上位主机装置进行接口连接;
FC-AL,其与所述多个磁盘驱动器的其中几个环路连接;
FC-SATA转换接口,其连接所述多个所述磁盘驱动器的其他几个磁盘驱动器;和
开关,通过后端接口连接用光纤通道与所述光纤通道协议控制器连接,把所述FC-AL以及所述FC-SATA转换接口的任何一个与所述后端接口连接用光纤通道选择性地连接。
12. 根据权利要求11所述的磁盘阵列装置,其特征在于,
所述磁盘驱动器为串行ATA磁盘驱动器。
13. 一种磁盘阵列装置的控制方法,所述磁盘阵列装置为双控制器结构的磁盘阵列装置,其在各个控制器中具备:CPU,对来自上位主机装置的数据输入输出请求进行应答,并进行对磁盘驱动器输入输出数据的处理;高速缓冲存储器,其暂时存储在和所述上位主机装置或所述磁盘驱动器之间输入输出的数据;核心,其通过1个通路的前端接口连接用光纤通道与所述上位主机装置进行接口连接,控制和所述上位主机装置之间的光纤通道协议;光纤通道协议控制器,其通过1个通路的后端接口连接用光纤通道与所述磁盘驱动器进行接口连接,并和控制与所述磁盘驱动器之间的光纤通道协议的核心安装在单一的大规模集成电路电路内;千兆位接口转换器模块,其通过所述前端接口连接用光纤通道,在和所述上位主机装置之间进行光信号的接收发送;两个FC-AL,其与所述磁盘驱动器环路连接;以及连接切换电路,其把从所述两个FC-AL中选择出的任何一个FC-AL连接切换到所述后端接口连接用光纤通道,其特征在于,
具备下述步骤:
所述CPU禁止从所述光纤通道协议控制器向所述CPU的中断的步骤;
所述CPU切断与所述主机装置之间的光纤通道协议上的数据通信开始前的协商的步骤;
所述CPU抑制从所述千兆位接口转换器模块的光信号输出的步骤;和
所述CPU使故障信息退避到高速缓冲存储器中的步骤。
14. 根据权利要求13所述的磁盘阵列装置的控制方法,其特征在于,
在任何一方控制器通过所述控制方法进行闭塞的情况下,另一方的控制器抑制从所述一方的控制器的千兆位接口转换器模块的光信号输出。
15. 根据权利要求13所述的磁盘阵列装置的控制方法,其特征在于,
在任何一方控制器无法通过所述控制方法进行闭塞的情况下,另一方的控制器抑制从所述一方的控制器的千兆位接口转换器模块的光信号输出。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005116289A JP2006293863A (ja) | 2005-04-13 | 2005-04-13 | ディスクアレイ装置及びその制御方法 |
JP2005116289 | 2005-04-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1848064A CN1848064A (zh) | 2006-10-18 |
CN100418047C true CN100418047C (zh) | 2008-09-10 |
Family
ID=35788715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005101322342A Active CN100418047C (zh) | 2005-04-13 | 2005-12-22 | 磁盘阵列装置以及其控制方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7370147B2 (zh) |
EP (2) | EP1712997B1 (zh) |
JP (1) | JP2006293863A (zh) |
CN (1) | CN100418047C (zh) |
DE (1) | DE602005001851T2 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4432388B2 (ja) * | 2003-08-12 | 2010-03-17 | 株式会社日立製作所 | 入出力制御装置 |
US7903556B2 (en) * | 2005-11-03 | 2011-03-08 | Hewlett-Packard Development Company, L.P. | Method of controlling data transfers between nodes in a computer system |
CN100451993C (zh) * | 2006-12-21 | 2009-01-14 | 威盛电子股份有限公司 | 多来源数据处理方法 |
KR101406455B1 (ko) * | 2007-08-20 | 2014-06-13 | 엘지전자 주식회사 | 컴퓨터의 데이터 전송 장치 및 데이터 전송 채널 변경 방법 |
CN101377748B (zh) * | 2007-08-29 | 2010-08-25 | 英业达股份有限公司 | 校验储存装置的读写功能的方法 |
JP2009110218A (ja) * | 2007-10-30 | 2009-05-21 | Fujitsu Ltd | 仮想化スイッチおよびそれを用いたコンピュータシステム |
CN101488105B (zh) * | 2008-01-18 | 2011-09-21 | 中兴通讯股份有限公司 | 实现存储双控制器高可用性的方法及存储双控制器系统 |
CN101645915B (zh) * | 2008-08-06 | 2012-10-10 | 中兴通讯股份有限公司 | 一种磁盘阵列主机通道子卡、在线切换系统及其切换方法 |
US8954780B1 (en) * | 2012-10-11 | 2015-02-10 | Symantec Corporation | Systems and methods for transferring input/output operations within computer clusters |
JP5985403B2 (ja) * | 2013-01-10 | 2016-09-06 | 株式会社東芝 | ストレージ装置 |
US9208039B2 (en) * | 2013-10-21 | 2015-12-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for detecting server removal from a cluster to enable fast failover of storage |
CN104536923B (zh) * | 2014-11-27 | 2018-03-23 | 成都龙腾中远信息技术有限公司 | 一种多通道的干扰信号采集与处理验证系统 |
CN105094706B (zh) * | 2015-07-27 | 2018-03-30 | 北京华胜天成软件技术有限公司 | 定时更新磁盘smart信息的方法及双控系统 |
TWI676890B (zh) * | 2017-12-12 | 2019-11-11 | 緯穎科技服務股份有限公司 | 機箱監控系統及機箱監控方法 |
CN108959045B (zh) * | 2018-06-08 | 2021-11-09 | 郑州云海信息技术有限公司 | 一种nas集群故障切换性能的测试方法和系统 |
CN116501263B (zh) * | 2023-06-21 | 2023-09-12 | 苏州浪潮智能科技有限公司 | 数据存储装置、服务器、数据存储方法、电子设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5922077A (en) * | 1996-11-14 | 1999-07-13 | Data General Corporation | Fail-over switching system |
WO1999063442A1 (en) * | 1998-06-05 | 1999-12-09 | Mylex Corporation | Fibre channel topological structure and method and application with raid devices and controllers |
CN1589428A (zh) * | 2000-06-12 | 2005-03-02 | 夸德研究所 | 信息和应用服务器的高速信息处理和海量存储系统及方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5694615A (en) | 1995-06-26 | 1997-12-02 | Hewlett Packard Company | Storage system having storage units interconnected to form multiple loops to provide simultaneous access from multiple hosts |
US5812754A (en) * | 1996-09-18 | 1998-09-22 | Silicon Graphics, Inc. | Raid system with fibre channel arbitrated loop |
US6098155A (en) | 1996-10-28 | 2000-08-01 | Sun Microsystems, Inc. | Apparatus and method for streamlining data transfer with existing interconnect bandwidth |
US6073209A (en) * | 1997-03-31 | 2000-06-06 | Ark Research Corporation | Data storage controller providing multiple hosts with access to multiple storage subsystems |
JP4392877B2 (ja) * | 1998-09-18 | 2010-01-06 | 株式会社日立製作所 | ディスクアレイ制御装置 |
JP2000187561A (ja) | 1998-12-24 | 2000-07-04 | Hitachi Ltd | 記憶装置システム |
US6349357B1 (en) | 1999-03-04 | 2002-02-19 | Sun Microsystems, Inc. | Storage architecture providing scalable performance through independent control and data transfer paths |
US6343324B1 (en) * | 1999-09-13 | 2002-01-29 | International Business Machines Corporation | Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices |
US6772270B1 (en) * | 2000-02-10 | 2004-08-03 | Vicom Systems, Inc. | Multi-port fibre channel controller |
US7146522B1 (en) * | 2001-12-21 | 2006-12-05 | Network Appliance, Inc. | System and method for allocating spare disks in networked storage |
JP4219602B2 (ja) | 2002-03-01 | 2009-02-04 | 株式会社日立製作所 | 記憶制御装置および記憶制御装置の制御方法 |
JP4166516B2 (ja) * | 2002-06-14 | 2008-10-15 | 株式会社日立製作所 | ディスクアレイ装置 |
US7392333B2 (en) * | 2004-11-30 | 2008-06-24 | Xyratex Technology Limited | Fibre channel environment supporting serial ATA devices |
-
2005
- 2005-04-13 JP JP2005116289A patent/JP2006293863A/ja not_active Withdrawn
- 2005-06-22 US US11/159,654 patent/US7370147B2/en not_active Expired - Fee Related
- 2005-09-30 DE DE602005001851T patent/DE602005001851T2/de active Active
- 2005-09-30 EP EP05256133A patent/EP1712997B1/en not_active Not-in-force
- 2005-09-30 EP EP07012449A patent/EP1840745A1/en not_active Withdrawn
- 2005-12-22 CN CNB2005101322342A patent/CN100418047C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5922077A (en) * | 1996-11-14 | 1999-07-13 | Data General Corporation | Fail-over switching system |
WO1999063442A1 (en) * | 1998-06-05 | 1999-12-09 | Mylex Corporation | Fibre channel topological structure and method and application with raid devices and controllers |
CN1589428A (zh) * | 2000-06-12 | 2005-03-02 | 夸德研究所 | 信息和应用服务器的高速信息处理和海量存储系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2006293863A (ja) | 2006-10-26 |
US7370147B2 (en) | 2008-05-06 |
CN1848064A (zh) | 2006-10-18 |
EP1712997B1 (en) | 2007-08-01 |
EP1712997A1 (en) | 2006-10-18 |
DE602005001851T2 (de) | 2008-04-10 |
DE602005001851D1 (de) | 2007-09-13 |
EP1840745A1 (en) | 2007-10-03 |
US20060236030A1 (en) | 2006-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100418047C (zh) | 磁盘阵列装置以及其控制方法 | |
US20060075156A1 (en) | Storage system and communications path control method for storage system | |
US8423818B2 (en) | Disk array apparatus and method for controlling the same | |
US7594083B2 (en) | Storage system and storage control device | |
KR101506368B1 (ko) | 직접-연결 저장 시스템을 위한 능동-능동 장애 극복 | |
US7571356B2 (en) | Storage control device, and error information management method for storage control device | |
US6983343B2 (en) | Partitioning of storage channels using programmable switches | |
US20050149637A1 (en) | Methods of restoring operation of serial ATA storage devices | |
US20040068591A1 (en) | Systems and methods of multiple access paths to single ported storage devices | |
US20040250019A1 (en) | Storage system, controller, control method and program product therefor | |
US7080190B2 (en) | Apparatus and method for providing transparent sharing of channel resources by multiple host machines | |
US20110145452A1 (en) | Methods and apparatus for distribution of raid storage management over a sas domain | |
WO2011141963A1 (en) | Information processing apparatus and data transfer method | |
JP2005508551A (ja) | 共有バスを用いたデータのミラー化 | |
US7984260B2 (en) | Storage system provided with a plurality of controller modules | |
CN102576323B (zh) | 一种促进存储系统中的数据的复制的方法和系统 | |
JP2005018193A (ja) | ディスク装置のインタフェースコマンド制御方法ならびに計算機システム | |
US20080189771A1 (en) | System and article of manufacture for bidirectional data transfer | |
US20070070535A1 (en) | Storage system and component replacement processing method thereof | |
JP2003296034A (ja) | ディスクサブシステムとその制御方法 | |
JP6777848B2 (ja) | 制御装置、及びストレージ装置 | |
US20030204539A1 (en) | Facility protection utilizing fault tolerant storage controllers | |
US20090144466A1 (en) | Storage apparatus, storage system and path information setting method | |
CN102160027B (zh) | 数据处理系统中保留逻辑通信路径的方法和设备 | |
JP2000347812A (ja) | 情報処理装置およびディスクアレイ装置 |
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 |