CN101676856B - 虚拟存储*** - Google Patents

虚拟存储*** Download PDF

Info

Publication number
CN101676856B
CN101676856B CN2009102047478A CN200910204747A CN101676856B CN 101676856 B CN101676856 B CN 101676856B CN 2009102047478 A CN2009102047478 A CN 2009102047478A CN 200910204747 A CN200910204747 A CN 200910204747A CN 101676856 B CN101676856 B CN 101676856B
Authority
CN
China
Prior art keywords
storage system
instruction
function
storage
principal computer
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.)
Expired - Fee Related
Application number
CN2009102047478A
Other languages
English (en)
Other versions
CN101676856A (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 CN101676856A publication Critical patent/CN101676856A/zh
Application granted granted Critical
Publication of CN101676856B publication Critical patent/CN101676856B/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
    • 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/0662Virtualisation aspects
    • 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
    • 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/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种将多个存储***虚拟成逻辑上为一个存储资源而构成的虚拟存储***中,即使在各存储***具有的功能不同时,也对来自主计算机的指令进行适当地处理。虚拟存储***(100)包括:多个存储***(20);虚拟化装置(52),将多个存储***(20)虚拟成逻辑上为一个存储资源、并将该存储资源提供给主计算机(51)。在任意一个存储***(20)从主计算机(51)接收指令时,该存储***(20)在自身不具有与指令对应的功能的情况下,检索具有与指令对应的功能的存储***(20),并向具有与指令对应的功能的存储***(20)转发指令。

Description

虚拟存储***
本申请是2006年6月29日提出的、申请号为200610094308.2、名称为“虚拟存储***及其控制方法”的发明申请的分案申请。
技术领域
本发明涉及一种将多个存储***虚拟成逻辑上为一个存储资源而构成的虚拟存储***及其控制方法。
背景技术
在存储领域中,将分散于网络上的多个计算资源运用成如一个计算资源那样,来实现提高处理性能和耐故障性的“存储网格(storage grid)(广域宽带共享文件***)”正引人注目。作为存储网格的运用方法,公知有将多个存储***虚拟化成逻辑上为一个存储资源的方法。
作为对卷进行虚拟化的技术,公知有如下技术:在第一存储***内管理存在于第一存储***外部的第二存储***的逻辑单元(参照特开平7-210439号公报,特开2001-318833号公报,特开2003-8821号公报)。
【专利文献1】特开平7-210439号公报
【专利文献2】特开2001-318833号公报
【专利文献3】特开2003-8821号公报
在存储网格中,在构成逻辑上为一个存储资源的多个存储***中具有功能B的存储***从主计算机接收功能B的处理请求时,该存储***可以识别功能B的处理请求,并进行处理。
但是,通过存储网格虚拟成逻辑上为一个存储资源的各个存储***未必共享功能。例如,有时构成存储网格的多个存储***中只有一部分的存储***具有功能A。主计算机由于将多个存储***识别为如一个存储资源那样,因此有时向不具有功能A的存储***发送功能A的处理请求。在这种情况下,向主计算机返回指令错误,就不能适当地处理功能A的处理请求。
因此,本发明的课题在于提供一种将多个存储***虚拟成逻辑上为一个存储资源的虚拟存储***,即使在各存储***具有的功能不同时,也可以对来自主计算机的指令进行适当地处理。
发明内容
为了解决上述课题,本发明的虚拟存储***具有多个存储***、以及将多个存储***虚拟成逻辑上为一个存储资源并将该存储资源提供给主计算机的虚拟化层,本发明的虚拟存储***包括:存储单元,存储从主计算机发行的指令、与指令对应的功能、以及具有功能的存储***的对应关系;检索单元,从多个存储***中检索具有与指令对应的功能的存储***;以及转发单元,向具有与指令对应的功能的存储***转发指令。
根据本发明,提供了一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,所述虚拟存储***包括:存储单元,存储有对应关系,所述对应关系是关于从所述主计算机发行的指令、与所述指令对应的功能、以及具有所述功能的存储***之间的对应关系;检索单元,从所述多个存储***中检索具有与所述指令对应的功能的存储***;和指令重发行单元,向所述主计算机请求重发行所述指令,并通知以所述检索单元检索到的存储***。
根据本发明,提供了一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,所述虚拟存储***包括:存储单元,存储各存储***的规格信息;检索单元,从所述多个存储***中,检索低运转率的存储***;和转发单元,向所述低运转率的存储***转发从所述主计算机发行来的指令。
根据本发明,提供了一种虚拟存储***,具有:多个存储***;主计算机;将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层;和管理所述多个存储***的管理装置,所述虚拟存储***具有:存储单元,其存储指令-功能对应表和功能-装置对应表,其中的指令-功能对应表规定了从所述主计算机发行的指令和所述指令对应的功能之间的关系,功能-装置对应表规定了具有所述功能的存储***的对应关系;和检索单元,从所述多个存储***中检索具有与所述指令对应的功能的存储***,所述指令-功能对应表以及所述功能-装置对应表存储于所述存储***、所述管理装置、所述主计算机、所述虚拟化层的任意一个中。
根据本发明,提供了一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,各存储***包括:存储单元,存储有对应关系,所述对应关系是关于从所述主计算机发行的指令、与所述指令对应的功能、以及具有所述功能的存储***之间的对应关系;检索单元,在所述多个存储***中不具有远程拷贝功能的第一存储***从所述主计算机接收到远程拷贝请求时,所述第一存储***检索具有远程拷贝功能的第二存储***以及第三存储***;转发单元,从所述第一存储***向所述第二存储***以及第三存储***转发远程拷贝指令。
根据本发明,在将多个存储***虚拟成逻辑上为一个存储资源的虚拟存储***中,即使在各存储***具有的功能不同时,也可以对来自主计算机的指令进行适当地处理。
附图说明
图1是本实施方式的虚拟存储***的***结构图。
图2是同一设备对应表的说明图。
图3是在存储***的存储器内存储的各种程序以及表的说明图。
图4是指令功能对应表的说明图。
图5是功能-装置对应表的说明图。
图6是存储***具有的功能的说明图。
图7是存储***具有的功能的说明图。
图8是设备信息表的说明图。
图9是故障信息的说明图。
图10是表示一般的指令处理的流程图。
图11是表示虚拟存储***执行的指令管理的流程图。
图12是表示虚拟存储***执行的其他指令管理的流程图。
图13是表示主计算机执行的指令管理的流程图。
图14是表示虚拟化装置执行的指令管理的流程图。
图15是表示主服务处理器执行的指令管理的流程图。
图16是表示使用了指令设备的指令管理的流程图。
图17是表示通过主计算机再发行指令来进行指令管理的处理的流程图。
图18是表示在转发指令时产生故障时的处理的流程图。
图19是表示在转发指令时产生故障时的其他处理的流程图。
图20是表示虚拟存储***的负荷分散处理的流程图。
图21是规格(spec)信息的说明图。
图22是表示考虑了各存储***的性能差的指令处理的流程图。
图23是运转率信息的说明图。
图24是表示考虑了各存储***的运转率的指令处理的流程图。
图25是本实施方式的虚拟存储***的***结构图。
具体实施方式
图1表示本实施方式的虚拟存储***100的***结构。虚拟存储***100包括:多个存储***20A、20B、20C、以及外部存储***70。
一个或一个以上的主计算机51与各个存储***20A、20B、20C连接。具有虚拟化程序63的主计算机51经SAN(Storage Area Network)41与各个存储***20A、20B、20C连接,通过虚拟化程序63的功能将多个存储***20A、20B、20C识别为逻辑上为一个存储资源(以下,称为虚拟存储***100)。
不具有虚拟化程序63的其他主计算机51经SAN42、虚拟化装置52、以及SAN41与各个存储***20A、20B、20C连接,通过虚拟化装置52内的虚拟化程序63的功能将多个存储***20A、20B、20C识别为一个虚拟存储***100。
通过上述的结构,主计算机51可以将由多个存储***20A、20B、20C提供的存储区域识别为逻辑上为一个虚拟存储***100,并向虚拟存储***100进行访问。
虚拟化装置52将多个存储***20A、20B、20C分别提供的存储区域虚拟化成逻辑上为一个存储区域。虚拟化装置52例如是虚拟化交换机(switch)、智能交换机、或者虚拟化专用装置。此外,将包含虚拟存储***100以及虚拟化装置52而构成的***称为存储网络***。
主计算机51具有应用程序60和交替路径软件61。
应用程序60例如是数据库管理软件、Web应用软件、流(streaming)应用软件、E商务应用软件等业务软件。
交替路径软件61管理主计算机51与虚拟存储***100内的逻辑设备之间的逻辑路径,执行多路径控制。所谓多路径控制是对多个逻辑路径中使用哪个逻辑路径来访问逻辑设备进行控制。交替路径软件61具有多路径管理程序(图中未示)、框架间(inter-casing)多路径程序(图中未示)、优先控制程序(图中未示)、以及同一设备对应表62。
多路径管理程序对交替路径软件61整体进行管理和控制。
框架间多路径程序将经由多个存储***20与外部存储***70内的逻辑设备701连接的多个逻辑路径识别为多路径。
优先控制程序根据与同一逻辑设备连接的多个逻辑路径的各自的使用率,从多个逻辑路径中选择优先使用的逻辑路径。
同一设备对应表62,在不同的逻辑路径连接在同一逻辑设备的网络环境下,表示逻辑路径与逻辑设备的对应关系。
交替路径软件61不一定需要存储在主计算机51内,也可以存储在虚拟化装置52内。
在以下的说明中,在不特别区别存储***20A、20B、20C时,标记为存储***20。
存储***20包括:CPU(Central Processing Unit)21、存储器22、盘接口控制部23、盘单元24、FC(Fiber Channel)接口控制部25、26、以及LAN(Local Area Network)接口控制部27、28。
CPU21通过执行存储在存储器22中的各种程序或者模块,来执行存储***20中的各种控制处理。存储器22称为内部存储装置,包含:存储各种模块等的非易失性存储器、暂时地保存CPU21的运算处理结果的易失性存储器。
CPU21经盘接口控制部23与盘单元24连接。盘接口控制部23将从CPU21输出的逻辑地址转换成LBA(Logical Block Address),使能够通过CPU21向逻辑设备访问。
盘单元24具有RAID(Redundant Arrays of Independent Inexpensive Disks)构成的多个盘驱动器240。
盘驱动器240是FC(Fiber Channel)盘驱动器、SATA(Serial AdvancedTechnology Attachment)盘驱动器、PATA(Parallel Advanced TechnologyAttachment)盘驱动器、FATA(Fiber Attached Technology Adapted)盘驱动器、SAS(Serial Attached SCSI)盘驱动器或者SCSI(Small Computer SystemInterface)盘驱动器等物理设备。所谓的物理设备是具有实际存储区域的实际设备。
逻辑设备242是不具有实际存储区域的虚拟的设备,存储数据的实体的存储区域存在于外部存储***70内的逻辑设备701中。即存储***20将外部存储***70的逻辑设备701作为自己的内部设备来进行取入,并将其作为逻辑单元提供给主计算机51。在主计算机51是UNIX(注册商标)系的***时,逻辑单元与设备文件(Device File)对应。在主计算机51是Windows(注册商标)系的***时,逻辑单元与驱动器字母(驱动器名)对应。向逻辑单元分配LUN(Logical Unit Number)。对于将外部存储***70的逻辑设备701虚拟成如存储***20内部的设备那样的方法,公开在特开2005-107645号公报中。
指令设备243是用于在主计算机51和存储***20之间授受指令和状态(Status)的专用逻辑单元。从主计算机51向存储***20发送的指令被写入到指令设备243中。存储***20执行与在指令设备243中写入的指令对应的处理,并将其执行结果作为状态写入到指令设备243中。对于使用了指令设备243的指令管理将在后面进行叙述。
盘接口控制部23能够以RAID方式中规定的RAID等级(level)(例如0、1、5)来控制多个盘驱动器243。在RAID方式中,多个盘驱动器240作为一个RAID组而被管理。例如通过将4个盘驱动器240作为一组进行组化(3D+1P),或者将8个盘驱动器240作为一组进行组化(7D+1P)来构成RAID组。即多个盘驱动器240分别提供的存储区域进行集合构成一个RAID组。在RAID组上定义有多个逻辑设备241,该逻辑设备是来自主计算机51的访问单位。在作为主计算机51识别的逻辑存储区域的逻辑单元中,映射一个或一个以上的逻辑设备241。主计算机51通过指定LUN和LBA可以访问逻辑设备241。
此外,存储***20通过与外部存储***70连接,如果可以将外部存储***70的存储区域提供给主计算机51,就未必需要具备盘单元24和盘接口控制部23。
FC接口控制部25控制通过存储***20与外部存储***70之间的SAN43的数据和指令的转发。FC接口控制部26控制通过存储***20与主计算机51之间的SAN41的指令和数据的转发。经SAN41、43的数据通信协议是光纤通道协议或iSCSI等协议。此外,SAN43不是必须的,也可以用光纤电缆等直接连接FC接口控制部25和外部存储***70。
LAN接口控制部27经管理网络40与管理服务器50连接。管理网络40是由以太网(注册商标)电缆等构成的LAN。管理网络40中的数据通信协议是TCP/IP。管理服务器50管理虚拟存储***100内的逻辑单元的生成、向主计算机51的逻辑单元的分配、主计算机51与虚拟存储***100之间的访问路径的设定(LUN掩蔽(masking)、分区(zoning)等)等。
外部存储***70具有RAID构成的一个或一个以上的盘驱动器700。盘驱动器700是FC(Fiber Channel)盘驱动器、SATA(Serial Advanced TechnologyAttachment)盘驱动器、PATA(Parallel Advanced Technology Attachment)盘驱动器、FATA(Fiber Attached Technology Adapeted)盘驱动器、SAS(SerialAttached SCSI)盘驱动器或者SCSI(Small Computer System Interface)盘驱动器等存储设备。多个盘驱动器700上形成有逻辑设备701。
此外,外部存储***70也可以是与存储***20不同的机种,还可以是与存储***20相同的机种。
存储***20在从主计算机51接收访问请求时,判断该访问请求是向作为自己内部设备的逻辑设备241的访问请求还是向作为外部设备的逻辑设备701的访问请求,如果是向逻辑设备701的访问请求,则进行逻辑设备242与逻辑设备701之间的地址变换等,将向逻辑设备701的访问请求发送到外部存储***70。
服务处理器81是进行存储***20的构成信息(包含后述的设备信息表106、构成信息108)的设定、运转信息的取得等的计算机终端。服务处理器81与存储***20内的LAN接口控制部28连接。与各存储***20连接的各服务处理器81与一个主服务处理器82连接。主服务处理器82对从各服务处理器81收集到的信息(存储***20的构成信息、运转信息等)进行一维管理。另外,也可以将多个服务处理器81中的一个作为主服务处理器来发挥功能,或者还可以将各存储***20与主服务处理器82直接连接。
另外,虚拟存储***100通过在各存储***20间收发构成信息,来表示可以执行各存储***20间的指令转发、卷迁移的范围。在将外部存储***70连接到各存储***20时,虚拟存储***100的范围包含多个存储***20和外部存储***70。在将外部存储***70连接到各存储***20时,虚拟存储***100的范围包含多个存储***20,而不包含外部存储***70。
各存储***20,例如可以作为具有RAID构成的多个盘驱动器240的盘阵列***而构成,或者也可以作为各存储***20自己成为SCSI目标的虚拟化交换机而构成。存储***20可以另称为存储控制装置。
管理网络40与一个或者一个以上的主计算机51连接。此外,将一个或一个以上的客户端计算机30与管理网络40连接,各客户端计算机51经管理网络40与主计算机51连接,可以经应用程序60向虚拟存储***100请求数据输入输出。
图2表示同一设备对应表62。同一设备对应表62将“路径号码”、“存储***标识符”、“LUN”、以及“设备标识符”分别对应存储。
“路径号码”表示逻辑路径的号码。
“存储***标识符”表示用于在虚拟存储***100内唯一识别存储***20或者外部存储***70的信息。
“LUN”表示存储***20或者外部存储***70内的逻辑单元的号码。
“设备标识符”表示用于在虚拟存储***100内唯一识别逻辑设备241、242、701的信息。
路径号码0、2、3三个逻辑路径是经由不同的存储***20的路径,但是表示与同一逻辑设备连接。即使是同一逻辑设备,在每个存储***20中LUN也不同,这是因为采用主存储域。
此外,将同一设备对应表62保存在将多个存储***20虚拟化成一个虚拟存储***100的虚拟化层(在图1所示的例子中,主计算机51或虚拟化装置52)中。
图3表示在存储器22内存储的各种程序以及表。存储器22中存储有操作***101、功能注册程序102、功能-装置对应识别程序103、指令-功能对应表104、功能-装置对应表105、设备信息表106、故障信息107、以及构成信息108。
指令-功能对应表104保存从主计算机51发行的指令和与该指令对应的功能的对应关系。作为主计算机51向虚拟存储***100请求的“功能”的具体例子,例如有快照(snapshot)、复制(replication)、远程拷贝等。
功能注册程序102将指令与功能的对应关系注册到指令-功能对应表104中。
功能-装置对应表105保存主计算机51请求的功能与具有该功能的存储***20的对应关系。
功能-装置对应识别程序103将存储***20与功能的对应关系注册到功能-装置对应表105中。
设备信息表106保存逻辑设备的属性。
故障信息107保存各存储***20的故障信息。
构成信息108是表示外部存储***70内的逻辑设备701与各存储***20内的逻辑设备242的对应关系的映射信息。关于将外部设备映射到内部设备用的映射信息的详细情况,公开在特开2005-107645号公报中。
此外,在后述的指令管理中,可以检索从主计算机51发行的指令与哪个功能对应,或者具有该功能的存储***20是哪一个,如果可以将该指令转发到所检索到的存储***20中的话,虚拟存储***100未必以上述的表形式保存指令、功能、存储***20的对应关系。例如,也可以以目录结构或者其他形式保存指令、功能、存储***20的对应关系。
图4表示指令-功能对应表104。指令-功能对应表104保存从主计算机51向虚拟存储***100发行的指令和与该指令对应的功能的对应关系。例如,指令C001是向虚拟存储***100请求功能A的指令。
图5表示功能-装置对应表105。功能-装置对应表105保存主计算机51请求的功能和具有该功能的存储***20的对应关系。例如,存储***20A具有功能B。
例如,如图6所示,在虚拟存储***100由存储***20A和存储***20B构成时,在功能-装置对应表105中分别对应注册存储***20A和功能B、存储***20B和功能B,在指令-功能对应表104中对应注册指令C004和功能B。程序P4用于实现功能B。如图7所示,在向虚拟存储***100中新追加存储***20C时,在功能-装置对应表105中对应追加注册存储***20C和功能A,在指令-功能对应表104中对应追加注册指令C001、C002、C003和功能A。程序P3用于实现功能A。
考虑以下(1)~(6)的变更方法(variations),来作为虚拟存储***100保存指令-功能对应表104和功能-装置对应表105的方法。
(1)存储***20内的存储器22和管理服务器50分别保存指令-功能对应表104和功能-装置对应表105。
(2)管理服务器50保存指令-功能对应表104和功能-装置对应表105。
(3)主计算机51保存指令-功能对应表104和功能-装置对应表105。
(4)将多个存储***20虚拟化成一个虚拟存储***100的虚拟化层保存指令-功能对应表104和功能-装置对应表105。
(5)服务处理器81或者主服务处理器82保存指令-功能对应表104和功能-装置对应表105。
(6)指令设备243保存指令-功能对应表104和功能-装置对应表105。
图8表示设备信息表106。设备信息表106用于保存逻辑设备的属性,存储在存储***20内的存储器22中。设备信息表106分别对应保存“设备号码”、“状态标志”和“外部设备标志”。
“设备号码”是用于在存储***20内唯一识别逻辑设备241、242的信息。
“状态标志”表示处于使用存储***20内的逻辑设备241、242的状态、或者没有使用的状态(空闲状态)。图中的“ON”表示处于使用逻辑设备241、242的状态。
“外部设备标志”表示存储***20内的逻辑设备242是否处于作为外部设备(逻辑设备701)使用的状态。图中的“ON”表示逻辑设备242作为外部设备使用。“OFF”表示逻辑设备241作为内部设备使用。外部设备标志的默认值是“OFF”,在存储***20内的逻辑设备242映射到外部存储***70内的逻辑设备701时,“OFF”变更为“ON”。
图9表示故障信息107。故障信息107是表示各存储***20正常地发挥功能还是产生故障的信息。在本实施例中展示了如下例子,即在存储***20处于不能接收来自主计算机51的指令的状态时,判定成在存储***20中产生故障,但是也可以根据预先设定的故障等级来判定在存储***20中是否产生故障。用于故障判定的故障等级可以是用户输入,或者也可以是用户从向用户所提示的多个故障等级中选择的故障等级。各存储***20的存储器22和管理服务器50保存故障信息107。
参照图10对存储***20执行的一般的指令处理进行说明。
存储***20在从主计算机51接收指令时(S101),参照设备信息表106来判断接收访问请求的逻辑设备是否是外部设备(逻辑设备701)(S102)。
如果接收访问请求的逻辑设备是内部设备(逻辑设备241)的话(S102;NO),存储***20通过通常的动作访问内部设备(S103)。
如果接收访问请求的逻辑设备是外部设备(逻辑设备701)的话(S102;YES),存储***20向外部存储***70发送用于访问外部设备的指令(S104)。
接下来,参照图11对虚拟存储***100执行的指令管理进行说明。这里展示了如下例子:在从主计算机51接收到指令的存储***20不具有与该指令对应的功能时,检索具有该功能的存储***20,向检索到的存储***20转发指令。
此外,在图11的说明中,以以下的(1)~(2)为前提。
(1)各存储***20和管理服务器50分别保存指令-功能对应表104和功能-装置对应表105。
(2)向由具有功能B的存储***20A、20B构成的虚拟存储***100,新追加具有功能A的存储***20C。
进行向虚拟存储***100追加存储***20C的处理(S201)。即,将存储***20C连接到SAN41,由主计算机51和虚拟化装置52进行用于识别存储***20C的处理(例如,存储***20C的存储***标识符的识别、存储***20C内的逻辑单元的LUN的识别、与该逻辑单元连接的逻辑路径的路径号码的识别等)。在存储***20C共享外部存储***70的逻辑设备701时,也可以将存储***20C与SAN43连接。
接下来,管理服务器50识别向虚拟存储***100新追加存储***20C,同时识别存储***20C具有程序P3,向自身管理的指令-功能对应表104中追加注册功能A,同时向自身管理的功能-装置对应表105追加注册存储***20C(S202)。
存储***20C具有与功能A对应的程序P3这样的信息,可以通过从用户向管理服务器50的输入来取得,或者也可以在向主计算机51安装与程序P3对应的程序(向程序P3发送指令的程序)时,从该程序取得。
接下来,管理服务器50向各个存储***20A、20B通知向虚拟存储***100新追加了存储***20C具有的程序P3这一情况(S203)。作为向存储***20A、20B通知追加了新功能的方法,可以是管理服务器50向各个存储***20A、20B个别地进行通知的方法,或者也可以是管理服务器50向特定的存储***20进行通知,特定的存储***20向其他存储***20进行通知的方法。
其次,各个存储***20A、20B向在自身的存储器22内保存的功能-装置对应表105对应追加注册存储***20C和功能A,向指令-功能对应表104对应追加注册指令C001、C002、C003和功能A(S204)。
接下来,管理服务器50向存储***20C通知虚拟存储***100内已经存在的功能(程序)、与该功能对应的指令、以及与具有该功能的存储***20之间的对应关系(S205)。
其次,存储***20C根据从管理服务器50通知的信息(虚拟存储***100内已经存在的程序(功能)和具有该程序的存储***20的对应关系),向在自身的存储器22内保存的功能-装置对应表105中对应追加注册存储***20A、20B和功能B,向指令-功能对应表104中对应追加注册指令C004和功能B(S206)。
其次,主计算机51向虚拟存储***100发送与程序P3对应的指令C001(S207)。主计算机51由于不是在识别了各个存储***20A、20B、20C的基础上发送指令C001,就不知道存储***20A、20B、20C中的哪一个接收指令。这里,假设存储***20A接收到指令C001的情况来继续进行说明。
接下来,存储***20A在接收指令C001时,参照在自身的存储器22内保存的指令-功能对应表104和功能-装置对应表105,来检索指令C001与哪一个程序对应、具有该程序的存储***20是哪一个(S208)。
另外,假如存储***20C接收到指令C001的话,存储***20C实施后述的步骤S210、S212。
接着,存储***20A经SAN43向存储***20C转发指令C001(S209)。此时,在指令C001应该处理的实际数据存在于存储***20A中的情况下,存储***20A向存储***20C发送实际数据。实际数据的发送可以一次整体进行,也可以分成数次部分地发送。指令C001应该处理的实际数据存在于外部存储***70的逻辑设备701中时,将逻辑设备701的控制担当从存储***20A变更成存储***20C。
另外,存储***20A,保存将指令与转发目的地的存储***20对应的信息,作为指令转发的履历信息,在从主计算机51新接收到指令时,也可以参照该履历信息,向其他存储***20转发指令。
接下来,存储***20A向主计算机51报告正常地接收到指令(S210)。
其次,存储***20C在指令C001的处理结束了的阶段,向存储***20A进行结束报告(S211)。
从存储***20C接收到结束报告的存储***20A,向主计算机51报告指令C001的处理结束(S212)。
此外,作为在图11中表示的指令管理的其他方法,例如有如下方法:按照步骤S201、S202、S205、S206的顺序实施,存储***20C向存储***20A、20B通知新追加了程序P3和存储***20C,然后,实施步骤S204后,按照顺序实施S207~S212。
接下来,参照图12对虚拟存储***100执行的其他指令管理进行说明。这里,在从主计算机51接收到指令的存储***20不具有与该指令对应的功能时,向管理服务器50询问具有该功能的存储***20是哪一个。接收到询问的管理服务器50检索具有与该指令对应的功能的存储***20,并通知给询问目的地的存储***20。从管理服务器50接收到通知的存储***20向具有与该指令对应的功能的存储***20转发指令。
此外,在图12的说明中,以以下的(1)~(2)为前提。
(1)管理服务器50需要保存指令-功能对应表104和功能-装置对应表105,但是各存储***20不需要保存指令-功能对应表104和功能-装置对应表105。
(2)向由具有功能B的存储***20A、20B构成的虚拟存储***100,新追加具有功能A的存储***20C。
进行向虚拟存储***100追加存储***20C的处理(S301)。即,将存储***20C连接到SAN41,由主计算机51和虚拟化装置52进行用于识别存储***20C的处理(例如,存储***20C的存储***标识符的识别、存储***20C内的逻辑单元的LUN的识别、与该逻辑单元连接的逻辑路径的路径号码的识别等)。在存储***20C共享外部存储***70的逻辑设备701时,将存储***20C与SAN43连接就可以。
接下来,管理服务器50识别向虚拟存储***100新追加了存储***20C,同时识别存储***20C具有程序P3,向自身管理的指令-功能对应表104中追加注册功能A,同时向自身管理的功能-装置对应表105追加注册存储***20C(S302)。
接下来,主计算机51向虚拟存储***100发送与程序P3对应的指令C001(S303)。主计算机51由于不是在识别了各个存储***20A、20B、20C的基础上发送指令C001,就不知道存储***20A、20B、20C中的哪一个接收指令。这里,假设存储***20A接收到指令C001的情况来继续进行说明。
接下来,存储***20A在接收指令C001时,判断自身是否有能够执行指令C001的功能A。在本实施例中,存储***20A由于不具有能够执行指令C001的功能A,所以向管理服务器50询问具有能够执行指令C001的功能A的存储***20是哪一个(S304)。
另外,假如存储***20A具有能够执行指令C001的功能A的话,存储***20A实施后述的步骤S307、S309。
接收到询问的管理服务器50,参照自身管理的指令-功能对应表104和功能-装置对应表105,检索具有能够执行指令C001的功能A的存储***20C。(S305)
接着,管理服务器50向存储***20A通知具有能够执行指令C001的功能A的存储***20是存储***20C(S306)。
接着,存储***20A向存储***20C转发指令C001(S307)。此时,在指令C001应该处理的实际数据存在于存储***20A中的情况下,存储***20A向存储***20C发送实际数据。实际数据的发送可以一次整体进行,也可以分成数次部分地发送。在指令C001应该处理的实际数据存在于外部存储***70的逻辑设备701中时,将逻辑设备701的控制担当从存储***20A变更成存储***20C。
接下来,存储***20A向主计算机51报告正常地接收到指令(S308)。
其次,存储***20C在指令C001的处理结束了的阶段,向存储***20A进行结束报告(S309)。
从存储***20C接收到结束报告的存储***20A,向主计算机51报告指令C001的处理结束(S310)。
此外,图1的网络结构,是从主计算机51向各存储***20发行指令用的网络(SAN41、42)和管理服务器50在各存储***20之间收发管理信息用的网络(管理网络40)不同的带外(out band)方式,但是在本实施方式中也可以适用带内方式。例如,构成为管理服务器50经由SAN41在各存储***20之间收发管理信息的话,就是带内方式。
接着,参照图13对主计算机51执行的指令管理进行说明。这里,主计算机51保存有交替路径软件61、指令-功能对应表104和功能-装置对应表105,并掌握具有与指令对应的功能的存储***20、和从主计算机51向位于存储***20支配下的逻辑设备进行连接的逻辑路径。
主计算机51在发行指令时,通过参照指令-功能对应表104和功能-装置对应表105,来检索具有与该指令对应的功能的存储***20是哪一个(S401)。
接下来,主计算机51从位于检索到的存储***20支配下的逻辑设备中,选择经逻辑路径与主计算机51连接的逻辑设备,并发行指令(S402)。由此,主计算机51可以向具有与指令对应的功能的存储***20直接发行指令。
另外,主计算机51向位于存储***20支配下的所有的逻辑设备预先建立逻辑路径,也可以通过交替路径软件61来选择与逻辑设备连接的逻辑路径,并发送指令,该逻辑设备位于具有与指令对应的功能的存储***20支配下。
接着,参照图14对虚拟化装置52执行的指令管理进行说明。这里,虚拟化装置52保存有交替路径软件61、指令-功能对应表104和功能-装置对应表105,并掌握具有与指令对应的功能的存储***20、和从虚拟化装置52向位于存储***20支配下的逻辑设备进行连接的逻辑路径。
虚拟化装置52在从主计算机51接收到指令时,通过参照指令-功能对应表104和功能-装置对应表105,来检索具有与该指令对应的功能的存储***20是哪一个(S501)。
接下来,虚拟化装置52从位于检索到的存储***20支配下的逻辑设备中,选择经逻辑路径与虚拟化装置52连接的逻辑设备,并转发指令(S502)。由此,虚拟化装置52可以向具有与指令对应的功能的存储***20转发指令。
另外,虚拟化装置52向位于存储***20支配下的所有的逻辑设备预先建立逻辑路径,也可以通过交替路径软件61来选择与逻辑设备连接的逻辑路径,并转发指令,该逻辑设备位于具有与指令对应的功能的存储***20支配下。
如图14所示的指令管理也可以在将多个存储***20虚拟化成一个虚拟存储***100的虚拟化层中来执行。
接着,参照图15对主服务处理器82执行的指令管理进行说明。这里,在从主计算机51接收到指令的存储***20不具有与该指令对应的功能的情况下,向主服务处理器82询问具有该功能的存储***20是哪一个。接收到询问的主服务处理器82检索具有与该指令对应的功能的存储***20,并通知给询问目的地的存储***20。从主服务处理器82接收到通知的存储***20向具有与该指令对应的功能的存储***20转发指令。
此外,在图15的说明中,以以下的(1)~(2)为前提。
(1)主服务处理器82需要保存指令-功能对应表104和功能-装置对应表105,但是各存储***20不需要保存指令-功能对应表104和功能-装置对应表105。
(2)向由具有功能B的存储***20A、20B构成的虚拟存储***100,新追加具有功能A的存储***20C。
进行向虚拟存储***100追加存储***20C的处理(S601)。即,将存储***20C连接到SAN41,由主计算机51和虚拟化装置52进行用于识别存储***20C的处理(例如,存储***20C的存储***标识符的识别、存储***20C内的逻辑单元的LUN的识别、与该逻辑单元连接的逻辑路径的路径号码的识别等)。在存储***20C共享外部存储***70的逻辑设备701时,将存储***20C与SAN43连接就可以。
接下来,主服务处理器82识别向虚拟存储***100新追加了存储***20C,同时识别存储***20C具有程序P3,向自身管理的指令-功能对应表104中追加注册功能A,同时向自身管理的功能-装置对应表105追加注册存储***20C(S602)。
接下来,主计算机51向虚拟存储***100发送与程序P3对应的指令C001(S603)。主计算机51由于不是在识别了各个存储***20A、20B、20C的基础上发送指令C001,就不知道存储***20A、20B、20C中的哪一个接收指令。这里,假设存储***20A接收到指令C001的情况来继续进行说明。
接下来,存储***20A在接收指令C001时,判断自身是否有能够执行指令C001的功能A。在本实施例中,存储***20A由于不具有能够执行指令C001的功能A,所以向主服务处理器82询问具有能够执行指令C001的功能A的存储***20是哪一个(S604)。
另外,假如存储***20A具有能够执行指令C001的功能A的话,存储***20A实施后述的步骤S307、S309。
接收到询问的主服务处理器82,参照自身管理的指令-功能对应表104和功能-装置对应表105,检索具有能够执行指令C001的功能A的存储***20C。(S605)
接着,主服务处理器82向存储***20A通知具有能够执行指令C001的功能A的存储***20是存储***20C(S606)。
接着,存储***20A向存储***20C转发指令C001(S607)。此时,在指令C001应该处理的实际数据存在于存储***20A中的情况下,存储***20A向存储***20C发送实际数据。实际数据的发送可以一次整体进行,也可以分成数次部分地发送。在指令C001应该处理的实际数据存在于外部存储***70的逻辑设备701中时,将逻辑设备701的控制担当从存储***20A变更成存储***20C。
接下来,存储***20A向主计算机51报告正常地接收到指令(S608)。
其次,存储***20C在指令C001的处理结束了的阶段,向存储***20A进行结束报告(S609)。
从存储***20C接收到结束报告的存储***20A,向主计算机51报告指令C001的处理结束(S610)。
此外,在上述的说明中展示了主服务处理器82保存指令-功能对应表104和功能-装置对应表105,进行指令管理的例子,但是也可以是服务处理器81保存指令-功能对应表104和功能-装置对应表105,进行指令管理。服务处理器81由于与各个存储***20相连接,因此可以判断自身是否是具有与指令对应的功能的存储***20,但是不能判断其他的存储***20是否是具有与指令对应的功能的存储***20。对此,主服务处理器82由于能够管理所有的存储***20的功能,所以能够判断哪一个存储***20是具有与指令对应的功能的存储***20。
接着,参照图16对使用了指令设备243的指令管理进行说明。在各存储***20的存储器22或者指令设备243中存储有指令-功能对应表104和功能-装置对应表105。
主计算机51在存储***20A的指令设备243中写入指令C001(S701)。
存储***20A的CPU21在检测到指令设备243中写入了指令C001时,参照在存储器22或者指令设备243中存储的指令-功能对应表104和功能-装置对应表105,检索具有与指令C001对应的功能A的存储***20C(S702)。
检索的结果是,在判断为与指令C001对应的功能A不是自身的功能、而是其他存储***20C的功能时,存储***20A不向主计算机51返回指令C001,而是延长指令处理,向存储***20C的指令设备243转发指令C001(S703)。
另外,在将存储***20A的指令设备243接收到的指令转发到存储***20C时,以指令设备243接收到的方式向存储***20C的指令设备243转发。此时,有存储***20A检测存储***20C的指令设备243的方法。或者,在存储***20C中没有指令设备243时,也可以将指令形式变换成存储***20C可以识别的形式,然后从存储***20A向存储***20C转发指令。
接下来,参照图17对主计算机51通过重发行指令来进行指令管理的处理进行说明。存储***20A在从主计算机51接收到指令时,检索具有与指令对应的功能的存储***20(图11:S208)。然后存储***20A向主计算机51请求指令的重发行,同时向主计算机51通知具有与指令对应的功能的存储***20是哪一个。接收到指令重发行请求的主计算机51向具有与指令对应的功能的存储***重发行指令。
主计算机51向存储***20A发行指令C001(S801)。
其次,存储***20A参照自身管理的指令-功能对应表104和功能-装置对应表105,来检索具有与指令C001对应的功能A的存储***20C(S802)。
存储***20A向主计算机51请求指令C001的重发行,同时向主计算机51通知具有与指令C001对应的功能A的存储***20是存储***20C(S803)。
主计算机51从存储***20A接收指令重发行请求和具有与指令C001对应的功能A的存储***20是存储***20C这样的通知(S804)。
接下来,主计算机51向存储***20C重发行指令C001(S805)。此时,在指令C001应该处理的实际数据存在于存储***20A中的情况下,存储***20A向存储***20C发送实际数据。实际数据的发送可以一次整体进行,也可以分成数次部分地发送。指令C001应该处理的实际数据存在于外部存储***70的逻辑设备701中时,将逻辑设备701的控制担当从存储***20A变更成存储***20C。
此外,在上述说明中展示了存储***20A检索具有与主计算机51所发行的指令对应的功能的存储***20是哪一个的例子,但是也可以管理服务器50或者主服务处理器82检索,再向主计算机51通知指令重发行请求和检索结果。
另外,在图17的处理中,未必需要指令重发请求。主计算机51也可以在从存储***20A接收到具有与指令C001对应的功能A的存储***20是存储***20C这一通知的阶段中向存储***20C重发行指令C001。
再有,在图11至图17中所示的各处理中,在具有与主计算机51所发行的指令对应的功能的存储***20存在多个的情况下,适合于向运转率(占用率)低的存储***20、与业务有关联的存储***20、或者上次所没有选择的存储***20等进行指令转发。
另外,在上述的说明中,假定了是用一个存储***20来实现与指令对应的功能的情况,但是在用两个或者两个以上的存储***20来实现与指令对应的功能的情况下本实施方式也是能够适用的。例如,为了执行远程拷贝,就需要本地站点(拷贝源)的存储***20和远程站点(拷贝目的地)的存储***20搭载有远程拷贝功能。例如,在不具有远程拷贝功能的存储***20C接收到远程拷贝请求时,也可以存储***20C检索具有远程拷贝功能的存储***20A、20B,从存储***20C向存储***20A、20B转发远程拷贝指令,在存储***20A和存储***20B之间执行远程拷贝。
接着,参照图18对用图11至图16的方法转发指令的时候产生故障时的处理进行说明。这里,以如下情况为例进行说明:在存储***20C产生故障,在从存储***20C向管理服务器50通知故障报告之后(即,在主计算机51和存储***20A都还没有识别存储***20C的故障时),主计算机51向存储***20A发行指令C001。
在存储***20C中产生故障时,存储***20C向管理服务器50进行故障报告(S901)。
接着,主计算机51在识别存储***20C的故障之前,向存储***20A发行指令C001(S902)。
然后,存储***20A参照自身管理的指令-功能对应表104和功能-装置对应表105,检索具有与指令C001对应的功能A的存储***20C(S903)。
接下来,存储***20A向存储***20A转发指令C001(S904)。
但是,由于存储***20C处于故障中,所以从存储***20C向存储***20A返回错误(S905)。
存储***20A通过从存储***20C接收错误报告,识别存储***20C处于故障中,将故障信息107的存储***20C的“状态”更新为“故障”(S906)。
如果还存在其他具有与指令C001对应的功能A的存储***20的话(S907;YES),存储***20A返回到步骤S903的处理。
另一方面,如果不存在其他具有与指令C001对应的功能A的存储***20的话(S907;NO),存储***20A向主计算机51报告错误(S908)。
接着,存储***20A向管理服务器51报告存储***20C的故障(S909)。管理服务器51在接收到来自存储***20A的故障报告时,将自身管理的故障信息107的存储***20C的“状态”更新为“故障”。
接下来,参照图19对用图11至图16的方法转发指令的时候产生故障时的其他处理进行说明。这里,以如下情况为例进行说明:在存储***20C产生故障,在从存储***20C向管理服务器50通知故障报告,再从管理服务器51向各存储***20通知故障报告之后(即,在各存储***20识别存储***20C的故障时),主计算机51向存储***20A发行指令C001。
在存储***20C中产生故障时,存储***20C向管理服务器50进行故障报告(S1001)。
接着,管理服务器50向虚拟存储***100内的所有存储***20通知存储***20C的故障(S1002)。
各存储***20通过来自管理服务器50的通知,识别存储***20C处于故障中,将故障信息107的存储***20C的“状态”更新为“故障”(S1003)。
接着,主计算机51在识别存储***20C的故障之前,向存储***20A发行指令C001(S1004)。
然后,存储***20A参照自身管理的指令-功能对应表104和功能-装置对应表105,检索具有与指令C001对应的功能A的存储***20C,还参照故障信息107识别存储***20C处于故障中(S1005)。
存储***20A向主计算机51报告错误(S1006)。
此外,在步骤S1005中,在具有与指令C001对应的功能A的存储***20存在多个的情况下,存储***20A也可以向正常运转的存储***20转发指令C001。
接着,参照图20对虚拟存储***100内的负荷分散进行说明。这里展示了如下情况:在虚拟存储***100内的多个存储***20中存储***20C的负荷较大。
管理服务器50从虚拟存储***100内的各存储***20取得负荷信息,识别负荷集中在存储***20C中(S1101)。作为负荷信息,有各存储***20的资源运转率、占有率等。
接着,管理服务器50向存储***20C通知负荷集中在存储***20C中(S1102)。
然后,存储***20C选择不使用仅安装在存储***20C中的程序P3的逻辑设备(以下,称为转移候补逻辑设备),作为转移候补的逻辑设备(S1103)。将不使用仅安装在存储***20C的程序P3的逻辑设备选择为转移候补逻辑设备是由于,在向仅安装在存储***20C的程序P3的负荷较大时,即使将使用程序P3的逻辑设备选择为转移候补逻辑设备,也不会发生负荷分散的缘故。
然后,存储***20C向管理服务器50通知对转移候补逻辑设备进行转移(S1104)。
接下来,管理服务器50参照各存储***20的资源运转率来确定转移候补逻辑设备的转移目的地存储***20(S1105)。这里,示例了将存储***20A选择为转移目的地存储***20的情况。
然后,管理服务器50在指定了转移目的地存储***20A的基础上,向存储***20C发送转移候补逻辑设备的转移指示(S1106)。
接着,存储***20C按照来自管理服务器50的指示,将转移候补逻辑设备向转移目的地存储***20A转移(S1107)。
此外,关于选择哪一个存储***20作为转移目的地存储***20,可以***管理者经由服务处理器81向存储***20C输入,或者也可以主计算机51向存储***20C给予指示。
接下来,参照图21至图22对考虑了构成虚拟存储***100的多个存储***20的性能差后的指令处理进行说明。在构成虚拟存储***100的多个存储***20中存在性能差时,通过使高性能存储***处理较多的I/O请求,可以提高虚拟存储***100整体的处理性能。
图21表示规格信息109。规格信息109包含各存储***20A、20B、20C的处理器性能、端口性能、高速缓冲存储器容量等。规格信息109被存储在各存储***20的存储器22、管理服务器50、主服务处理器82、或者服务处理器81等中。
接着,参照图2对考虑了多个存储***20的性能差的指令处理进行说明。这里,示例了各存储***20保存规格信息109的情况。
存储***20A在从主计算机51接收指令时(S1201),参照规格信息109从虚拟存储***100中检索高性能存储***(S1202)。这里,示例了存储***20C是高性能存储***的情况。
存储***20A向存储***20C转发来自主计算机51的指令(S1203)。通过使高性能存储***处理较多的指令,可以提高虚拟存储***100整体的处理性能。最好是,例如,对于通常的主访问(host access),使高性能存储***20C尽可能多进行处理,另一方面,对于拷贝等I/O处理,使其他的存储***20A(不需要高性能)进行处理。
用根据高性能存储***20C与其他存储***20A的性能差所分配的比率,来决定使高性能存储***20C和其他存储***20A分别进行何种程度的I/O请求处理是比较合适的。例如,如果高性能存储***20C的高速缓冲存储器容量是其他存储***20A的高速缓冲存储器容量的2倍的话,使高性能存储***20C的I/O处理数量为其他存储***20A的I/O处理数量的2倍左右。
接着,参照图23至图24对考虑了构成虚拟存储***100的多个存储***20的运转率差的指令处理进行说明。在构成虚拟存储***100的多个存储***20中存在运转率差时,通过使低运转率存储***20处理较多的I/O请求,可以提高虚拟存储***100整体的处理性能。
图23表示运转率信息110。运转率信息110包含各存储***20A、20B、20C的运转率(CPU22的处理器使用率、CPU22的每单位时间的I/O处理次数(IOPS)、接口控制部26的每单位时间的数据转发量(转发速率)、存储***20从主计算机51接收I/O请求直到应答的时间(应答时间)等)。运转率信息110被存储在各存储***20的存储器22、管理服务器50、主服务处理器82、或者服务处理器81等中。
接着,参照图24对考虑了多个存储***20的运转率差的指令处理进行说明。这里,示例了各存储***20保存运转率信息110的情况。
存储***20A在从主计算机51接收指令时(S1301),参照运转率信息110,从虚拟存储***100中检索低运转率存储***20(S1302)。这里,示例了存储***20C的运转率较低的情况。
存储***20A向存储***20C转发来自主计算机51的指令(S1303)。通过使低运转率存储***20C处理较多的指令,可以提高虚拟存储***100整体的处理性能。例如,最好是,对于通常的主访问,使低运转率存储***20C尽可能多进行处理,另一方面对于拷贝等I/O处理,使其他的存储***20A(不需要低运转率)进行处理。
用根据低运转率存储***20C与其他存储***20A的运转率差所分配的比率等,来决定使低运转率存储***20C和其他存储***20A分别处理何种程度的I/O请求是比较合适的。例如,如果存储***20C的运转率是其他存储***20A的运转率的1/2的话,就使存储***20C的I/O处理数量为其他存储***20A的I/O处理数量的2倍左右。
另外,在实施考虑了存储***20的性能差的指令处理(图22)或者考虑了存储***20的运转率差的指令处理(图24)的基础上,如果存储***20C处理存储***20A应该处理的I/O请求的话,将存储实际数据的逻辑设备从存储***20A转移至存储***20C,从主计算机51向存储***20C直接发行I/O请求就可以。如果在外部存储***70中存储有实际数据的情况下,将外部存储***70的控制担当从存储***20A切换至存储***20C就可以。
此外,“检索高性能存储***的主体”或者“检索低运转率存储***的主体”,不局限于各存储***20,例如也可以是管理服务器50、服务处理器81、主服务处理器82、主计算机51、或者虚拟化装置52。即,在从主计算机51接收到指令的存储***20A向存储***20C转发指令时的处理过程,在上述的图11至图20的处理中,以将“具有与指令对应的功能的存储***的检索”置换成“高性能存储***的检索”或者“低运转率存储***的检索”这一方式为基准也是可以的。
图25表示虚拟存储***101的***结构。与图1所述的符号相同符号的装置等表示相同的装置等,省略详细的说明。虚拟存储***101是将多个存储***20A、20B、20C虚拟成一个存储***101而构成的。与图1所示的虚拟存储***100的不同点在于,虚拟存储***101不具有外部存储***70。即,各存储***20具有存储实际数据的实际设备。在虚拟存储***101中也可以进行上述的指令管理和故障处理等处理(图11至图22所示的处理)。
根据本实施方式,在将多个存储***20虚拟成逻辑上为一个存储资源而构成的虚拟存储***100、101中,即使在各存储***20所具有的功能不同的情况下,也可以适当地处理来自主计算机51的指令。此外,作为存储***20,即使在新旧机种混杂在一起、各存储***20的功能不同的情况下,作为虚拟存储***100、101整体,也能够共享各存储***20的功能。

Claims (12)

1.一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,
所述虚拟存储***包括:
存储单元,存储有对应关系,所述对应关系是关于从所述主计算机发行的指令、与所述指令对应的功能、以及具有所述功能的存储***之间的对应关系;
检索单元,从所述多个存储***中检索具有与所述指令对应的功能的存储***;和
指令重发行单元,向所述主计算机请求重发行所述指令,并通知给所述检索单元检索到的存储***。
2.根据权利要求1所述的虚拟存储***,其中,
所述检索单元在自身不具有与从所述主计算机接收到的指令对应的功能时,从所述多个存储***中检索具有与所述指令对应的功能的存储***。
3.根据权利要求2所述的虚拟存储***,其中,
所述存储单元使用用于在所述主计算机和所述多个存储***之间授受指令和状态的专用逻辑单元。
4.根据权利要求2所述的虚拟存储***,其中,
所述存储单元存储各存储***的故障信息;
所述检索单元,当在具有与所述指令对应的功能的存储***中产生故障时,检索具有与所述指令对应的功能的其他存储***。
5.根据权利要求4所述的虚拟存储***,其中,
各存储***还具有报告单元,其在具有与所述指令对应的功能的其他存储***不存在时,向所述主计算机报告错误。
6.根据权利要求1所述的虚拟存储***,其中,
具有为使各存储***的负荷大致均等而在各存储***间使逻辑设备移动的单元,
使用各存储***的资源运转率或者占有率来作为所述负荷的信息。
7.根据权利要求1所述的虚拟存储***,其中,
还具有存储各存储***管理的实际数据的外部存储***,
将该外部存储***的控制担当切换至所述检索单元检索到的存储***。
8.一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,
所述虚拟存储***包括:
存储单元,存储有对应关系,所述对应关系是关于从所述主计算机发行的指令、与所述指令对应的功能、以及具有所述功能的存储***之间的对应关系;
检索单元,从所述多个存储***中,检索低运转率的存储***;和
转发单元,向所述低运转率的存储***转发从所述主计算机发行来的指令。
9.一种虚拟存储***,具有:多个存储***;将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,
所述虚拟存储***具有:
存储单元,其存储指令-功能对应表和功能-装置对应表,其中的指令-功能对应表规定了从主计算机发行的指令和所述指令对应的功能之间的关系,功能-装置对应表规定了所述功能和具有所述功能的存储***之间的对应关系;和
检索单元,从所述多个存储***中检索具有与所述指令对应的功能的存储***,
所述指令-功能对应表以及所述功能-装置对应表存储于所述存储***、用于管理所述多个存储***的管理装置、所述主计算机、所述虚拟化层的任意一个中。
10.根据权利要求9所述的虚拟存储***,其中,
所述存储***与服务处理器相连接,并且所述服务处理器用于进行所述存储***的构成信息的设定以及运转信息的取得,
所述服务处理器具有主服务处理器,所述主服务处理器对从所述服务处理器收集到的信息进行一维管理,
所述指令-功能对应表以及所述功能-装置对应表存储于所述服务处理器或者所述主服务处理器中。
11.根据权利要求9所述的虚拟存储***,其中,
所述存储单元使用用于在所述主计算机和所述多个存储***之间授受指令和状态的专用逻辑单元。
12.一种虚拟存储***,具有:多个存储***;和将所述多个存储***虚拟化成逻辑上为一个存储资源、并将所述存储资源提供给主计算机的虚拟化层,
各存储***包括:
存储单元,存储有对应关系,所述对应关系是关于从所述主计算机发行的指令、与所述指令对应的功能、以及具有所述功能的存储***之间的对应关系;
检索单元,在所述多个存储***中不具有远程拷贝功能的第一存储***从所述主计算机接收到远程拷贝请求时,所述第一存储***检索具有远程拷贝功能的第二存储***以及第三存储***;
转发单元,从所述第一存储***向所述第二存储***以及第三存储***转发远程拷贝指令。
CN2009102047478A 2006-02-13 2006-06-29 虚拟存储*** Expired - Fee Related CN101676856B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006-034882 2006-02-13
JP2006034882A JP4800059B2 (ja) 2006-02-13 2006-02-13 仮想ストレージシステム及びその制御方法
JP2006034882 2006-02-13

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100943082A Division CN100565440C (zh) 2006-02-13 2006-06-29 虚拟存储***及其控制方法

Publications (2)

Publication Number Publication Date
CN101676856A CN101676856A (zh) 2010-03-24
CN101676856B true CN101676856B (zh) 2012-09-26

Family

ID=37969804

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2009102047478A Expired - Fee Related CN101676856B (zh) 2006-02-13 2006-06-29 虚拟存储***
CNB2006100943082A Expired - Fee Related CN100565440C (zh) 2006-02-13 2006-06-29 虚拟存储***及其控制方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB2006100943082A Expired - Fee Related CN100565440C (zh) 2006-02-13 2006-06-29 虚拟存储***及其控制方法

Country Status (4)

Country Link
US (3) US7711908B2 (zh)
EP (1) EP1821186B1 (zh)
JP (1) JP4800059B2 (zh)
CN (2) CN101676856B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4863605B2 (ja) * 2004-04-09 2012-01-25 株式会社日立製作所 記憶制御システム及び方法
JP4800059B2 (ja) 2006-02-13 2011-10-26 株式会社日立製作所 仮想ストレージシステム及びその制御方法
CN100423491C (zh) * 2006-03-08 2008-10-01 杭州华三通信技术有限公司 虚拟化网络存储***及其网络存储设备
JP5124103B2 (ja) 2006-05-16 2013-01-23 株式会社日立製作所 計算機システム
JP5288875B2 (ja) 2008-05-02 2013-09-11 株式会社日立製作所 ストレージシステム
US8321878B2 (en) * 2008-10-09 2012-11-27 Microsoft Corporation Virtualized storage assignment method
US8239938B2 (en) * 2008-12-08 2012-08-07 Nvidia Corporation Centralized device virtualization layer for heterogeneous processing units
JP2010205208A (ja) * 2009-03-06 2010-09-16 Nec Corp ホストコンピュータ、マルチパスシステム、パス割当方法およびプログラム
JP5421201B2 (ja) * 2010-07-20 2014-02-19 株式会社日立製作所 計算機システムを管理する管理システム及び管理方法
US8645653B2 (en) 2010-10-14 2014-02-04 Hitachi, Ltd Data migration system and data migration method
JP5668982B2 (ja) * 2011-03-31 2015-02-12 日本電気株式会社 ストレージシステム、アクセスパス状態更新方法およびアクセスパス状態更新プログラム
US9348513B2 (en) 2011-07-27 2016-05-24 Hewlett Packard Enterprise Development Lp SAS virtual tape drive
US9240985B1 (en) * 2012-08-16 2016-01-19 Netapp, Inc. Method and system for managing access to storage space in storage systems
JP2015532734A (ja) * 2012-10-03 2015-11-12 株式会社日立製作所 物理ストレージシステムを管理する管理システム、物理ストレージシステムのリソース移行先を決定する方法及び記憶媒体
US9052839B2 (en) * 2013-01-11 2015-06-09 Hitachi, Ltd. Virtual storage apparatus providing a plurality of real storage apparatuses
US9477426B2 (en) 2013-10-01 2016-10-25 Hitachi, Ltd. Storage system and storage method
MY187928A (en) * 2014-08-29 2021-10-29 Tokuyama Corp Process for producing silicon single crystal
TWI525432B (zh) * 2015-02-17 2016-03-11 緯創資通股份有限公司 儲存方法及軟體定義儲存系統
CN106648450B (zh) * 2015-11-04 2019-02-19 南京壹进制信息技术股份有限公司 一种数据安全存储的实现方法
US10496531B1 (en) * 2017-04-27 2019-12-03 EMC IP Holding Company LLC Optimizing virtual storage groups by determining and optimizing associations between virtual devices and physical devices
US10579277B1 (en) * 2017-10-27 2020-03-03 EMC IP Holding Company LLC Non-disruptive insertion of virtualized storage appliance
CN108038168A (zh) * 2017-12-07 2018-05-15 中国南方航空股份有限公司 数据外存储方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1568512A (zh) * 2001-09-10 2005-01-19 国际商业机器公司 自动数据存储库中的数据存储驱动器

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5454102A (en) * 1993-01-19 1995-09-26 Canon Information Systems, Inc. Method and apparatus for transferring structured data using a self-generating node network
US5619690A (en) * 1993-06-21 1997-04-08 Hitachi, Ltd. Computer system including a computer which requests an access to a logical address in a secondary storage system with specification of a local address in the secondary storage system
JPH07210439A (ja) 1993-12-03 1995-08-11 Hitachi Ltd 記憶装置
JPH09297660A (ja) * 1996-05-07 1997-11-18 Nippon Telegr & Teleph Corp <Ntt> マルチメディアサービス用コンテンツ管理方法及びシステム
JP2000112666A (ja) * 1998-10-01 2000-04-21 Hitachi Ltd ディスク制御装置
US6457098B1 (en) * 1998-12-23 2002-09-24 Lsi Logic Corporation Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US20030188045A1 (en) 2000-04-13 2003-10-02 Jacobson Michael B. System and method for distributing storage controller tasks
JP2001318833A (ja) 2000-05-09 2001-11-16 Hitachi Ltd ボリューム複製機能を有する記憶装置サブシステム、および、それを用いたコンピュータシステム
JP4478321B2 (ja) * 2000-11-27 2010-06-09 富士通株式会社 ストレージシステム
US20020065913A1 (en) 2000-11-29 2002-05-30 Harrington Gregory Lee Network password reset system
US7243229B2 (en) * 2001-10-02 2007-07-10 Hitachi, Ltd. Exclusive access control apparatus and method
US7024427B2 (en) * 2001-12-19 2006-04-04 Emc Corporation Virtual file system
JP2003242097A (ja) * 2002-02-15 2003-08-29 Hitachi Ltd クロスコール機能を備えるディスク制御装置
JP2003296037A (ja) * 2002-04-05 2003-10-17 Hitachi Ltd 計算機システム
JP2003316522A (ja) 2002-04-26 2003-11-07 Hitachi Ltd 計算機システムおよび計算機システムの制御方法
US7379990B2 (en) * 2002-08-12 2008-05-27 Tsao Sheng Ted Tai Distributed virtual SAN
JP4341897B2 (ja) 2002-08-29 2009-10-14 株式会社日立製作所 記憶装置システム及びデータ複製方法
US7379959B2 (en) * 2002-09-07 2008-05-27 Appistry, Inc. Processing information using a hive of computing engines including request handlers and process handlers
US20040059735A1 (en) * 2002-09-10 2004-03-25 Gold Russell Eliot Systems and methods for enabling failover in a distributed-object computing environment
JP4230189B2 (ja) * 2002-10-03 2009-02-25 株式会社日立製作所 ディスクアレイ装置、及びその電源供給方法
US7263593B2 (en) 2002-11-25 2007-08-28 Hitachi, Ltd. Virtualization controller and data transfer control method
JP4606711B2 (ja) * 2002-11-25 2011-01-05 株式会社日立製作所 仮想化制御装置およびデータ移行制御方法
US7162575B2 (en) * 2002-12-20 2007-01-09 Veritas Operating Corporation Adaptive implementation of requested capabilities for a logical volume
JP2004220450A (ja) 2003-01-16 2004-08-05 Hitachi Ltd ストレージ装置、その導入方法、及びその導入プログラム
US7606239B2 (en) * 2003-01-31 2009-10-20 Brocade Communications Systems, Inc. Method and apparatus for providing virtual ports with attached virtual devices in a storage area network
US7302500B2 (en) * 2003-04-30 2007-11-27 Dynamic Network Factory, Inc. Apparatus and method for packet based storage virtualization
JP2004334574A (ja) * 2003-05-08 2004-11-25 Hitachi Ltd ストレージの運用管理プログラム、運用管理方法及び管理計算機
JP4386694B2 (ja) * 2003-09-16 2009-12-16 株式会社日立製作所 記憶システム及び記憶制御装置
JP4307202B2 (ja) 2003-09-29 2009-08-05 株式会社日立製作所 記憶システム及び記憶制御装置
US7487308B1 (en) * 2003-11-28 2009-02-03 Symantec Operating Corporation Identification for reservation of replacement storage devices for a logical volume to satisfy its intent
JP4391265B2 (ja) 2004-02-26 2009-12-24 株式会社日立製作所 ストレージサブシステムおよび性能チューニング方法
JP2005258850A (ja) 2004-03-12 2005-09-22 Hitachi Ltd 計算機システム
JP2005266933A (ja) 2004-03-16 2005-09-29 Fujitsu Ltd ストレージ管理システム及びストレージ管理方法
US7096325B2 (en) 2004-03-29 2006-08-22 Hitachi, Ltd. Method and apparatus for multistage volume locking
WO2005099201A2 (en) 2004-04-03 2005-10-20 Troika Networks, Inc. System and method of providing network node services
US20050262296A1 (en) * 2004-05-20 2005-11-24 International Business Machines (Ibm) Corporation Selective dual copy control of data storage and copying in a peer-to-peer virtual tape server system
US7131027B2 (en) * 2004-07-09 2006-10-31 Hitachi, Ltd. Method and apparatus for disk array based I/O routing and multi-layered external storage linkage
JP4225252B2 (ja) 2004-07-30 2009-02-18 サンスター技研株式会社 靴底補修剤
US7702851B2 (en) 2005-09-20 2010-04-20 Hitachi, Ltd. Logical volume transfer method and storage network system
JP4800059B2 (ja) * 2006-02-13 2011-10-26 株式会社日立製作所 仮想ストレージシステム及びその制御方法
US7801993B2 (en) * 2007-07-19 2010-09-21 Hitachi, Ltd. Method and apparatus for storage-service-provider-aware storage system
JP4961319B2 (ja) * 2007-10-11 2012-06-27 株式会社日立製作所 仮想ボリュームにおける仮想領域に動的に実領域を割り当てるストレージシステム
JP4958739B2 (ja) * 2007-11-09 2012-06-20 株式会社日立製作所 障害の発生した記憶装置に記憶されているデータを修復するストレージシステム
JP5091704B2 (ja) * 2008-02-06 2012-12-05 株式会社日立製作所 ストレージ構成回復方法及びストレージ管理システム
US7801998B2 (en) 2008-10-03 2010-09-21 Canon Kabushiki Kaisha Establishing and maintaining a connection by a client to a server within a network
EP2399190B1 (en) * 2009-02-20 2018-06-06 Hitachi, Ltd. Storage system and method for operating storage system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1568512A (zh) * 2001-09-10 2005-01-19 国际商业机器公司 自动数据存储库中的数据存储驱动器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2005-222123A 2005.08.18

Also Published As

Publication number Publication date
JP4800059B2 (ja) 2011-10-26
US8161239B2 (en) 2012-04-17
CN100565440C (zh) 2009-12-02
EP1821186B1 (en) 2014-11-12
US20100180078A1 (en) 2010-07-15
EP1821186A2 (en) 2007-08-22
JP2007213466A (ja) 2007-08-23
US8595436B2 (en) 2013-11-26
CN101021768A (zh) 2007-08-22
US7711908B2 (en) 2010-05-04
CN101676856A (zh) 2010-03-24
EP1821186A3 (en) 2009-08-19
US20070192561A1 (en) 2007-08-16
US20120151160A1 (en) 2012-06-14

Similar Documents

Publication Publication Date Title
CN101676856B (zh) 虚拟存储***
CN102469025B (zh) 多存储***上的多路径交换
CN101799743B (zh) 用于逻辑卷管理的方法和装置
JP4963892B2 (ja) 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置
US20200125454A1 (en) Methods for managing clusters of a storage system using a cloud resident orchestrator and devices thereof
US8261125B2 (en) Global write-log device for managing write logs of nodes of a cluster storage system
CN101582915B (zh) 存储***以及使用管理装置的存储***的管理方法
JP4310070B2 (ja) ストレージシステムの運用管理方式
US20130198476A1 (en) Management system of information memory system and management method thereof
US11860791B2 (en) Methods for managing input-output operations in zone translation layer architecture and devices thereof
CN101506779A (zh) 生成存储***命令
JP2011054152A (ja) Scsii/oリファーラルを利用したイニシエータ及びストレージクラスタ間の通信方法及びシステム
US20060190550A1 (en) Storage system and controlling method thereof, and device and recording medium in storage system
US7716440B2 (en) Storage system and management method thereof
JP2008269469A (ja) ストレージシステム及びその管理方法
CN105635310B (zh) 一种存储资源的访问方法及装置
US9037900B2 (en) Small computer system interface input output (SCSI IO) referral
JP4208506B2 (ja) 高性能記憶装置アクセス環境
EP2196894B1 (en) Scaling of small computer system interface input output (SCSI I/O) referrals
JP2011048427A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120926

Termination date: 20170629