[go: up one dir, main page]

CN1581877A - 存储系统 - Google Patents

存储系统 Download PDF

Info

Publication number
CN1581877A
CN1581877A CNA2004100476739A CN200410047673A CN1581877A CN 1581877 A CN1581877 A CN 1581877A CN A2004100476739 A CNA2004100476739 A CN A2004100476739A CN 200410047673 A CN200410047673 A CN 200410047673A CN 1581877 A CN1581877 A CN 1581877A
Authority
CN
China
Prior art keywords
controller
memory
interface unit
information
frame
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.)
Pending
Application number
CNA2004100476739A
Other languages
English (en)
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 CN1581877A publication Critical patent/CN1581877A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/2038Error 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 a single idle spare processing component
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • 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 OR CALCULATING; 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/2002Error 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 interconnections or communication control functionality are redundant
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/2002Error 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 interconnections or communication control functionality are redundant
    • G06F11/2007Error 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 interconnections or communication control functionality are redundant using redundant communication media
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/12Protocol engines

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)
  • Quality & Reliability (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

NAS服务器和使用给予NAS服务器的网络地址设置的端口之间的关系是按1∶1唯一决定的,以至TCP/IP处理器或NAS服务器的处理性能产生了降低响应的瓶颈。一台主机分开:一个将送命令的地址给予的I/F部分;一个NAS服务器部分;一个处理设备的高速缓冲存储控制部分;以及一个访问外存储器的I/F部分,并且通过内联网170访问它们以便在I/F和NAS服务器之间的对应关系和在给予I/F的地址和NAS服务器之间的对应关系可以依照处理负荷或类似因素进行任意重配置。

Description

存储系统
技术领域
本发明涉及存储计算机系统中由计算机使用的数据的存储系统,特别地,涉及可通过网络访问文件的存储系统。
背景技术
近年来,计算机处理的数据量如此急剧地增长以至用于存储数据的存储系统的容量也相应地日益增长。作为一种实现大规模低成本的大容量存储的方法,有群集配置(cluster configuration)的存储系统已在USP第6,256,740号中公开。
群集配置存储系统被配置成多个通过交换机或类似物互相连接的相对较小配置的存储器(在下文中称为“存储节点”)。在该配置中,可以通过根据所需存储容量连接多个存储节点来配置群集配置存储系统,以便能够可扩展地实现有从小到大不同容量的存储系统。
另一方面,作为存储系统的一种,还有网络连接存储(在下文中称为“NAS”)。这是一种能够接受通过网络的文件访问的存储系统,事实上,它由一台计算机(在下文中称为“NAS服务器”)来配置,用于提供文件系统和存储器,例如磁盘设备。在此,“文件”指的是将由用户在文件系统或类似物中识别的数据群集。
NAS是一种便于使用的存储系统,因为用户可以直接访问文件。然而,访问NAS的协议(例如,NFS)是以使用TCP/IP(传输控制协议/网际协议)作为前提的。由于访问NAS的频率增加,因而产生了在NAS中TCP/IP的处理负荷这一问题。作为一种解决该问题的技术,在PCT国际公开第02/069166号中公开了一项将TCP/IP的处理从NAS服务器中分离到一个单个硬件(在下文中称为“TCP/IP处理器”)并且该TCP/IP处理器和NAS服务器可以通过交换机访问的技术。在PCT国际公开第02/069166号中,计算机发出的命令由TCP/IP处理器处理到TCP/IP层,然后由NAS服务器处理。在NAS服务器访问存储器的情况下,使用通过光纤信道转换模块(FCSM)连接到NAS的存储器。
发明内容
在PCT国际公开第02/069166号中公开的技术中,将被访问的NAS服务器和按照分配给NAS服务器的网络地址设置的TCP/IP处理器的端口之间的关系是按1∶1唯一决定的。因此,当访问NAS服务器的频率增加或者当需要传输的数据量增加时,TCP/IP处理器或NAS服务器的处理性能产生了降低响应的瓶颈。而且,在TCP/IP处理器或NAS服务器故障的情况下,不可能继续使用已发生故障的NAS。
而且,仅仅通过简单地将NAS连接到USP第6,256,740号的群集配置存储系统无法解决上述问题。
本发明的一个实施例是有下述配置的存储系统。该存储系统包含:一个处理将在存储系统和计算机之间传输的帧(包含一条命令、数据等,可以是一个分组或类似物)的通信协议的接口单元(在下文中称为“I/F处理器”);一个处理文件操作(读、写、新建和删除文件中的数据)的第一控制器(在下文中称为“NAS单元”);一个控制存储器的第二控制器(在下文中称为“高速缓冲存储适配器”);以及一个用于互相访问独立部分的内联网。在该配置中,接收由计算机发送的帧的I/F处理器根据接收帧的内容将其发送给NAS处理器,并发送帧给高速缓冲存储适配器。此时,I/F处理器使用关于在分配给I/F处理器的地址和NAS单元之间对应关系的信息。
而且,在另一实施例中,该配置可以修改以便上述存储系统有一个连接到另一存储系统的第二I/F处理器。而且在这种情况下,在上述配置中可以省略高速缓冲存储适配器。这样,帧通过第一I/F处理器和第二I/F处理器传输到另一存储系统。
另一方面,依照这种状态,接收帧的NAS单元可以通过高速缓冲存储适配器或第二I/F处理器来访问另一存储系统进行预定操作,然后向I/F处理器发送对帧的响应。此时,NAS单元使用关于在文件和高速缓冲存储适配器或储存该文件的另一存储系统之间对应关系的信息。
在此,有可能构思出配置成包括多个I/F处理器和多个NAS单元,以便通过适当设置I/F处理器和NAS单元之间的对应关系,当发生故障时可以分配处理负荷或继续处理的另一实施例。
在另一实施例中,配置可以修改以便高速缓冲存储适配器既没有高速缓冲存储器也没有磁盘设备。
而且,在另一实施例的配置中,在存储系统中提供(或连接到存储系统)管理各种信息(例如在分配给I/F处理器的地址和NAS单元之间的对应关系,或在将由NAS单元处理的文件和存储该文件的高速缓冲存储适配器或另一存储系统之间的对应关系)的管理计算机(在下文中称为“管理服务器”)、或相似的管理器。管理服务器向存储系统发出在分配给I/F处理器的地址和NAS单元之间对应关系的重配置指示,以便在发生故障时可以进行重配置来分配处理负荷和继续处理。
附图说明
图1表示系统硬件配置的一个例子;
图2是存储器130软件配置的一个例子的方框图;
图3是上层逻辑设备管理信息的一个例子的方框图;
图4是LU路径管理信息的一个例子的方框图;
图5是下层逻辑设备管理信息的一个例子的方框图;
图6是物理设备管理信息的一个例子的方框图;
图7是外部设备管理信息的一个例子的方框图;
图8是外部设备定义程序的一个例子的方框图;
图9是逻辑设备定义程序的一个例子的方框图;
图10是LU路径定义程序的一个例子的方框图;
图11是请求交换程序的一个例子的方框图;
图12是命令处理程序的一个例子的方框图;
图13是异步降级程序的一个例子的方框图;
图14是外部设备路径重配置程序的一个例子的方框图;
图15是管理终端软件配置的一个例子的方框图;
图16是NAS管理信息的一个例子的方框图;
图17是端口管理信息的一个例子的方框图;
图18是NAS管理信息重配置程序的一个例子的方框图;
图19是端口管理信息重配置程序的一个例子的方框图;
图20是NAS/端口故障管理程序的一个例子的方框图;
图21是文件访问程序的一个例子的方框图;
图22是合作模式程序的一个例子的方框图。
具体实施方式
图1是应用本发明的系统的一个实施例的配置方框图。该系统包括:至少一台计算机(在下文中称为“主机”)100;至少一个交换机120;一个存储系统(在下文中称为“存储器”)130;至少一个通过交换机120连接到存储器130的存储器(在下文中称为“外存储器”)180;一台管理服务器110;以及一个管理终端190。
将主机100、交换机120、存储器130和外存储器180通过IP网络175连接到管理服务器110,并且由管理服务器110运行的未画出的管理软件进行整体管理。在这个实施例中,存储器130采取通过管理终端190连接到管理服务器110的方式,但也可以配置成存储器130直接连接到IP网络175。
主机100是一台包括CPU101和存储器102的计算机,并且通过使存储器102读取保存在存储器103例如磁盘设备或光盘设备中的软件例如操作系统和应用程序,以便CPU101读取存储器102并执行这些软件来运行预定程序。而且,给主机100装备一个输入设备104例如键盘或鼠标和一个输出设备105例如显示器。由输入设备104接收来自主管理单元或类似物的输入,并且将CPU101指示的信息输出给输出设备105。
而且,给主机100装备至少一个通过网络176与外部设备例如存储器130发送和接收数据的端口107,以及至少一个通过IP网络175与管理服务器110发送和接收数据的接口控制器106。
管理服务器110是一台像主机100的计算机,并且通过使存储器112读取保存在存储器113例如磁盘设备或光盘设备中的管理软件等,以便CPU111读取存储器112并执行这些软件来运行预定程序例如整个系统的运行/维护管理。当CPU111运行管理软件时,管理服务器110通过IP网络175从接口控制器116中收集系统中各个设备的配置信息、资源使用率和性能监控信息。管理服务器110将那些收集到的信息输出给输出设备115并将它们提交给存储器的管理者或类似人员。管理服务器110通过输入设备114接收来自存储器管理者的指示,并通过接口控制器116将接收到的运行/维护指示发送给各个设备。
交换机120有多个端口121和一个接口控制器123。将端口121通过IP网络176连接到主机100的端口107,或通过IP网络177与存储器130的端口141相连。而且,将接口控制器123通过IP网络175连接到管理服务器110。交换机120运行通用程序例如属于IP网络175中交换机的路径控制。
存储器130有群集配置。更具体地说,存储器130包括通过内联网170互相连接的多个协议适配器140、多个高速缓冲存储适配器150、至少一个NAS单元145以及一个配置管理器160。
协议适配器140包括多个端口141、至少一个控制处理器142、一个存储器143以及一个连接到内联网170的网络控制器144。协议适配器140分析从端口141接收的命令以决定将要访问的设备或NAS单元145,并且通过内联网170从网络控制器144发送命令或数据到适当的高速缓冲存储适配器150或NAS单元145。在此,“设备”指的是由存储器提供的物理或逻辑存储区域。
另一方面,协议适配器140可以通过端口141连接到另一存储器例如外存储器180。在这种情况下,连接到外存储器180的协议适配器140将从另一协议适配器140接收的输入/输出请求或从高速缓冲存储适配器150接收的输入/输出请求发送给外存储器180。这样,主机100或NAS单元145可以在外存储器180中写数据(在下文中称为“写”)或从外存储器180中读数据(在下文中称为“读”)。
在本实施例中,假定端口141对应主要在IP网络中使用的TCP/IP和使用SCSI作为上层协议的光纤信道(在下文中称为“FC”)。用于访问NAS的通信协议例如NFS位于TCP/IP协议的上层协议。在本实施例中,出于简化描述的目的,用于访问NAS的文件访问协议是NFS,但也可以是另一协议例如CIFS或者可以支持多个文件访问协议。而且,在(设备的)存储访问是通过IP网络的情况下使用的iSCSI(因特网SCSI)或类似物也位于TCP/IP协议的上层协议。协议适配器140不仅对应于将用于访问NAS的协议(例如NFS)而且对应于访问属于存储器的设备的协议(例如iSCSI)。
在使用存储器130或外存储器180的设备作为块设备时,主机100通过FC或IP网络使用协议例如FC或iSCSI与存储器130通信。
在此,端口141可以有不对应FC协议的配置。而且,该配置也可以仅对应用于访问NAS的协议例如NFS。
高速缓冲存储适配器150包括:至少一个端口156;至少一个连接到每个端口156的磁盘设备157;至少一个控制处理器152;一个对应于每个控制处理器152的存储器153;至少一个磁盘高速缓冲存储器154;至少一个控制存储器155;以及一个连接到内联网170的网络控制器151。
控制处理器152处理由网络控制器151通过内联网170接收到的存在于公共高速缓冲存储适配器150中的对磁盘设备157的输入/输出请求。在高速缓冲存储适配器150为主机100或NAS单元145提供磁盘设备157作为一个或多个如磁盘阵列的下层逻辑设备的情况下,控制处理器152运行在下层逻辑设备和磁盘设备157之间对应关系的管理和将对下层逻辑设备的访问请求转变为对磁盘设备157的访问请求的程序。更进一步地,控制处理器152运行各种程序例如数据拷贝或数据重新配置。
为了加快来自主机100或NAS单元145的访问请求的处理速度,磁盘高速缓冲存储器154预先保存从磁盘设备157频繁读取的数据和临时保存从主机100接收到的写入数据。在此,在使用磁盘高速缓冲存储器154的异步降级操作,例如,从主机100或NAS单元145接收的写入数据(在下文中称为“写入数据”)保存在磁盘高速缓冲存储器154中之后和该数据实际上写入磁盘设备157中之前,把对写入请求的响应返回给主机100或NAS单元145。在这种情况下,为了阻止保存在磁盘高速缓冲存储器154中的写入数据在写入磁盘设备157之前丢失,通过使用备用电池使磁盘高速缓冲存储器154成为非易失性的存储器或者通过相同的双机以改善对介质故障的抵抗性来提高磁盘高速缓冲存储器154的可用性是希望得到的。
控制存储器155保存高速缓冲存储适配器150的必要信息以管理:磁盘设备157,与磁盘设备157联合配置的物理设备或通过协议适配器140连接到存储器130的外存储器180中的设备(在下文中称为“外部设备”);以及外部设备或物理设备和下层逻辑设备之间的对应关系。当保存在控制存储器155中的控制信息丢失时,主机100或NAS单元145无法访问保存属于高速缓冲存储适配器150的磁盘设备157中的数据。因此,通过使用备用电池使控制存储器155成为非易失性的存储器或者通过相同的双机以改善对介质故障的抵抗性来配置控制存储器155以获得更高的可用性是希望得到的。
而且,在另一配置中,高速缓冲存储适配器150在没有端口156和磁盘157的情况下,可以独占地只控制外存储器180的设备。
NAS单元145包括:一个或多个CPU147;一个或多个对应于各个控制处理器的存储器149;以及一个连接到一个存储器148和内联网170的网络控制器146。存储器149读保存在存储器148中的控制程序并由CPU147运行,以便NAS单元145运行预定程序。
CPU147处理通过内联网170从网络控制器146接收的命令,并且向发送该命令的协议适配器140发送响应命令。在命令处理时需要访问设备(在文件中写入数据或从文件中读取数据)的情况下,CPU147通过网络控制器146向提供该设备(也就是说,提供将加载在NAS单元中执行的文件系统中的设备)的高速缓冲存储适配器150或外存储器180发送输入/输出请求,并通过内联网170从网络控制器146接收响应。此处在访问设备的情况下,NAS单元145将接收到的文件访问命令转换成保存该文件数据的设备块的访问命令。
配置管理器160包括:一个或多个控制处理器162;一个或多个对应于各个控制处理器的存储器163;一个或多个控制存储器164;一个存储器165;一个连接到内联网170的网络控制器161;以及一个接口控制器166。存储器163读保存在存储器165中的控制程序并由控制处理器162运行,以便运行配置管理和存储器130故障管理的预定程序。
控制处理器162向可通过接口控制器166访问的管理终端190发送将要提交给存储器管理者的配置信息,并从管理终端190接收管理者输入到管理终端190的维护/运行指示,以便依照接收的指示重配置存储器130。存储器130的配置信息保存在控制存储器164中。保存在控制存储器164中的配置信息可以由协议适配器140的控制处理器142、高速缓冲存储适配器150的控制处理器152和NAS单元145的控制处理器147查阅或更新。因此,可以在存储器130中的协议适配器140和高速缓冲存储适配器150之间共享配置信息。
此处在配置管理器160因故障而无法操作的情况下,无法访问存储器130的整体。因此,在配置管理器160中加倍各个配置元件或者在存储器130中放置多个配置管理器160从而加倍配置管理器160本身是希望得到的。而且,可以分别提供从管理终端190到每个高速缓冲存储适配器150的I/F,以在每个高速缓冲存储适配器150和管理终端190之间共享配置管理器160的控制,从而由控制存储器164独占地配置配置管理器160。也可以通过在控制存储器164和每个高速缓冲存储适配器150的控制存储器155中保留信息以省略配置管理器160。
内联网170将协议适配器140、高速缓冲存储适配器150和配置管理器160互相连接,并在这些独立设备之间执行发送/接收数据、控制信息和配置信息。在内联网170的帮助下,配置管理器160能够通过向协议适配器140、高速缓冲存储适配器150和NAS单元145分配存储器130的配置信息,并且从协议适配器140、高速缓冲存储适配器150和NAS单元145获得配置信息,以管理存储器130的配置。
内联网170在协议适配器140、高速缓冲存储适配器150和NAS单元145之间发送访问请求以便主机100可以从协议适配器140的任意端口141访问属于NAS单元145或高速缓冲存储适配器150的任意上层逻辑设备。在此,从改善可用性的角度看,希望有多路通道的内联网170。
管理终端190是一台计算机,其包括:一个CPU192;一个存储器193;一个存储装置194;一个连接到配置管理器160的接口控制器191;一个连接到IP网络175的接口控制器197;一个从存储器管理者接收输入的输入设备175;以及一个向存储器管理者输出存储器130的配置信息或管理信息的输出设备196(例如显示器)。CPU192读取保存在存储装置194中的存储管理程序给存储器193,并运行该程序从而查阅配置信息,指导重配置并指导特殊功能的操作,以便作为存储器管理者或管理服务器110和存储器130之间的接口并且与存储器130的维护/运行相连。
在此,通过省略管理终端190以由管理服务器110直接访问存储器130,存储器130也可以由在管理服务器110上运行的管理软件进行管理。
外存储器180包括:一个或多个在存储器130中连接到协议适配器140的端口141的端口181;一个控制处理器182;一个存储器183;一个磁盘高速缓冲存储器184;一个或多个磁盘设备186;一个或多个连接到各个磁盘设备186的端口185;以及一个连接到IP网络175的接口控制器187。外存储器180通过自身的端口181和交换机120连接到存储器130。属于外存储器180的磁盘设备186的外部设备或逻辑存储区域作为属于存储器130、NAS单元145或主机100的上层逻辑设备。
在此,除了交换机120以外,还可以给系统提供FC交换机以便外存储器180可以通过FC交换机连接到存储器130。存储器130和外存储器180也可以不通过交换机直接互相连接。更进一步地,也可以将系统配置成没有外存储器180。
控制处理器182运行保存在存储器183中的程序,以处理从端口181接收到的对磁盘设备186的输入/输出请求。在本实施例中,外存储器180由无群集配置但有相对存储器130的较小配置的存储器组成,但可以是与存储器130有相同配置的相似规模的存储器。而且,外存储器180可以是单个磁盘设备组例如既没有磁盘高速缓冲存储器184也没有控制处理器182的JBOD(硬盘捆绑)。
在此将简单描述本实施例系统的操作概要。
将配置成属于存储器130或外部设备的磁盘设备157的上层逻辑设备部分地或整体地提供给NAS单元145用于文件访问程序。
被发送给存储器130以便主机100可以使用保存在存储器130中的文件的命令(或文件访问命令),到达分配给文件访问(NFS)地址的存储器130的端口141。有该端口141的协议适配器140分析该命令,选择NAS单元145以处理该命令,并将该命令通过内联网170发送给选择的NAS单元145。
接收该命令的NAS单元145管理由该命令指定的文件。在处理命令期间访问设备变得必要(例如,该文件保存在设备中)的时候,如果该设备是由高速缓冲存储适配器150提供的上层逻辑设备,NAS单元145向高速缓冲存储适配器150发送访问命令以获得必要数据或者在高速缓冲存储适配器150中保存数据。这里当外部设备包含在上层逻辑设备中的情况下,高速缓冲存储适配器150通过协议适配器140向外存储器180发送命令。在NAS单元145直接利用由外存储器180提供的设备的情况下,NAS单元145向用于访问外存储器180的协议适配器140发送访问命令,以在由外存储器180提供的设备中获得必要数据或者保存数据。
结束所述命令处理的NAS单元145产生一条响应命令并将其发送给先前从内联网170接收到的命令的发送者的协议适配器140。接收到响应命令的协议适配器140将该响应命令发送给主机100。
在此,为了简单表示,在下面的描述中,协议适配器140、高速缓冲存储适配器150、配置管理器160、管理终端190和NAS单元145将分别缩写成PA、CA、MA、ST和AA。
在本发明的实施例中,存储器130中的各个磁盘设备、物理设备、下层或上层逻辑设备之间的关系(在下文中称为“设备层”)如下所述。
首先,在CA中,多个磁盘设备157配置成由CA作为物理设备来管理的磁盘阵列。由连接到PA的外存储器180提供的外部设备由PA识别,然后由MA来管理。
而且在CA中,将下层逻辑设备分配给CA中的物理设备或者通过该CA连接的外部设备。在每个CA中管理下层逻辑设备,并且每个CA独立管理它们的数量。下层逻辑设备是用于对应MA的上层逻辑设备,并且作为由存储器130为主机100或AA提供的逻辑存储器(或设备)。
具体地说,由主机100或AA识别的是存储器130的上层逻辑设备,并且主机100通过使用识别上层逻辑设备的信息以访问保存在存储器130或外存储器180中的数据。然而,AA可以依照管理信息通过PA直接访问外存储器180的外部设备。在这种情况下,不将外部设备分配给某个特定的CA。
在此,各个磁盘设备157可以是一个物理设备、一个下层逻辑设备和一个上层逻辑设备。多个物理设备可以对应一个或多个下层逻辑设备,多个下层逻辑设备也可以对应一个或多个上层逻辑设备。
在进入本系统的操作之前,将描述属于本系统各个配置单元的信息条。
图2是表示存储器130各个配置单元的控制存储器的一个例子的软件配置框图,控制信息和管理信息以及用于存储控制处理的程序保存在这些存储器中。
作为管理存储器130设备层的管理信息,下层逻辑设备管理信息201、物理设备管理信息202和高速缓冲存储器管理信息203保存在CA的控制存储器155中,上层逻辑设备管理信息204、外部设备管理信息205和LU路径管理信息206保存在MA的控制存储器164中。
可以从每个CA、每个PA、每个AA和MA中的每个控制处理器中查阅/更新保存在CA的控制存储器155和MA中的各条控制信息,但需要通过内联网170或类似物来访问。因此,为了改善处理性能,在每个控制处理器中程序运行所必需的控制信息的拷贝保存在所述每个部分(例如,CA、PA、AA和MA)的存储器中。
在由每个部分管理的控制信息是由重配置进行更新的情况下,一部分通过内联网170通知其另一部分,以便由另一部分的存储器从该部分的控制存储器中获得最新的信息。在另一种在控制信息更新时通知另一部分更新信息的方法中,例如,给每部分为每个保存在该部分控制存储器中的配置信息提供一个表示在控制存储器中更新出现与否的标记,以便每部分的控制处理器在开始处理或者每次查阅每个配置信息的时候检查标记的更新。
在此,除了上述控制信息的拷贝以外,每部分的存储器保存控制程序以在每部分的控制处理器中运行。
作为NAS处理中(例如,文件访问或故障时的故障结束)的管理信息,NAS管理信息223和端口管理信息224保存在MA的控制存储器164中。
PA的存储器143中保存:全部上层逻辑设备管理信息204或PA操作信息的拷贝214;全部外部设备管理信息205或PA操作信息的拷贝215;全部LU路径管理信息206或PA操作信息的拷贝216;全部端口管理信息224或PA操作信息的端口管理信息的拷贝222;全部NAS管理信息223或PA操作信息的NAS管理信息的拷贝221;交换从端口141或网络控制器144中接收到的数据或命令的请求交换程序251;LU路径定义程序252;外部设备定义程序253;NAS/端口故障管理程序231;以及文件访问程序229。
CA的控制存储器155中保存下层逻辑设备管理信息201、高速缓冲存储管理信息203和物理设备管理信息202。存储器153中保存:下层逻辑设备管理信息201的拷贝211;物理设备管理信息202的拷贝212;全部外部设备管理信息205或CA操作信息的拷贝215;处理从PA或AA接收到的输入/输出命令的命令处理程序254;逻辑设备定义程序255;异步降级程序257;以及外部设备路径重配置程序256。
MA的控制存储器164中保存上层逻辑设备管理信息204、外部设备管理信息205、LU路径管理信息206、NAS管理信息223和端口管理信息224。存储器163中保存全部设备管理信息(例如,上层逻辑设备管理信息204、下层逻辑设备管理信息201、物理设备管理信息202和外部设备管理信息205)的拷贝210、逻辑设备定义程序255、外部设备路径重配置程序256、LU路径定义程序252、NAS/端口故障管理程序231、外部设备定义程序253、NAS管理信息重配置程序225和端口管理信息重配置程序226。
AA的存储器149中保存:全部NAS管理信息223或AA处理信息的拷贝227;全部外部设备管理信息205或AA处理信息的拷贝215;AA的高速缓冲处理管理信息230;NAS/端口故障管理程序231;以及文件访问程序229。
在本实施例中,假定所有管理信息(例如,下层逻辑设备管理信息201、物理设备管理信息202、上层逻辑设备管理信息204、外部设备管理信息205、LU路径管理信息206、NAS管理信息223、端口管理信息224和它们各自的拷贝)都在存储器130发送时预先设置了初始值。此后,通过在存储管理者或管理服务器的控制下使用下述方法适当地设置这些值,从而改变操作。
图15是表示保存在ST的控制存储器中的控制信息和存储控制处理的程序例子的软件配置方框图。存储器193中保存:全部设备管理信息(例如,上层逻辑设备管理信息204、下层逻辑设备管理信息201、物理设备管理信息202和外部设备管理信息205)的拷贝210;NAS管理信息223的拷贝257;端口管理信息224的拷贝232;逻辑设备定义程序255;LU路径定义程序252;外部设备定义程序253;NAS管理信息重配置程序225;端口管理信息重配置程序226;以及NAS/端口故障管理程序231。
图3是表示上层逻辑设备管理信息204的配置例子的方框图。该上层逻辑设备管理信息被提供给每个上层逻辑设备,条目31到39用于保存从上层逻辑设备号到对应的外部设备号的信息设置。在此,在不使用重配置管理程序的情况下可以省略条目39。
条目31保存由MA分配给上层逻辑设备的号码以定义对应的上层逻辑设备。条目32保存由上层逻辑设备号决定的上层逻辑设备的存储容量。条目33保存对应于上层逻辑设备的下层逻辑设备号和下层逻辑设备所属的CA号。在上层逻辑设备未定义的情况下,设置条目33为无效值。在此,下层逻辑设备号是由管理下层逻辑设备的CA保存的下层逻辑设备管理信息201的条目号。
条目34设置为表示对应上层逻辑设备的状态的信息。该状态有“在线”、“离线”、“未加载”和“故障离线”。“在线”表示上层逻辑设备正常运转以便可以从主机100或AA访问的状态。“离线”表示上层逻辑设备已定义并正常运转但由于LU路径未定义或其它原因而无法从主机100或AA访问的状态。“未加载”表示上层逻辑设备未定义以至于无法从主机100或AA访问的状态。“故障离线”表示上层逻辑设备故障以至于无法从主机100或AA访问的状态。
在本实施例中,为了简单而假定在存储器130发送之前,将下层逻辑设备分配给在磁盘设备157中生成的物理设备,而将上层逻辑设备分配给下层逻辑设备。因此,分配给下层逻辑设备的上层逻辑设备的条目34初始值为“离线”,但对剩余上层逻辑设备上层逻辑设备未定义,以至于条目34初始值为“未加载”。
在条目35中,注册了一个端口号、一个目标ID和一个LUN。在此注册的端口号是表示端口141的哪个端口或AA的网络控制器146或对应上层逻辑设备是否连接的信息,也就是说,是用于访问对应上层逻辑设备或AA的网络控制器146的端口141的标识符格式。在此,在存储器130中,正如分配给每个端口141和AA的网络控制器146,端口141或AA的网络控制器146的标识符信息是独一无二的号码。在条目35中记录了端口141或AA的网络控制器146的号码,其中上层逻辑设备是LUN定义的。
而且,目标ID和LUN是识别上层逻辑设备的标识符。在本实施例中,作为识别上层逻辑设备的标识符,使用了在从主机100和AA通过SCSI协议访问设备的情况下使用的SCSI-ID和逻辑单元号(LUN)。
在条目36中,注册了允许访问上层逻辑设备的用于识别主机100或AA的主机名。主机名可以是例如WWN(全球通用名称)或给予主机100的端口107的iSCSI这样的值,以能够唯一识别主机100或端口107和AA。此外,存储器130保存关于属性(例如每个端口141的WWN、MAC(媒体访问控制)地址或IP地址)的管理信息。
条目37保存表示向上层逻辑设备的输入/输出请求处理模式的“通过CA”、“直接PA”或“转向直接PA”的值。
“通过CA”表示其中上层逻辑设备并不对应外部设备、或上层逻辑设备对应于外部设备以及在CA150处的输入/输出请求对于到上层逻辑设备的输入/输出请求是必要的处理模式。
“直接PA”表示其中上层逻辑设备对应外部设备和到上层逻辑设备的输入/输出请求可以在PA之间不通过CA而直接传输的处理模式。
“转向直接PA”表示从“通过CA”到“直接PA”转换外部设备访问模式的瞬时状态,也就是在对应的CA中执行的下述转换操作的瞬时状态。
在上层逻辑设备对应外部设备的情况下,使用该外部设备的ID号来设置条目38,否则使用无效值来设置。
在条目39中,注册了重配置管理指针。在上层逻辑设备处于“转向直接PA”的情况下使用重配置管理指针,该指针是表示如同表示外部访问的访问模式转换操作未完成区域的导向地址这样的属于上层逻辑设备的存储区域的导向地址的信息。在此,在“转向直接PA”操作未执行的情况下,可以省略条目39。
图4表示LU路径管理信息206的配置例子的方框图。该LU路径管理信息206被提供给每个为属于PA的各个端口141或AA的网络控制器146定义的有效LUN,其中保存条目41到43的信息。条目41保存为端口141或AA的网络控制器146定义(或分配给它们)的LUN地址。
条目42保存分配给LUN的上层逻辑设备号。在条目43中,注册了表示允许访问LUN的主机100或AA的信息,例如WWN或网络控制器146的号码。
在此,为一个可以从端口141或AA访问的上层逻辑设备定义(或向其分配)端口141或AA的网络控制器146。在这种情况下,使用在端口141或AA的各个LUN上的LU路径管理信息206的条目43注册的所有值保存在上层逻辑设备中的上层逻辑设备管理信息203的条目36中。
图5是表示下层逻辑设备管理信息201的配置例子的方框图。向每个CA为每个属于其自身的下层逻辑设备提供条目51到56,以注册一套从下层逻辑设备号到对应上层逻辑设备号的信息条。在未使用重配置管理指针的情况下可以省略条目56。
在条目51中,注册了ID号以识别对应的下层逻辑设备。条目52保存由条目51决定的下层逻辑设备的存储容量。
条目53保存CA的物理设备的ID号或在存在对应下层逻辑设备的外存储器180时的外部设备的ID号。在物理设备或外部设备都没有分配给下层逻辑设备的情况下,使用无效值设置条目53。在此,在条目53中注册的设备号与由管理下层逻辑设备的CA保存的物理设备管理信息202或由MA保存的外部设备管理信息205的条目号一致。
使用表示下层逻辑设备状态的信息来设置条目54。设置信息的内容与上层逻辑设备管理信息204的条目34的内容一致以便可以省略它们的描述。使用对应于下层逻辑设备的上层逻辑设备号来设置条目55。
在条目56中,注册了重配置管理指针。该指针与上层逻辑设备管理信息204的重配置管理指针一致,并且是在对应于下层逻辑设备的上层逻辑设备处于“转向直接PA”状态时使用的信息以及表示在外部访问的路径重配置程序未完成时对应于被发送的上层逻辑设备的这样的下层逻辑设备的存储区域导向地址的信息。
图6是表示用于管理组成CA的磁盘设备157的物理设备的物理设备管理信息202的配置例子的方框图。向每个CA为每个其自身的物理设备提供条目61到69以保存一套从物理设备号的磁盘内尺寸的信息条。
在条目61中,注册了ID号以识别物理设备。条目62保存由条目61中的注册值决定的物理设备的存储容量。条目63保存对应于物理设备的下层逻辑设备号。在物理设备未分配给下层逻辑设备的情况下使用无效值来设置条目63。
使用表示物理设备状态的信息来设置条目64。在这种状态下,存在“在线”、“离线”、“未加载”和“故障离线”。“在线”表示物理设备正常运转并被分配给下层逻辑设备的状态。“离线”表示物理设备已定义并正常运转但并未分配给下层逻辑设备的状态。“未加载”表示物理设备未对应于磁盘设备157的状态。“故障离线”表示物理设备故障以至于未分配给下层逻辑设备的状态。
在本实施例中,出于简化的目的,假定物理设备在发送前生成,以便对应磁盘设备157,并被分配给下层逻辑设备。因此,在可得到的物理设备中,条目64初始值为处于“在线”状态并在其它情况下处于“未加载”状态。
在条目65中保存关于分配给物理设备的磁盘设备157的RAID层的信息、或者RAID配置(例如数据磁盘或奇偶磁盘号的信息)。同样在条目66中,保存RAID中的数据分区单元(或条)长度。在条目67中,保存分配给物理设备的、配置RAID的各个磁盘设备157的ID号。该磁盘设备157的ID号是在CA中识别磁盘设备157的唯一值。
在条目68和条目69中,注册了表示在磁盘设备157中物理设备被分配给哪个区域的信息条(例如,开始位置和大小)。出于简化的目的,在本实施例中,在各个磁盘设备157中配置RAID的偏移和大小对所有物理设备来说是统一的。
图7是表示用于管理连接到存储器130的外存储器180的外部设备的外部设备管理信息205的配置例子的方框图。存储器130的MA为每个属于外存储器180的外部设备提供条目71到79以保存一套从外部设备号到目标端口ID/目标ID/LUN列表的信息条。
条目71保存由存储器130的MA分配给外部设备的在存储器130中的唯一值。条目72保存由条目71中的注册值决定的外部设备的存储容量。
在条目73中,注册了对应外部设备的存储器130中的上层逻辑设备号。条目74保存对应于外部设备并处理来自主机100到外部设备的访问请求的存储器130的CA号,以及对应于外部设备的下层逻辑设备号。另一方面,在AA直接使用外部设备的情况下,条目74保存的不是CA号而是AA号。在此,在上层逻辑设备或下层逻辑设备未分配给外部设备或者未被AA直接使用的情况下,使用无效值来设置条目73或条目74。
使用表示外部设备状态的信息来设置条目75。各个状态的种类与物理设备管理信息202的条目64的状态种类一致。在初始状态存储器130并未连接到外存储器180以至于条目75初始值为“未加载”。在条目76中,注册了有外部设备的外存储器180的ID信息。使用外存储器180的ID信息,可以构成外存储器180的产家ID信息和由每个产家唯一分配的产品序列号之间的结合。
条目77保存由拥有外部设备的外存储器180分配给该外部设备的设备ID号。在此,外部设备是外存储器180的逻辑设备,以至于条目77保存外存储器180中的逻辑设备号。
在条目78中,注册了分配给可通过外部设备访问的存储器130的端口141的ID号,以及端口141所属的PA的ID号。在外部设备可以从多个端口141进行访问的情况下,注册多个端口ID号和多个PAID号。
当外部设备在外存储器180中的端口181中是LUN定义的时候,在条目79中保存外部设备的一个或多个端口181的端口ID和一个或多个分配给外部设备的目标ID/LUN。在存储器130的PA访问外部设备的情况下(例如,在从PA向外部设备发送输入/输出请求的情况下),拥有外部设备的外存储器180分配给外部设备的目标ID和LUN被作为识别外部设备的信息。
图16是表示NAS管理信息223的配置例子的方框图。给每个拥有条目1601到1606的AA提供NAS管理信息223以注册一套从AA号到替代AA号的信息条。
在条目1601中,注册了ID信息以在存储器130中识别AA。
在条目1602中,注册了一组信息列表:在主机100发送文件访问通信命令时用于指定传输目的地的IP地址;有一个由AA进行管理的文件的目录名;分配的上层逻辑设备或外部设备的号码,所述设备用于保存被指定了目录名的目录信息和存在于该目录下的文件,和向AA提供上层逻辑设备的CA号。在此,IP地址可以唯一地注册,以至所有向该注册IP地址的请求可以由所述AA处理。
在条目1602中注册了多个IP地址的情况下,从主机100看来,好象有多个NAS位于系统中。
另一方面,可以将多个AA分配给一个IP地址,从而通过设置条目1602来独立处理不同目录。而且,通过设置条目1602,可以由AA为每个目录分别使用多个上层逻辑设备。
在条目1603中,注册了表示AA的处理状态。该注册信息包括三种:“离线”、“故障”和“工作”。
“离线”表示AA正被初始设置或从另一AA继承信息以至于它无法从主机100接收请求的状态。
“故障”表示AA故障的状态。
“工作”表示AA可以从主机100接收请求的状态。
在条目1604中,注册了表示AA访问模式的信息。该表示访问模式的信息表示AA是否与另一部分(CA或PA)合作进行操作,并且被分成两类:“合作”和“不合作”。
当设置成“不合作”时,AA处理的所有命令和数据通过AA。更具体地说,向AA发送由PA从主机100接收到的命令,如有必要,AA通过CA或PA向外存储器180发送输入/输出请求。而且,从CA或PA将响应命令和数据发送给AA。在处理结束之后,AA将响应命令发送给从主机100接收命令的PA。
当设置成“合作”时,基于AA的输入/输出请求、以及从通过CA或PA连接的外存储器180发送的数据不通过AA而从主机100直接发送给接收了命令的PA,并且将发送给通过CA或PA连接的外存储器180的数据从接收了来自主机100的命令的PA直接发送给连接到外存储器180的CA或PA。这样,许多数据不经过AA从而减轻了AA的处理负荷以及内联网170的负荷。在本实施例中,出于简化的目的,假定条目1604在存储器130发送之前设置成“不合作”,之后该值可在管理服务器或存储器管理者的控制下通过使用下述方法适当地改变。在访问许多大文件时由存储器管理者采用“合作”以减轻处理负荷。在此,可以省略条目1604以给AA提供“合作”或“不合作”。
在AA故障的情况下,使用通过继承AA的管理信息来处理的替代AA号以设置条目1606。如没有该替代AA,则使用无效值来设置条目1606。在未提供替代AA的情况下,可以省略条目1606。
图17是表示端口管理信息224的配置例子的方框图。当端口141连接到IP网的情况下处于访问状态被管理时,在每个部分例如MA使用该端口管理信息224。顺便说一下,在端口141连接到FC网络时,并不由端口管理信息224管理。向每个连接到IP网络的端口提供包括条目1701到1708的端口管理信息224以在这些端口上注册信息条。
使用所分配的可以在存储器130中唯一识别端口141的号码来设置条目1701。在条目1702中,注册了端口141的MAC地址。在条目1703中,注册了分配给端口141的IP地址列表。在条目1704中,注册了可由端口141处理的协议(例如,iSCSI或NFS)列表。该端口141依照注册在端口141自身条目中的MAC地址1702、IP地址1703和协议1704进行通信。在此,在端口141接收数据时,不可处理的协议的数据放置在端口141中。
在条目1705中,注册了端口141的状态。该状态分为四类:“可通信”、“网络不可访问”、“不可通信”和“故障”。
“可通信”表示端口141无故障并且连接到网络以至可以与主机100通信的状态。“网络不可访问”表示电缆或网络无法连接到端口141的状态。“不可通信”表示端口141连接到网络但由于网络问题而无法与主机100通信的状态。“故障”表示端口141故障的状态。
在端口141连接到外存储器180的情况下,在条目1707中注册了连接到端口141的外存储器180的外部设备号。在端口141未连接到外存储器180的情况下,使用无效值来设置条目1707。
在条目1708中,注册了继承分配给端口141的IP地址列表1703并在端口141故障时继续访问IP地址的端口141(在下文中称为替代端口)的端口号。在此,在替代端口未用于通信的继承操作中,不仅IP地址列表而且MAC地址可以被继承给替代端口。
在此,在使用端口管理信息224来管理对应于FC协议的端口时,除了上述的信息条;在条目1702中注册WWN;在条目1703中注册端口ID;以及在条目1704中注册表示FC的信息。
在下文中,将描述在主机100向存储器130访问文件的情况下存储器130中的处理程序。该文件访问程序由一个请求交换程序、一个文件访问程序、一个合作模式程序、一个命令处理程序和一个异步降级程序特别配置而成。在下文中将按顺序描述这些程序。
图11是表示请求交换程序251的处理流程例子的方框图。在请求交换程序251中,PA将在PA的端口141从主机100或外存储器180接收到的输入/输出请求或数据,和在网络控制器144从CA、AA或另一PA接收到的输入/输出请求、数据和命令交换给适当的目标部分例如CA、AA、另一PA、主机100或外存储器180。
从端口141或网络控制器144接收了(在步骤1101)包含数据和命令的帧的PA,依照帧中的协议种类和协议的命令种类将程序分开。在此,可以从由端口141支持的网络(例如,IP或FC)和帧中接收到的数据来识别(在步骤1102)协议种类。
在帧是FCP命令帧或iSCSI命令的情况下,PA依照帧的发送者将程序分开。在本实施例中,通过端口141从主机100、或者通过网络控制器144从访问外存储器180的CA、AA或另一PA来接收(在步骤1103)命令帧。
首先,在发送者是主机100的情况下,PA基于表示上层逻辑设备或包含在接收命令标题信息中的访问目标的LUN,查阅LU路径管理信息的拷贝216和上层逻辑设备管理信息的拷贝214,并判断上层逻辑设备是否对应外部设备和设备访问模式是否是“通过CA”。在上层逻辑设备对应外部设备和设备访问模式是“直接PA”的情况下,PA进一步判断命令的请求种类是否请求在CA不处理。在所有这些条件满足的情况下,PA判断请求的访问模式是直接PA。在任何条件都不满足的情况下,PA判断请求的访问模式是通过CA(在步骤1104到1105)。
在步骤1105判断访问模式不是“通过CA”并且命令请求种类不需要CA操作的情况下,PA判断(在步骤1119)访问模式是否是“转向直接PA”以及由内命令LBA和块号表示的访问区域是否位于上层逻辑设备的重配置管理指针之后。在访问模式不是“转向直接PA”或PA接收到的命令在重配置管理指针之前,也就是交换到直接PA的区域确定的情况下,PA使用具有外部设备的外存储器180访问(在步骤1106)命令访问目的地。
在步骤1119判断访问模式是“转向直接PA”并且访问目的地是未交换部分以及在步骤1105判断是“通过CA”访问的情况下,PA查阅上层逻辑设备管理信息的拷贝214以计算(在步骤1107)上层逻辑设备或接收到的命令访问目的地对应的CA号,并通过使用CA号作为输入/输出操作的接收者以及使用帧的发送者作为输入/输出操作的请求者以存储计算出的CA号作为命令的路由控制信息。
在此,在“转向直接PA”操作未执行的情况下,可以省略步骤1119。在这种情况下,省略图3的条目39。
另一方面,在步骤1103的分开操作中帧的发送者不是主机100,即CA、AA或另一PA140的情况下,PA决定指定了帧标题信息的外存储器180的外部设备作为发送目的地,并通过使用决定的外部设备作为输入/输出操作的接收者以及使用帧发送者作为输入/输出操作的请求者来注册(在步骤1108和1109)命令的路由控制信息。
另一方面,在步骤1102的分开操作中,在PA140接收到的帧种类是数据帧、接收准备完成通知帧或完成报告帧的情况下,PA查阅对应于帧的输入/输出操作的路由控制信息,以决定帧的发送者部分的通信伙伴作为帧的发送目的地。也就是说,在PA从外存储器180接收帧的情况下,主机100或输入/输出操作的接收者访问所使用的PA、CA或AA是帧的发送目的地。而另一方面,在PA从主机100接收帧的情况下,请求输入/输出操作的CA或连接到外存储器180的PA被确定为帧的发送目的地。而且,在PA从CA或另一PA接收帧的情况下,主机100或外存储器180,即输入/输出操作的通信伙伴(或如果帧的发送者是输入/输出操作的请求者则为接收方)被确定(在步骤1110)为帧的发送目的地。
当接收帧的发送目的地在步骤1106、1107、1109和1110确定时,PA依照发送目的地部分分开(在步骤1111)操作。
在发送目的地是另一PA的情况下,PA使用在输入/输出请求的路由控制信息中注册的发送目的地地址来设置帧的发送目的地地址。更具体地说,在发送目的地是外部设备的情况下,PA将接收帧的目的地ID改写成在路由控制信息中作为输入/输出操作的接收者注册的外部设备的目标端口ID(例如,端口181的端口ID),将同一帧中的LUN地址信息改写成外部设备的地址(例如,从外部设备管理信息获得的LUN或类似信息)。在发送目的地是主机100的情况下,PA将接收帧的目的地ID改写(在步骤1112)成在路由控制信息中作输入/输出操作的请求者注册的主机100的端口107的端口ID。
另一方面,在发送目的地是主机100或PA中连接到端口141的外存储器180的情况下,PA给帧的发送者地址设置(在步骤1113)端口141的地址。
并且,接收了命令、数据、接收准备完成报告和完成报告帧的PA向主机100或确定的发送目的地、外存储器180、CA、AA或另一PA发送(在步骤1114)所述帧。而且,在完成发送的帧是完成报告帧的情况下,PA释放(在步骤1115和1116)输入/输出操作的路由控制信息的注册。
另一方面,在步骤1102判断由PA接收的帧是NAS命令,例如,文件访问命令的情况下,PA基于从帧标题中设置的IP地址和命令中设置的文件名获得的目录信息检索NAS管理信息的拷贝221,确定AA处理该命令并将该命令发送给AA。接着,AA执行文件访问程序229(在步骤1118)。该文件访问程序229将在稍后详细描述。
另一方面,在步骤1102判断由PA接收的帧既不是与FCP或iSCSI有关的帧也不是NAS命令的情况下,如果该帧是FC帧,则执行(在步骤1117)现有技术中已知的程序作为在接收帧的PA的控制处理器142中光纤信道的节点端口,如果该帧是IP帧,则PA丢弃该帧。
在此,在由于执行请求交换操作而确定命令发送目的地是CA或AA的情况下,PA不仅增加帧而且增加信息例如将访问的CA号或AA号、下层逻辑设备号、上层逻辑设备号、或者外部设备号、LBA或大小,并将它们发送给发送目的地CA或AA。在命令之后的数据或类似信息将发送给CA或AA的情况下,在PA、CA或AA的每个网络控制器进行数据发送,同时意识到已建立起命令序列。
图21是表示文件访问程序229的处理流程例子的方框图。作为请求交换程序251的结果,AA接收(在步骤2101)来自PA的命令。AA使用高速缓冲存储管理信息230来检查(在步骤2102)文件中的信息或由命令请求的处理目标是否由其自身的存储器149进行高速缓冲存储。在缺少处理目标文件中的信息(例如,目录信息)时,AA查阅NAS管理信息的拷贝227以从保存相关信息的设备(例如,CA提供的逻辑设备或外部设备)读出(在步骤2103)目录信息,并将该目录信息保存在存储器149中。
在有所述信息或者在读出所述信息并保存在高速缓冲存储器中之后,AA检查(在步骤2104)是读请求还是写请求。在既不读也不写请求的情况下,AA通过使用现有技术来处理(在步骤2118)命令。
在读请求或写请求的情况下,AA检查(在步骤2105)数据是否在其自身存储器149的高速缓冲存储区域中。若是读请求并且数据已经在存储器149的高速缓冲存储区域中的情况下,AA基于所述数据执行读取操作。
若是读请求但数据不再存储器149的高速缓冲存储区域中的情况下,AA保留(在步骤2106)存储器149中的高速缓冲存储区域。在保留高速缓冲存储区域之后或者在写请求的情况下,AA检查(在步骤2107)其自身访问模式是否是“合作”。
如果不是“合作”,依照命令内容和目录信息,AA将输入/输出请求发送(在步骤2108)给记录数据的CA或有端口141连接到外存储器180的PA。在发送的命令是读请求(在步骤2109)的情况下,AA接收(在步骤2110)来自已经执行命令处理程序254的CA或已经执行请求交换程序251的PA的数据,将接收到的数据保存在高速缓冲存储区域中,然后接收(在步骤2113)完成报告。
在步骤2109发送的命令是写请求的情况下,AA从已经执行命令处理程序254的CA或已经执行请求交换程序251的PA接收(在步骤2111)准备完成报告,然后接收数据(在步骤2112)并接收(在步骤2113)完成报告。
此后,基于接收到的数据,AA检查所述命令请求的操作读数据是否完成或者写数据是否完成。在未完成的情况下,AA重复步骤2101到2114的操作直到读或写数据完成(在步骤2114)。
在步骤2107是合作模式的情况下,AA、PA和SA执行(在步骤2117)合作模式程序。
在步骤2105完成操作的情况下,在步骤2114、步骤2117和步骤2118的操作完成之后,AA将结果作为命令响应发送(在步骤2115)给发送该命令的PA。接收命令响应的PA向主机100或命令发送者发送(在步骤2116)所述命令响应。
在本实施例中,PA执行TCP/IP以下的操作,依照用于访问NAS的协议(例如NFS)的命令在PA和AA之间发送。
另一方面,本实施例采用了伴随写请求的数据直接写在CA中的模式,但也可以采用数据先写在AA的存储器149的高速缓冲存储区域中然后在合适的时间写在CA中的模式。而且,本实施例采用了AA请求连接到外存储器180的CA或PA至少一次读/写的程序,但也可以采用在CA、PA和AA之间预定指示方法以便可由一次读/写请求结束操作的模式。
图22是表示在文件访问程序229中将执行的合作模式程序2117的处理流程例子的方框图。在合作程序的情况下,AA通知(在步骤2201)在合作模式中发送操作命令的PA。接着,AA向操作设备进行读或写的CA或者有端口141连接到外存储器180的PA发送(在步骤2202)合作模式的读/写请求。
在发送的是读请求(在步骤2203)的情况下,发送命令的PA接收(在步骤2204)来自执行命令处理程序254的CA或执行请求交换程序251的PA的数据,并且AA接收(在步骤2205)来自执行命令处理程序254的CA或执行请求交换程序251的PA的完成报告。在写请求是在步骤2203的情况下,发送命令的PA接收(在步骤2207)来自执行命令处理程序254的CA或执行请求交换程序251的PA的准备完成,然后发送(在步骤2208)数据。此后,AA接收(在步骤2205)来自执行命令处理程序254的CA或执行请求交换程序251的PA的完成报告。
AA检查(在步骤2206)命令请求的操作读数据是否完成接收数据或者写数据是否完成。在未完成的情况下,AA重复步骤2202到2206的操作直到读或写数据完成。
在读或写数据完成之后,AA回到图21的处理流程并将结果作为命令响应发送(在步骤2115)给发送该命令的PA,PA产生来自从AA接收的合作模式通知、从PA或CA接收的数据和从AA接收的命令响应的命令响应,并向主机100或命令发送者发送(在步骤2116)该命令响应。
图12是表示命令处理程序254的处理流程例子的方框图。该命令处理程序为已经接收读或写请求的CA中的下层逻辑设备处理输入/输出请求。
作为请求交换程序251或文件访问程序229的结果,CA检查(在步骤1202)从PA或AA接收到的命令中的命令种类。在命令请求是读的情况下,CA参考高速缓冲存储管理信息203以判断(在步骤1203)将要读的数据是否在磁盘高速缓冲存储器154上(或保存在高速缓冲存储器中)。
在高速缓冲存储器缺失的情况下,CA更新高速缓冲存储管理信息203,在磁盘高速缓冲存储器154中保留(在步骤1204)区域,并从保存数据的物理设备或外部设备读取数据到高速缓冲存储器。参考下层逻辑设备管理信息201,CA能够判断(在步骤1205)保存读数据的设备是否是物理设备或外部设备。
如果保存读数据的设备是物理设备,CA向磁盘设备157发出由物理设备管理信息202决定的读请求,以读出数据(在步骤1206),并在磁盘高速缓冲存储器154的保留区域内保存(在步骤1207)读取的数据。
如果保存读数据的设备是外部设备,CA参考外部设备管理信息205以决定来自条目78的访问目标PA,并向PA发送(在步骤1210)向外部设备的读请求。
接收读请求的PA通过请求交换程序251向外存储器180发送读请求,从外存储器180接收(在步骤1211)读取的数据作为响应,并将从外存储器180接收的读数据返回给CA。CA在磁盘高速缓冲存储器154的保留区域中保存从PA接收的读取数据。
如果数据存在于磁盘高速缓冲存储器中或如果读数据保存在磁盘高速缓冲存储器:CA将保存在磁盘高速缓冲存储器154中的数据发送(在步骤1208)给发送该命令的PA或AA;PA执行请求交换程序251以将数据发送给主机100;AA继续执行文件访问程序。
在CA从PA或AA接收到的命令是写的情况下,CA判断(在步骤1212)对应写数据的旧数据是否保存在磁盘高速缓冲存储器154中。在高速缓冲存储器缺失的情况下,CA分配(在步骤1213)磁盘高速缓冲存储器154的区域。
在步骤1212或1213结束之后,CA向发送该命令的PA或AA发送(在步骤1214)发送准备完成。在将发送准备完成发送给PA的情况下,接收该发送准备完成的PA执行请求交换程序251以将发送准备完成发送给主机100。当从主机100发送写数据时,PA向发送了发送准备完成的CA发送数据。另一方面,在发送准备完成发送给AA的情况下,接收发送准备完成的AA向CA发送数据。在CA中,从PA或AA接收(在步骤1215)的写数据保存(在步骤1216)在磁盘高速缓冲存储器154上的保留区域中。
在由CA接收的命令既不是读也不是写,即为检测命令例如模式检测或诊断命令的情况下,CA基于普通SCSI存储器的规范来执行(在步骤1217)适当的处理。
结束步骤1208、1217或1216操作的CA向连接到主机100或命令发送者的PA或AA报告命令处理程序已完成。接收完成报告的PA执行请求交换程序251并向主机100发送完成报告帧。接收完成报告的AA继续执行(在步骤1209)文件访问程序。
在此,在步骤1201中CA从AA接收命令并且AA处于“合作”模式的情况下,除了命令之外,CA还从AA接收合作模式通知以及用于指定合作PA的信息。在这种情况下,CA为将要进行合作的PA执行步骤1208和步骤1214和1215中的数据准备完成和发送/接收。处于“合作”模式中的PA依照来自AA的指导、来自CA的准备完成和数据的发送/接收来完成合作模式中的文件访问程序。
图13是表示异步降级程序257的处理流程例子的方框图。在该异步降级程序中,作为CA中的命令处理程序254的结果,CA向磁盘设备157写出保存在磁盘高速缓冲存储器154中的写数据。保留在磁盘高速缓冲存储器154中的写数据由高速缓冲存储管理信息203进行管理。通常,写数据或来自磁盘的读数据由队列管理以至可以从磁盘高速缓冲存储器154中删除尽可能旧的数据。
CA从由高速缓冲存储管理信息203管理的数据中选择(在步骤1301)将在磁盘设备157中实际写入的数据,并基于下层逻辑设备管理信息201来判断(在步骤1302)保存数据的磁盘设备157是否对应外部设备或物理设备。
在写数据将写入物理设备中的情况下,CA参考物理设备管理信息202以决定(在步骤1303)写数据的磁盘设备157,并向决定的磁盘设备157发送写数据。
另一方面,在写数据将写入外部设备中的情况下,CA参考外部设备管理信息205以决定(在步骤1304)连接到具有所述外部设备的外存储器180的PA来写入写数据,并向PA发送写请求。接收写请求的PA执行请求交换程序251,以向外存储器180发送写请求,并从外存储器180接收发送准备完成通知作为写请求的响应。然后,PA将发送准备完成通知发送给发送写请求的CA。接收完成通知的CA向PA发送(在步骤1305和1306)写数据。
接收写数据的PA执行请求交换程序251并向上述的外存储器180发送写数据,由外存储器180在外部设备中写入写数据。
在物理设备或外部设备写入写数据之后,CA释放(在步骤1307)在磁盘高速缓冲存储器154上保存写数据的区域。
接着,这里将描述在PA的端口141或AA故障情况下存储器130的操作。在PA的端口141或AA故障的情况下,存储器130通过使用替代AA或端口141继续程序。
图20是表示NAS/端口故障管理程序231的处理流程例子的方框图。已经检测到或从另一部分得到通知端口141或AA故障的MA判断(在步骤2001到2002)检测的或通知的故障是否是端口故障或AA故障。在检测故障是端口故障的情况下,MA参考已故障端口141的端口管理信息224来设置在“故障”时端口141的管理信息的条目1705。
接着,MA额外拷贝端口141的信息,其中端口141在注册在条目1708中的替代端口的端口管理信息中有故障。在替代端口的条目1705处于“可通信”状态的情况下,注册在已故障端口141的条目1704中的IP地址列表添加到替代端口的IP地址列表。在条目1705不处于“可通信”状态的情况下,MA拷贝已故障端口141的MAC地址、IP地址列表、访问模式等到对应于替代端口的端口管理信息的各个条目。并且,MA指导(在步骤2003)PA更新端口管理信息。
在AA故障的情况下,MA参考对应于已故障AA的NAS管理信息223将管理信息223的条目1603设置为“故障”。接着,MA将IP地址、目录名、对应CA号和已故障AA的上层逻辑设备/外部设备列表增加到注册在已故障AA的NAS管理信息223的条目1606中的替代AA的NAS管理信息223上。此后,MA指导(在步骤2004)AA和PA更新NAS管理信息223。
在MA、PA和AA处更新端口管理信息和NAS管理信息完成之后,MA通知(在步骤2005)端口管理信息和NAS管理信息的ST。得到端口管理信息和NAS管理信息更新通知的ST获得(在步骤2006)更新的信息,然后向请求者例如存储器管理者或管理服务器输出完成报告。
图18是表示NAS管理信息重配置程序225的处理流程例子的方框图。在此,在NAS管理信息新注册并且AA中NAS管理信息的部分或全部将复制到另一AA以便继承处理的情况下,执行该处理。而且,随后也执行该处理。更具体地说,AA和PA有机制来测量它们各自的处理负荷,管理服务器通过MA或ST选择处理负荷信息,以便存储器管理者或未描述的管理服务器上的处理负荷管理处理器基于该信息控制从高处理负荷的AA或处理AA的PA到低处理负荷的AA或PA的负荷分配。
而且,在AA因为部分修理或更高性能而被一个新的AA替代的情况下,在存储器管理者或管理服务器的控制下执行该处理。
已经从存储器管理者或管理服务器110接收NAS管理信息重配置指导的ST向MA发送(在步骤1801)相同的指导。对于这个指导,增加了AA中的NAS管理信息条目以重配置该信息。接收指导的MA重配置NAS管理信息并向与将配置的NAS管理信息条目有关的AA发送(在步骤1802)重配置NAS管理信息的指导。接收指导的AA重配置(在步骤1803)NAS管理信息的拷贝227。在重配置指导是增加一个新条目(在步骤1804)的情况下,通知(在步骤1807)MA注册完成。
在重配置指导是重配置现有条目的情况下,AA丢弃(在步骤1805)重配置中被处理的命令,清除(在步骤1806)存储器149中缓存的重配置上的目录信息,并通知(在步骤1807)MA注册完成。从AA接收注册完成通知的MA通知(在步骤1808)每个PA和ST已经更新NAS管理信息。
得到NAS管理信息更新通知的PA将更新的NAS管理信息的拷贝221放入存储器143。另一方面,得到NAS管理信息更新通知的ST获得(在步骤1809)更新的信息,然后向请求者例如存储器管理者或管理服务器110输出完成报告。
在此,当NAS管理信息由NAS/端口故障管理程序重配置时,从上述处理程序的步骤1802开始该处理。
图19是表示端口管理信息重配置程序226的处理流程例子的方框图。在此,在端口管理信息将被新注册并且端口141中端口管理信息的部分或全部将复制到另一端口141以便可以继承该处理的情况下,执行该处理。而且,随后也执行该处理。PA有机制来测量自身的处理负荷,管理服务器通过MA或ST选择处理负荷信息,以便存储器管理者或未描述的管理服务器上的处理负荷管理处理器基于该信息控制从高处理负荷的端口到低处理负荷的端口的负荷分配。而且,在PA因为部分修理或更高性能而被一个新的PA替代的情况下,在存储器管理者或管理服务器的控制下执行该处理。
已经从存储器管理者或管理服务器110接收NAS管理信息重配置指导的ST向MA发送相同的指导。对于这个指导,增加(在步骤1901)了端口中的端口管理信息条目以重配置该信息。接收指导的MA重配置端口管理信息,并向具有与将重配置的端口管理信息条目有关的端口141的PA发送(在步骤1902)一个指导以重配置端口管理信息的拷贝222。
接收指导的PA重配置(在步骤1903)端口管理信息的拷贝222。在重配置指导是增加一个新条目或向现有条目增加信息(在步骤1904)的情况下,PA通知(在步骤1907)MA注册完成,并依照更新的端口管理信息拷贝222的内容在自身的端口141处开始通信程序。在重配置指导是重配置现有条目内容的情况下,PA清除(在步骤1905)重配置中的程序,依照更新的端口管理信息拷贝222的内容在其自身的端口141中开始通信程序,然后通知(在步骤1907)MA注册完成。从PA接收注册完成通知的MA通知(在步骤1908)ST端口管理信息已更新。
得到端口管理信息更新通知的ST获得(在步骤1909)更新的信息,然后向请求者例如存储器管理者或管理服务器110输出完成报告。
在此,当端口管理信息由NAS/端口故障管理程序重配置时,从上述处理程序的步骤1902开始该处理。
在此将描述在本系统部分执行的存储控制处理。将包括存在于存储器130中的物理设备和存在于外存储器180中的外部设备这些设备分配到特定主机100或AA以便可以从主机100或AA使用该设备的处理被粗略地分成外部设备定义程序253、逻辑设备定义程序255和LU路径定义程序252。系统管理者能够通过顺序执行上述三个程序来设置存储器130,以便上层逻辑设备可以分配给主机100或AA。
图8是表示外部设备定义程序253的处理流程例子的方框图。该外部设备定义程序253是介绍外存储器180中的设备作为存储器130管理之下的外部设备的程序。
首先,从存储器管理者或管理服务器110接收外存储器180的访问指导的ST向MA发送该访问指导。对于这个访问指导,增加(在步骤801)了:当查询命令发送到外存储器时,用于定义被访问的外存储器180、或访问目标例如外存储器180的端口181的WWN或IP地址和/或从响应中获得的设备标识符的信息;以及连接到外存储器180的存储器130的端口141的号码。
接收外存储器180的访问指导的MA向对应于增加到访问指导中的所有端口141号码的所有PA发送(在步骤802)有识别外存储器180和连接到外存储器180的端口141号码的信息的外存储器访问指导。
从MA接收外存储器访问指导的PA使用增加到访问指导中的外存储器180的标识符(在下文中称为“外存储器标识符”)查找将被连接的外部设备。更具体地说,在端口181的WWN/IP地址作为外存储器标识符接收的情况下,由PA从指定了增加到访问指导中的端口号的端口141向对应于外存储器180的端口181的所有LUN发送查询命令,并采用返回查询命令的正常响应的LUN作为外部设备注册候选者。
在PA只接收设备标识符作为外存储器标识符的情况下,PA向对应于由PA的所有端口141检测到的外存储器180各个节点端口(在节点端口登录时检测到的)的所有LUN发送查询命令。然后,对返回查询命令的正常响应的设备(LUN),PA比较外存储标识符与响应中的设备标识符并采用匹配设备作为外部设备注册(在步骤803)的候选者。
PA向MA返回关于检测的外部设备注册候选者的信息列表。该信息列表包含(在步骤804)在每个外部设备注册候选者中设置外部设备管理信息205所必需的信息。
接收信息列表的MA计算包含在接收的外部设备列表中的外部设备的数量,在外部设备管理信息205中注册设备信息,并通知剩余的各个部分更新相同的信息。在此,在本处理步骤中由MA在外部设备管理信息205中注册的信息特别包含由MA分配给外部设备的外部设备号、从对查询命令的响应获得的大小、存储标识符、外存储器中的设备号、由PA通知MA的PA/发起端口号列表以及目标端口ID/目标ID/LUN列表。
另一方面,尚未分配对应上层逻辑设备号和对应CA号/下层逻辑设备号/AA号,以便MA在对应条目中设置无效值或初始值。而且,使用“离线”状态来设置(在步骤805)条目75。
接收外部设备管理信息205更新通知的各个CA、PA和AA把保存在MA的控制存储器164中的外部设备管理信息205读入各个存储器中。另一方面,ST获得(在步骤806)存储器中的外部设备管理信息205,并输出完成通知以便向程序请求者例如存储器管理者或管理服务器110通知外部设备定义程序完成。
在此,存储器管理者或管理服务器110指导存储器130被访问但并不引入外存储器180,并只对存储器130进行外存储器180的访问指导,以便分别属于由存储器130从所有端口141检测到的所有外存储器180的所有设备可以作为外部设备来注册。而且,没有来自存储器管理者或管理服务器110的直接访问指导,以便当外存储器180连接到存储器130时由存储器130检测到的所有设备可以即时注册为外部设备。
图9是表示逻辑设备定义程序255的处理流程例子的方框图。响应于来自存储器管理者或管理服务器110的指导,逻辑设备定义程序255为由存储器130定义的物理设备或由外部设备定义程序253定义的外部设备定义上层或下层逻辑设备。
从存储器管理者或管理服务器110接收逻辑设备定义指导的ST向MA发送该指导。对于这个逻辑设备定义指导,增加了:逻辑设备所分配的物理设备或外部设备号;分配的上层逻辑设备号;分配的下层逻辑设备号;以及用于管理下层逻辑设备的CA号。在本实施例中,出于简化描述的目的,将一个逻辑设备分配给一个物理或外部设备。然而:可以为由两个或更多物理或外部设备组成的设备组定义一个逻辑设备;可以为一个物理或外部设备定义两个或更多逻辑设备;并且可以为由两个或更多物理或外部设备组成的设备组定义两个或更多逻辑设备。
然而,在各种情况下,有必要在下层逻辑设备管理信息201(在步骤901)中:增加例如在物理或外部设备中逻辑设备的开始位置和大小的信息;生成对应多个设备的物理和外部设备号条目;为物理和外部设备管理信息条202和205生成对应的多个设备的下层逻辑设备号条目。
接收(在步骤902)逻辑设备定义指导的MA从增加到逻辑设备定义指导中的信息来定义目标CA,并向确定的CA发送逻辑设备定义指导。
接收逻辑设备定义指导的CA为被指导的物理或外部设备注册(在步骤903)下层逻辑设备。更具体地说,对于下层逻辑设备管理信息201的目标设备条目(例如,对应于增加到逻辑设备定义指导中的下层逻辑设备号的条目),CA注册:在条目51中,增加到逻辑设备定义指导中的下层逻辑设备号;在条目53中,增加到逻辑设备定义指导中的物理或外部设备号;在条目52中下层逻辑设备的大小;以及在条目55中,增加到逻辑设备定义指导中的上层逻辑设备号,并在条目54中设置“在线”。
而且,设置物理/外部设备的对应CA号/下层逻辑设备号,并将设备状态更新为“在线”。在注册完成之后,CA将该消息通知MA(在步骤903)。
接着,MA将上层逻辑设备分配给由逻辑设备定义指导指定的下层逻辑设备,并通知各个部分控制信息已更新。更具体地说,对于上层逻辑设备管理信息203的设备条目(例如,对应于增加到逻辑设备定义指导中的上层逻辑设备号的条目),MA设置:在条目31中,增加到逻辑设备定义指导中的上层逻辑设备号;在条目32中上层逻辑设备的大小;在条目33中,增加到逻辑设备定义指导中的CA号和下层逻辑设备号;在条目34中“离线”状态作为设备状态;以及在条目35和36中,由于这些条目未分配而为无效值。
而且,在上层逻辑设备的分配目标是外部设备的情况下,在条目38中设置增加到逻辑设备定义指导中的外部设备号,并将设备访问模式设置为“直接PA”作为初始值。而且,在上层逻辑设备的分配目标是外部设备的情况下,使用上层逻辑设备号来设置外部设备管理信息205的对应条目73。并且,MA通知(在步骤904)每个PA和ST控制信息已更新。
得到控制信息更新通知的PA取出更新的信息给存储器143。另一方面,得到控制信息更新通知的ST取出(在步骤905)更新的信息,然后输出结束报告以向请求者(例如存储器管理者或管理服务器110)报告完成逻辑设备定义程序。
图10是表示LU路径定义程序252的处理流程例子的方框图。从存储器管理者或管理服务器110接收LU路径定义指导的ST向MA发送相同的指导。对于这个指导,不仅增加了目标上层逻辑设备号、定义LU的端口141的号和LUN,而且增加了用于访问相同LU的主机100的标识符(例如属于主机的端口107的WWN)或AA的标识符(例如,AA号)和为上层逻辑设备表示请求功能级别的信息。
在此,请求功能级别表示由上层逻辑设备请求的数据的可靠性级别或类似级别。更具体地说,表示是否应用数据合作功能(例如数据拷贝)或由存储器130提供的设备重配置或通过使高速缓存区域在高速缓存上保存数据实现的访问加速功能。这样,数据可靠性级别基于应用功能的提供与否而变化。这里可以指定表示保存在上层逻辑设备中的数据是否必须通过CA作为请求功能级别来处理(即使数据不是保存在连接到CA的磁盘设备157中)的信息(在步骤1001)。
接收LU路径定义指导的MA,从由LU路径定义指导指定的上层逻辑设备的上层逻辑设备管理信息203中的条目38判断(在步骤1002)对应于上层逻辑设备的设备是否是外部设备,并在是外部设备的情况下执行(在步骤1003)外部设备路径重配置程序。
在完成外部设备路径重配置程序之后或者在由LU路径定义指导指定的上层逻辑设备并不对应外部设备的情况下,MA为上层逻辑设备执行LU路径注册。更具体地说,MA在上层逻辑设备管理信息203的设备条目的条目35和条目36中设置由LU路径定义指导指定的对应信息,并在由LU路径管理信息206的LU路径定义指导指定的端口141中空白条目中,依照LU路径定义指导设置包括目标ID/LUN的配置信息。在这些注册和设置之后,MA将它们通知给剩余的各个部分(在步骤1004)。
接收通知的PA取出新设置和注册的信息,接收通知的ST取出新设置和注册的信息(在步骤1005)并输出完成报告以向请求者例如管理服务器110或存储器管理者通知完成报告。
图14是表示外部设备路径重配置程序256的处理流程例子的方框图。当为对应于外部设备的上层逻辑设备定义LU路径时,若基于由存储器管理者为外部设备请求的功能级别判断通过CA的输入/输出操作是必要的,或者MA通过ST从存储器管理者或管理服务器110接收上层逻辑设备功能请求级别的变化指导的情况下,执行外部设备路径重配置程序256以从初始状态的直接PA路径重配置路径。
已经接收功能请求级别的重配置指导的MA基于重配置指导判断(在步骤1401)使用重配置指导中的信息定义的上层逻辑设备的路径是否应当通过CA。在路径应当通过CA的情况下,MA参考上层逻辑设备管理信息203判断(在步骤1402)上层逻辑设备的访问模式是否是直接PA模式。
在上层逻辑设备是直接PA模式的情况下,MA从“直接PA”到“通过CA”重配置(在步骤1403)上层逻辑设备的路径。在该模式已经是通过CA的情况下,由于无须配置,程序结束。
若在步骤1401判断上层逻辑设备的路径应当是直接PA,MA参考上层逻辑设备管理信息203判断(在步骤1404)上层逻辑设备的设备访问模式是否是通过CA。
在上层逻辑设备的设备访问模式是通过CA的情况下,MA必须从“通过CA”到“直接PA”重配置路径。因此,首先,MA(在步骤1405)将上层逻辑设备的上层逻辑设备管理信息203中的条目37重配置成“转向直接PA”,并参考上层逻辑设备管理信息203来定义管理对应于上层逻辑设备的下层逻辑设备的CA。并且,通知(在步骤1406)被定义的CA从通过CA到直接PA重配置上层逻辑设备的路径。
得到通知的CA向磁盘高速缓冲存储器154检索所有对应下层逻辑设备的数据,从而缺失磁盘高速缓冲存储器,即从磁盘高速缓冲存储器154到对应设备写出数据从而更新设备中的数据,而不更新物理设备或外部设备,然后立即为已更新的数据释放分配给该数据的高速缓冲存储区域。接着,CA通过使用高速缓冲存储管理信息从下层逻辑设备中最主要的一个来检索磁盘高速缓冲存储器154。而且,CA通过管理上层逻辑设备的重配置管理指针和下层逻辑设备管理信息(在步骤1407)来管理已检索和缺失部分的程序。
当磁盘高速缓冲存储器154的所有区域的缺失操作完成时,CA将该消息向MA报告(在步骤1408),MA将上层逻辑设备管理信息203中的条目37重配置成“直接PA”从而完成路径重配置程序。
依照迄今所描述的本实施例,能够分散处理负荷的NAS系统可以通过分开向主机100送命令的地址所附着的I/F部分(PA)、用于文件访问程序的NAS服务器部分(AA)、用于操作设备的高速缓冲存储适配器(CA)和连接到外存储器180的IF部分(PA),并通过内联网170访问来实现。
依照本实施例,通过向主机100送命令的地址所附着的I/F部分(PA)、用于文件访问程序的NAS服务器部分(AA)、用于操作设备的高速缓冲存储适配器(CA)和连接到外存储器180的IF部分(PA)建立“合作”模式。在大量数据将由主机100和AA传输的情况下,可以在主机的I/F部分(PA)和连接到高速缓冲存储适配器(CA)或外存储器180的I/F部分(PA)之间直接传输。因此,有可能实现减轻AA处理负荷和对主机有快速命令响应的NAS系统。
依照本实施例,在由AA使用NAS管理信息223管理的文件和主机100向其发送命令以访问文件的I/F部分的IP地址之间的对应关系可以在条目1602中如此设置以至可以由多个AA处理一个PA,并且虽然从主机100访问的似乎是一个NAS系统,但通过执行AA的处理可以减轻处理负荷。因此,有可能实现对主机100有快速命令响应的NAS系统。
依照本实施例,在由AA使用NAS管理信息223管理的文件和主机100向其发送命令以访问文件的I/F部分的IP地址之间的对应关系可以在条目1602中如此设置以至一个AA可以有多个IP地址,并且虽然从主机100看来好像有多个NAS系统,但通过执行多个PA或端口141的处理可以减轻处理负荷。因此,有可能实现对主机100有快速命令响应的NAS系统。
依照本实施例,在由AA使用NAS管理信息223管理的文件和主机100向其发送命令以访问文件的I/F部分的IP地址之间的对应关系可以在条目1602中如此设置以至一个AA可以有多个IP地址,并且从主机100看来好像有多个NAS系统。因此,有可能实现对多个独立应用使用多个NAS系统的NAS系统。
依照本实施例,在由AA使用NAS管理信息223管理的文件和主机100向其发送命令以访问文件的I/F部分的IP地址之间的对应关系可以部分发送给另一AA,从而扩展了有更高处理负荷的AA以减轻处理负荷而不影响主机100。因此,有可能实现能够改善对主机的命令响应的NAS系统。
依照本实施例,在由AA使用NAS管理信息223管理的文件和主机100向其发送命令以访问文件的I/F部分的IP地址之间的对应关系可以修改,从而扩展了有更高处理负荷的PA,或者将负荷分配给低处理负荷的PA,从而减轻处理负荷。因此,有可能实现能够改善对主机的命令响应的NAS系统。
依照本实施例,通过将NAS管理信息223的AA中的所有条目拷贝到新AA的条目中,可以由有更高处理能力的新分组代替AA而不影响主机100,从而减轻处理负荷。因此,有可能实现能够改善对主机的命令响应的NAS系统。
依照本实施例,通过将给予端口管理信息224的端口的IP地址的一部分移动到另一端口141的条目中,可以分散到端口141的访问而不改变主机100的设置,从而减轻处理负荷。因此,有可能实现能够改善对主机的命令响应的NAS系统。
依照本实施例,在AA故障的情况下,AA的管理信息可以继承给出现在NAS管理信息223中的替代AA。因此,有可能实现能够继续处理而无需重配置主机100的设置的NAS系统。
依照本实施例,在PA的端口141故障的情况下,将端口管理信息224的端口141中的信息全部拷贝到未使用端口141的条目中,或者将端口中的信息部分移动到已用端口141中。因此,有可能实现无需重配置主机100的设置就能使用的NAS系统。
依照本实施例,CA可以给AA提供外存储器作为其自身设备,以便可以利用廉价的外存储器而无需在存储器130中放置磁盘设备157。因此,有可能实现有上述实施例作用的低成本的NAS系统。
依照本实施例,AA可以直接使用外存储器而不通过CA,从而实现有上述实施例作用的低成本的NAS系统。
依照上述实施例,即使在NAS的使用负荷增加的情况下,可以如此控制和分散更高处理负荷部分的处理,以至可以不降低响应。
依照上述实施例,即使在产生故障的情况下,故障部分的信息可以继承到另一部分以便NAS可以继续从计算机访问和使用而无需重配置计算机的设置。

Claims (18)

1.一种存储系统,包含:
一个连接到一台计算机的接口单元;
一个处理文件操作的第一控制器;
一个处理存储器的数据读/写的第二控制器;以及
一个与所述接口单元、所述第一控制器和所述第二控制器互相连接的内联网,
其中所述接口单元从所述第一控制器和所述第二控制器之一选择从所述计算机发送的帧的发送目的地,并通过所述内联网将所述帧发送给选择的控制器。
2.依照权利要求1的一个存储系统,
其中当所述第一控制器从所述接口单元接收所述帧并执行由所述帧指定的文件操作时,所述第一控制器通过所述第二控制器为所述存储器执行数据读/写。
3.依照权利要求2的一个存储系统,进一步包含一个连接到另一存储器的第二接口单元,
其中所述接口单元从所述第一控制器、所述第二控制器或所述第二接口单元中选择所述帧的发送目的地。
4.依照权利要求3的一个存储系统,
其中当所述第一控制器从所述接口单元接收所述帧并执行由所述帧指定的文件操作时,所述第一控制器通过所述第二接口单元为所述另一存储器执行数据读/写。
5.依照权利要求1的一个存储系统,进一步包含多个所述第一控制器,
其中当所述帧是包含一个请求文件操作命令的帧时,所述接口单元从所述多个第一控制器中选择一个预定第一控制器并通过所述内联网将所述帧发送给所述选择的第一控制器。
6.依照权利要求5的一个存储系统,其中
所述接口单元保存关于所述多个第一控制器和包含在从所述计算机接收的帧中的一个标识符之间对应关系的信息,并当接收所述帧时基于所述信息决定将所述帧将被发往的第一控制器。
7.依照权利要求1的一个存储系统,其中,
依照接收所述帧的所述第一控制器的指导,所述接口单元和所述第二控制器通过所述内联网发送/接收关于所述第一控制器的处理的数据。
8.依照权利要求4的一个存储系统,其中,
依照接收所述帧的所述第一控制器的指导,所述接口单元和所述第二接口单元通过所述内联网发送/接收关于所述第一控制器的处理的数据。
9.依照权利要求6的一个存储系统,其中
所述信息包含表示所述多个第一控制器对应于一个属于所述接口单元的用于接收所述帧的端口的信息。
10.依照权利要求1的一个存储系统,进一步包含多个所述接口单元,其中
将由所述多个接口单元接收的帧被发送到所述第一控制器。
11.依照权利要求9的一个存储系统,进一步包含一个管理单元,其中
依照所述管理单元的指导,所述接口单元重配置所述信息的内容并改变所述帧的发送目的地。
12.依照权利要求11的一个存储系统,进一步包含:
多个所述接口单元;以及
依照所述管理单元的指导,将所述接口单元中执行的处理继承到所述多个接口单元中的另一个的装置。
13.依照权利要求12的一个存储系统,其中
当属于所述存储器的各个设备检测出所述接口单元故障时,产生所述管理单元的指导,并且
所述管理单元具有在所述接口单元故障时继承所述处理的所述另一个接口单元的信息。
14.依照权利要求12的一个存储系统,进一步包含:
多个所述第一控制器;以及
依照所述管理单元的指导,将所述第一控制器中执行的处理继承到所述多个第一控制器中的另一个的装置。
15.依照权利要求14的一个存储系统,其中
当属于所述存储器的各个设备检测出所述第一控制器故障时,产生所述管理单元的指导,并且
所述管理单元具有在所述第一控制器故障时继承所述处理的所述另一个第一控制器的信息。
16.依照权利要求4的一个存储系统,其中
所述第二控制器通过所述第二接口单元控制所述另一存储器。
17.依照权利要求1的一个存储系统,其中
所述第二控制器有一个高速缓冲存储器和一个磁盘设备。
18.一种存储系统,包含:
一个连接到一台计算机的接口单元;
一个处理文件操作的控制器;
一个为一存储器处理数据读/写的第二接口单元;以及
一个与所述接口单元、所述第二接口单元和所述控制器互相连接的内联网,
其中所述接口单元从所述控制器和所述第二接口单元之一选择从所述计算机发送的帧的发送目的地,并通过所述内联网将所述帧发送给选择的控制器或所述第二接口单元。
CNA2004100476739A 2003-08-06 2004-05-28 存储系统 Pending CN1581877A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003206168A JP4297747B2 (ja) 2003-08-06 2003-08-06 ストレージ装置
JP206168/2003 2003-08-06

Publications (1)

Publication Number Publication Date
CN1581877A true CN1581877A (zh) 2005-02-16

Family

ID=33549900

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2004100476739A Pending CN1581877A (zh) 2003-08-06 2004-05-28 存储系统

Country Status (4)

Country Link
US (1) US6950914B2 (zh)
EP (1) EP1505788A3 (zh)
JP (1) JP4297747B2 (zh)
CN (1) CN1581877A (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739543B1 (en) * 2003-04-23 2010-06-15 Netapp, Inc. System and method for transport-level failover for loosely coupled iSCSI target devices
JP4477365B2 (ja) * 2004-01-29 2010-06-09 株式会社日立製作所 複数インタフェースを有する記憶装置、および、その記憶装置の制御方法
JP4497953B2 (ja) * 2004-02-25 2010-07-07 株式会社日立製作所 情報処理システム、および情報処理方法
JP2005250938A (ja) * 2004-03-05 2005-09-15 Hitachi Ltd 記憶制御システム及び方法
JP4147198B2 (ja) * 2004-03-23 2008-09-10 株式会社日立製作所 ストレージシステム
JP2006048313A (ja) * 2004-08-04 2006-02-16 Hitachi Ltd 複数の管理者から管理されるストレージシステムの管理方法
JP4640770B2 (ja) * 2004-10-15 2011-03-02 株式会社日立製作所 外部の装置に接続される制御装置
JP4824374B2 (ja) * 2005-09-20 2011-11-30 株式会社日立製作所 ディスクの回転を制御するシステム
JP2007087266A (ja) * 2005-09-26 2007-04-05 Hitachi Ltd ストレージシステムおよびストレージ装置
JP4742784B2 (ja) * 2005-09-28 2011-08-10 ブラザー工業株式会社 情報分配処理プログラム、情報処理装置、および情報分配処理システム
JP5068023B2 (ja) * 2006-03-29 2012-11-07 株式会社日立製作所 計算機システム及び論理パス切替方法
US7526668B2 (en) * 2006-06-08 2009-04-28 Hitachi, Ltd. Failover method of remotely-mirrored clustered file servers
JP5179031B2 (ja) * 2006-09-13 2013-04-10 株式会社日立製作所 空きポートを有効に活用したストレージシステム
JP2008134830A (ja) 2006-11-28 2008-06-12 Hitachi Ltd 節電機能と診断機能の両方を備えたストレージシステム
US9104323B2 (en) * 2007-08-16 2015-08-11 International Business Machines Corporation Apparatus and method for storage cluster control
JP2009157471A (ja) * 2007-12-25 2009-07-16 Hitachi Ltd ファイル共有システム及びファイル共有システムの設定方法
EP2180401A1 (en) 2008-10-24 2010-04-28 Thomson Telecom Belgium A method at a gateway for selecting and managing a default disk
US9838223B2 (en) * 2010-05-11 2017-12-05 Chepro Corporation Bidirectional communication system and server apparatus used therein
JP5663950B2 (ja) * 2010-05-19 2015-02-04 富士通株式会社 接続拡張装置及びストレージシステム
US8681606B2 (en) * 2011-08-30 2014-03-25 International Business Machines Corporation Implementing redundancy on infiniband (IB) networks
US8893269B1 (en) * 2012-09-28 2014-11-18 Emc Corporation Import authorities for backup system
US9317423B2 (en) * 2013-01-07 2016-04-19 Hitachi, Ltd. Storage system which realizes asynchronous remote copy using cache memory composed of flash memory, and control method thereof
US9063669B2 (en) 2013-04-09 2015-06-23 International Business Machines Corporation Self-detecting storage bottleneck while handling sequential I/O operations
KR101555197B1 (ko) * 2013-09-17 2015-10-06 삼성전자주식회사 의료 영상을 관리하는 방법 및 이를 위한 장치
JP6791834B2 (ja) 2017-11-30 2020-11-25 株式会社日立製作所 記憶システム及び制御ソフトウェア配置方法
US11151063B2 (en) * 2019-04-19 2021-10-19 EMC IP Holding Company LLC Host system directly connected to internal switching fabric of storage system
US10698613B1 (en) 2019-04-19 2020-06-30 EMC IP Holding Company LLC Host processing of I/O operations
US11500549B2 (en) 2019-04-19 2022-11-15 EMC IP Holding Company LLC Secure host access to storage system resources via storage system interface and internal switching fabric
US10740259B1 (en) 2019-04-19 2020-08-11 EMC IP Holding Company LLC Host mapping logical storage devices to physical storage devices
US10698844B1 (en) 2019-04-19 2020-06-30 EMC IP Holding Company LLC Intelligent external storage system interface

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5163131A (en) * 1989-09-08 1992-11-10 Auspex Systems, Inc. Parallel i/o network file server architecture
US6125428A (en) * 1997-02-28 2000-09-26 Matsushita Electric Industrial Co., Ltd. Apparatus for reproducing multimedia data, method for reproducing multimedia data, and record media containing multimedia data reproduction program
US6256740B1 (en) 1998-02-06 2001-07-03 Ncr Corporation Name service for multinode system segmented into I/O and compute nodes, generating guid at I/O node and exporting guid to compute nodes via interconnect fabric
WO2002037224A2 (en) 2000-11-02 2002-05-10 Pirus Networks Load balanced storage system
JP4478321B2 (ja) 2000-11-27 2010-06-09 富士通株式会社 ストレージシステム
US6606690B2 (en) * 2001-02-20 2003-08-12 Hewlett-Packard Development Company, L.P. System and method for accessing a storage area network as network attached storage
JP4156817B2 (ja) 2001-07-27 2008-09-24 株式会社日立製作所 記憶装置システム
US6839706B2 (en) 2001-08-06 2005-01-04 Lefthand Networks, Inc. Block data storage within a computer network
JP2003162439A (ja) 2001-11-22 2003-06-06 Hitachi Ltd ストレージシステム及びその制御方法
US7493404B2 (en) 2002-05-30 2009-02-17 Lsi Corporation Apparatus and method for providing transparent sharing of channel resources by multiple host machines utilizing mixed mode block and file protocols
US20030225734A1 (en) * 2002-06-04 2003-12-04 Evan Witt Interactive diagram in markup language page

Also Published As

Publication number Publication date
JP2005055970A (ja) 2005-03-03
US6950914B2 (en) 2005-09-27
EP1505788A2 (en) 2005-02-09
US20050033804A1 (en) 2005-02-10
EP1505788A3 (en) 2012-02-15
JP4297747B2 (ja) 2009-07-15

Similar Documents

Publication Publication Date Title
CN1581877A (zh) 存储系统
CN1633131A (zh) 一种iSCSI存储系统的实现方法
CN1308851C (zh) 数据处理系统中执行远程复制的方法和存储数据的方法
CN101042676A (zh) 存储系统以及存储区域释放方法以及存储装置
CN1469269A (zh) 多台网络存储器的虚拟一元化方法及装置
CN101064656A (zh) 存储集群系统、数据处理方法和程序
CN1684029A (zh) 存储系统
CN1724980A (zh) 存储系统
CN1722107A (zh) 计算机系统以及存储装置系统的迁移方法
CN1311328C (zh) 存储装置系统
CN1928840A (zh) 存储装置虚拟化装置的设备控制交接方法
CN1241134C (zh) 存储域管理系统
CN1679003A (zh) 启用远程直接存储器存取的网络接口控制器切换和切回支持
CN1608257A (zh) 包括相关矩阵和基于量度分析的聚集系统资源分析
CN1696913A (zh) 存储系统内的数据转移
CN1299207C (zh) San环境中基于网络的海量存储资源管理方法
CN1598753A (zh) 存储系统及存储控制装置
CN1453715A (zh) 拥有虚拟资源的存储系统
CN1869914A (zh) 存储系统及存储系统的运用方法
CN101051290A (zh) Gns中的目录单位迁移
CN1741005A (zh) 信息处理系统、信息处理方法和其使用的计算机程序
CN101042632A (zh) 控制物理链接分配的计算机系统及方法
CN1959618A (zh) 存储系统
JP4764701B2 (ja) ログ情報を管理する計算機システム及びログ情報の管理方法
CN1779660A (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20050216