逻辑卷传送方法和存储网络系统的制作方法

文档序号:6561798阅读:375来源:国知局
专利名称:逻辑卷传送方法和存储网络系统的制作方法
技术领域
本发明涉及一种具有与多个磁盘设备相连接的多个控制设备的存储控制单元,以及一种传送其复制逻辑卷的方法。
背景技术
作为关于存储控制单元的逻辑卷的虚拟化技术,在该存储控制单元内部,存在一种管理外部存储控制单元的逻辑单元(LU)的技术,所述外部存储控制单元是与存储控制单元不同的帧。例如,见日本专利申请已公开(Kokai)号H7-210439、2001-318833以及2003-008821。同样存在用于在存储控制单元内部创建逻辑卷的复制的技术。
近年来,在存储器工业中,一种称为“存储网格”的概念日益变得著名起来,利用这种概念多种分布式计算资源作为单个整体而投入使用。作为它的一种形式,可以考虑这样一种配置,其中多个存储控制单元被设置在一起并被认为是单个系统。目前,伴随着存储控制单元数目的增加或减少或者为了在两个和多个存储器之间进行负载分配的目的,在一存储控制单元中的复制逻辑卷(包括相关的卷,如相同属性的卷等)中的数据不能利用所保持的与其它存储控制单元的相关性来传送。此外,在上述存储控制单元与外部存储控制单元相连接的情况下,不能象对于其是外部存储控制单元中的实体的复制逻辑卷那样来执行在两个和多个存储控制单元之间的逻辑卷传送处理。
本发明考虑到上述问题,目的在于在包括多个存储控制单元的存储系统中提供一种用于在两个和多个存储控制单元之间传送复制逻辑卷(包括那些利用其而使逻辑卷实体存在于外部存储器单元中的复制逻辑卷)的装置。

发明内容
为了实现上述目的,本发明提供一种逻辑卷传送方法,由此,在一个系统中,所述系统包括存储系统,其具有逻辑上由多个存储控制部件来管理的逻辑卷,作为相应的存储控制部件中或者连接到存储控制部件的外部存储控制部件中的实体;以及虚拟化设备,标识该多个存储控制部件作为单个的存储控制部件,该逻辑卷在两个或多个存储控制部件之间被传送,其中在多个存储控制单元之间传送该逻辑卷之中,包含地传送另一个逻辑卷,其与该逻辑卷形成一个对或者一个两对或更多对的组。
根据本发明的逻辑卷传送方法的特征在于包括在逻辑卷包含复制逻辑卷的情况下,复制逻辑卷的实体存在于外部存储控制单元中,以及要从已经利用其设置了到虚拟化设备的一条路径的第一存储控制单元向没有利用其设置该路径的第二存储控制单元传送该复制逻辑卷的主逻辑卷和次逻辑卷,所述步骤如下虚拟化设备设置一条到第二存储控制单元的路径;第二存储控制单元准备表明主逻辑卷与次逻辑卷之间的数据差异的差异位图,以便接收访问请求;当该差异位图的准备完成时,虚拟化设备进行设置以便不是向第一存储控制单元而是向第二存储控制单元做出对该逻辑卷的访问请求;第二存储控制单元向第一存储控制单元移交从虚拟化设备接收的该访问请求;第一存储控制单元处理从第二存储控制单元中接收的访问请求以便在磁盘设备中反映该访问请求;第一存储控制单元执行一个紧急降级,用于将逻辑卷的高速缓冲存储器中的数据存储在磁盘设备中;以及当结束紧急降级时,第二存储控制单元与外部存储控制单元相连接并且向外部存储控制部件而不是向第一存储控制单元移交从虚拟化设备中接收的访问请求。
值得注意的是权利要求中的“虚拟化设备”对应于在优选实施例的描述中所讨论的“主机51中的虚拟化程序或虚拟化设备52”。本发明还包括除此处所描述的那些之外的逻辑卷传送方法和存储网络系统。
本发明具备在包括多个存储控制单元的存储系统中允许在两个和多个存储控制单元之间传送复制逻辑卷的效果。该复制逻辑卷包括那些利用其而使逻辑卷实体存在于外部存储器单元中的复制逻辑卷。


图1是示出本发明实施例的存储系统的一般配置的示意图。
图2A和2B是示出服务处理器的示例配置的示意图。
图3是示出交换路径软件的配置的示意图;图4是示出存储控制单元的内存配置的示意图;图5是示出相同设备对应表的例子的示意图;图6A是示出用于在相同的存储控制单元中创建复制的示例卷对信息管理表的示意图;图6B是示出用于横跨不同的存储控制单元创建复制的示例卷对信息管理表的示意图;图7是示出卷信息表的例子的示意图;图8A是示出在一个例子中的不同位图的示意图,其中准备了一个差异位图;图8B是示出在一个例子中的不同位图的示意图,其中为单个对准备了相同尺寸的两个位图;图9A是示出在单-位图配置中,横跨多个存储控制单元的差异位图配置的示意图;图9B是示出在双-位图配置中,横跨多个存储控制单元的差异位图配置的示意图;图10是举例说明在两个存储控制单元之间传送一对逻辑卷之前的处理的流程图;图11是举例说明用于在两个存储控制单元之间开始传送一对逻辑卷的处理的流程图;图12是举例说明在添加存储控制单元的情况下的预传送处理的流程图;图13是举例说明在删除存储控制单元的情况下的预传送处理的流程图;图14是举例说明在为负载分配的目的而执行跨越多个存储控制单元的逻辑卷传送的情况下的预传送处理的流程图;图15是示出注意到要传送的对的逻辑卷的配置和I/O路径的示意图;图16是示出注意到要被传送的对的逻辑卷的配置和I/O路径的示意图;图17是示出注意到要被传送的对的逻辑卷的配置和I/O路径的示意图;图18是举例说明用于在两个存储控制单元之间传送一对逻辑卷的主逻辑卷的处理的流程图;以及图19是举例说明用于在两个存储控制单元之间传送一对逻辑卷的次逻辑卷的处理的流程图。
图20是示出一组信息表的例子的示意图。
图21A是示出一种用于当将组被存储在一个存储控制单元中时从主机执行分离请求(Split request)的方法的示意图,其中向该组发布偶尔分离命令(At-Time Split command)。
图21B是示出一种用于当将组被存储在一个存储控制单元中时从主机执行分离请求的方法的示意图,其中向该组中的对之一发布偶尔分离命令。
图22A是示出一种用于当该组跨越多个单元而存在时从主机向所有的多个存储控制单元进行分离请求的方法的示意图,其中向该组发布偶尔分离命令。
图22B是示出一种用于当该组跨越多个单元而存在时从主机向所有的多个存储控制单元进行分离请求的方法的示意图,其中向该组中的一个对发布偶尔分离命令。
图23是示出当主机包括组信息表时复制逻辑卷的传送和分离处理的示意图。
图24是示出地址映射表的例子的示意图。
图25是示出为了实现一种用于在外部存储控制单元中包括主卷和池区的方法的结构的示意图。
具体实施例方式
现在将参考附图详细描述本发明的优选实施例。
《系统配置和概述》首先,参考图1,将描述本发明实施例的存储系统的总体配置。
存储系统100具有多个存储控制单元20(20A和20B)以及外部存储控制单元70。管理服务器50经由网络40与存储控制单元20相连。主机51经由SAN(存储区网络)41和42以及虚拟化设备52而连接到存储控制单元20。此处,虚拟化设备52和主机51中的虚拟化程序(未示出)将该多个存储控制单元识别成单个存储控制单元,从而允许外部主机51(主程序)访问由存储系统100提供的逻辑上的单个存储控制单元。客户计算机30直接或经由LAN40而连接到存储系统100。具体地说,客户计算机30直接连接到存储系统100并向其进行请求。可选地,客户计算机30经由LAN40连接到主机51并通过主机51中的应用程序向存储系统100进行请求。包括存储系统100和虚拟化设备52的系统称为存储网络系统。
每个存储控制单元20具有CPU(中央处理单元)21、公用内存22、磁盘接口控制单元23、多个磁盘设备24、FC(光纤信道)接口控制单元25和26、LAN(局域网)接口控制单元27。通过执行存储在公用内存22中的各种程序和模块,CPU21实现在存储控制单元20中的各种控制处理。公用内存22被认为是内部存储控制单元且既包括存储各种模块的非易失性存储器又包括暂时存储计算处理结果的易失性存储器。
CPU21经由磁盘接口控制单元23连接到磁盘设备24。磁盘接口控制单元23将发自CPU21的逻辑地址转换成逻辑块地址以实现CPU21对各种逻辑设备的访问。
每个磁盘设备24是由一个或多个磁硬盘驱动器的RAID(廉价磁盘冗余阵列)配置所形成的磁盘阵列设备,并且借助于多个硬盘驱动器提供单个或多个存储逻辑卷区(即逻辑设备(LDEV)),或借助于单个硬盘驱动器提供一个或多个逻辑设备。对于每个逻辑设备(也称为“逻辑单元”)的访问是利用逻辑单元号(LUN)和逻辑块地址(LBA)而执行的。在连接了外部存储控制单元70(稍后将进行描述)的条件下,本发明的实施例可设置成不具备磁盘设备24和磁盘接口控制单元23。
FC接口控制单元25连接到例如光缆或铜线,以及在存储控制单元20和外部存储控制单元70之间,经由SAN43并通过光纤信道协议而执行发送和接收命令和数据。在SAN43,采用了诸如光纤信道协议或iSCSI之类的通信协议。SAN43不是必需的,每个存储控制单元20(FC接口控制单元25)和外部存储控制单元70例如可利用光缆而直接连接。
FC接口控制单元26经由具有光缆的SAN41连接到主机51。主机51执行例如数据库管理系统(DBMS)的应用程序、向存储控制单元20写入处理结果、以及利用存储在其中的信息资源。在SAN41和42,采用了诸如光纤信道协议或iSCSI之类的通信协议。也有这样的配置,即其中FC接口控制单元26经由SAN41连接到虚拟化设备52且虚拟化设备52经由SAN42连接到主机51。在FC接口控制单元26经由SAN41连接到主机51的情况下,虚拟化设备52中的虚拟化程序被安装在主机51中。虚拟化设备52例如可能是开关、智能开关、专用设备。虚拟化设备52也可以由其中安装了虚拟化程序的主机51来替代。
管理服务器50是一台管理计算机,其管理存储系统100且例如在存储控制单元20中执行逻辑卷的创建、向主机51分配逻辑卷、分区、以及LUN屏蔽设置(LUN masking setting)。管理服务器50经由LAN40连接到每个存储控制单元20的LAN接口控制单元27,并且借助于TCP/IP协议(其是一种通信协议)执行关于存储控制单元20的命令和数据的发送与接收。LAN40是一种由以太网(注册商标)构造的局域网,其中实现采用TCP/IP协议的数据传输。例如经由SAN41而执行在两个或多个存储控制单元20之间的通信。
外部存储控制单元70是与存储控制单元20不同类型的存储控制单元。外部存储控制单元70连接到存储控制单元20并且由存储控制单元20来管理。每个存储控制单元20向外部存储控制单元70内的逻辑卷分配LU,并且因为事实上是存储控制单元20内的磁盘设备24使得LU看来像是主机51。为了从外部存储控制单元70中读数据或者向外部存储控制单元70中写数据,主机51向实际上在存储控制单元20内被分配的LU发出读/写请求。存储控制单元20将所接收到的请求转换为对于外部存储控制单元70中的相应LU的读/写命令并将其发送给外部存储控制单元70。外部存储控制单元70可以具有与存储控制单元20相同的模型。通过以上所述,使每个存储控制单元20具有作为存储控制单元20或外部存储控制单元70中的实体的逻辑卷,该单元独立地逻辑管理所述逻辑卷。
图2A和2B都示出了服务处理器(SVP)的示范性配置的示意图。服务处理器81例如执行相应存储控制单元20的配置设置和操作信息获取,且服务处理器81例如是PC(个人计算机)的终端。SVP经由LAN40连接到相应的存储控制单元20,如图1所示。图2A示出了一个配置例子,其中经由LAN来为相应的存储控制单元20安装服务处理器81。服务处理器81连接到主服务处理器(MSVP)80,该主服务处理器(MSVP)80集合从相应的服务处理器81所获取的信息。从而用户可以利用MSVP80以一种固定方式引用相应服务处理器81的信息。服务处理器81之一可以是该MSVP。图2B示出了其中相应存储控制单元20直接连接到主服务处理器80的示范性配置。
这里,存储系统100从存储控制单元20中获取配置信息且指示一个范围(其可包括外部存储控制单元70),在此范围内能够实现在两个或多个存储控制单元20之间的逻辑卷传送处理。
《程序和表的配置》图3是示出交换路径软件的配置的示意图。当从主机51访问存储系统100内的逻辑卷时,交换路径软件Mc100管理通向该逻辑卷的多个路径并且控制要采用哪个路径。交换路径软件Mc100具有多路径管理程序Mc1、帧间多路径程序Mc2、优先级控制程序Mc3以及相同设备对应表Vt1。多路径管理程序Mc1管理并控制整个的交换路径软件Mc100。对于外部存储控制单元70内的逻辑卷来说,帧间多路径程序Mc2将跨越了多个存储控制单元20的路径识别为多路径。当在两个或多个不同的存储控制单元20之间建立了多路径时,优先级控制程序Mc3为每条路径设置使用速率并且执行控制以使用具有优先级的一部分路径。相同设备对应表Vt1表示设备的对应,其虽然在路径上不同但是在实体上相同。
交换路径软件Mc100位于主机51内或虚拟化设备52内。
图4是示出每个存储控制单元的内存配置的示意图。在公用内存22内存储了由中央处理器21来执行的操作系统OS、复制创建程序Mr1、传送中差异获取程序Mr11和传送中逻辑卷对设置程序Mr12,以及对该复制创建程序Mr1的控制信息以创建逻辑卷或数据的复制。在公用内存22中也存储了卷对信息管理表Ct1、卷信息表Ct2、差异位图Ct3、以及配置信息表Ct4。在卷对信息管理表Ct1中记录了关于数据的拷贝源和拷贝目的地的信息。在卷信息表Ct2中记录了相应的逻辑卷是否正在创建复制。差异位图Ct3用来执行用于创建复制的拷贝处理,以及表示在主逻辑卷和次逻辑卷之间数据的差异。配置信息表Ct4是用于提供其自身的LU给存储控制单元20作为存储控制单元20的LU的外部存储控制单元70的。这些程序和表提供于相应存储控制单元20的公用内存22内。
虽然可以以一种同步方式(由此在等待数据拷贝完成时向主设备(主机51)报告该完成)或以一种异步方式(由此不等待数据拷贝完成就向主设备(主机51)报告该完成)来实现数据复制,但尤其是在本发明的实施例的描述中没有区别这些变化。
图5是示出相同设备对应表Vt1的例子的示意图,所述相同设备对应表Vt1由虚拟化设备52和虚拟化的层(主机51内的程序层)来持有。相同设备对应表Vt1包含有路径号、存储控制单元标识符、LU号、以及相同设备对应标识符。图5中的相同设备对应标识符表示0、2、以及3号路径可以访问在帧的方面不同的相同设备实体。即使具备相同的设备,由于路径经过了不同的存储控制单元20(帧),所以在LU号方面0号和2号路径也不同于3号路径。
图6A和6B都示出了卷对信息管理表Ct1的示范性示意图。卷对信息管理表Ct1包含有对号、主卷信息、次卷信息、成对状态、构成拷贝(formationcopy)位、二次访问取消位(disabled bit)、以及传送信息,这些是用于管理在存储控制单元20中持有所拷贝数据的逻辑卷对(以下简称“对”)的信息。图6A示出了用于在相同存储控制单元内实现复制创建的表的例子。图6B示出了用于在不同存储控制单元之间实现复制创建的表的例子。
如图6A所示,在卷对信息管理表Ct1A中,对号是被任意分配给一个对的标识符。
主卷信息表示分配给该对中的主逻辑卷的逻辑卷号,其中所述标识符被分配给所述对。
次卷信息表示分配给该对中的次逻辑卷的逻辑卷号,其中所述标识符被分配给所述对。成对状态表示每个对的当前状态。成对状态的例子包括其中使存储在一个对的相应逻辑卷中的数据被同步并且使存储在该相应逻辑卷中的数据的内容被匹配的那个状态(以下简称“成对状态”),以及其中在对内不使数据被同步的那个状态(以下简称“分离状态”)。
存储控制单元20改变对的状态,例如,在任意时间从成对状态改变成分离状态。在这种情况下,在任意时间由该对所持有的数据被保存在次逻辑卷中(这种处理称为“抓取快照”)。此后,通过主机51从次逻辑卷中读取数据以及将该数据写入另一个存储控制单元(诸如磁带设备),可以备份在抓取快照时存储在该对中的数据。还有,抓取快照之后的次逻辑卷可以保存在其自身中以作为数据的备份。
构成拷贝位是一个标识符,当相应对是从另一个帧进行传送的过程中的对时,所述标识符防止构成拷贝(从主逻辑卷向次逻辑卷拷贝所有数据)的开始,所述构成拷贝通常开始于对创建的时候。缺省值是“0”,利用这个值,在对创建的时候执行构成拷贝。
二次访问取消位如下使用。也就是说,在相应对是从另一个帧被传送的处理中的对并且由存储控制单元20B(其是传送目的地)来改变该对的次逻辑卷的数据的情况下,在传送完成之前,以及此后执行构成拷贝,由于因此将覆盖该数据,所以不会保留正确的数据。因而为了在传送期间由传送目的地存储控制单元20B取消对于该次逻辑卷的访问,将二次访问取消位设置成标识符值。缺省值是“0”并且在缺省状态下不取消次逻辑卷。然而在成对状态下,仅当能够对次逻辑卷的访问时才允许访问。
传送信息是存储控制单元号(帧号)以及传送源和传送目的地的对号。当确定了传送目的地时,注册传送目的地的存储控制单元号以及对号。当数据要返回到传送源时,引用传送源的存储控制单元号和对号。
虽然图6B所示的卷对信息管理表Ct1B基本上与图6A所示的表相同,但是它在主卷信息和次卷信息的形式上是不同的。分配给主逻辑卷的逻辑卷号由存储控制单元号与该那个帧中的逻辑卷号的组合来表示,所述存储控制单元号是存储控制单元20的标识符。同样可应用于次卷信息的情况。因为这些信息关于在两个或多个不同的存储控制单元与其中必须指定逻辑卷存在的存储控制单元之间的复制,所以提供了这种设置。
在这个例子中,在存储控制单元20内唯一地指定逻辑卷号和对号,并且通过组合这些号与存储控制单元20的号,形成了存储系统100内的唯一的号。然而,另一个方法同样有效,其中逻辑卷号和对号被指定为序列号以便形成对于存储控制单元20唯一的号码。在这种情况下,即使逻辑卷在两个或多个存储控制单元20之间传送之后,仍会继承和采用同一个号。
例如,作为设备的初始状态,在存储控制单元20A内设置逻辑卷号0到999以及在存储控制单元20B内设置逻辑卷号1000到1999。当存储控制单元20A内的号为200的逻辑卷要被拷贝和传送到存储控制单元20B内的号为1200的逻辑卷时,由存储控制单元20B来继承和采用逻辑卷号200(当被附着到次逻辑卷时)。这里,将存储控制单元20A的逻辑卷号200与存储控制单元20B的逻辑卷号1200进行交换,因为简单地继承该号200会引起拷贝目的地的存储控制单元20B的逻辑卷号1200的消失。也就是说,在数据传送之后,逻辑卷号1200存在于存储控制单元20A中,而逻辑卷号200存在于存储控制单元20B中。
图7是显示卷信息表Ct2的一个例子的示意图。卷信息表Ct2记录用于管理属于存储控制单元20的逻辑卷的信息并且被存储在存储控制单元20内的公共内存22中。卷信息表Ct2包含有全部逻辑卷号、主/次标志、副本卷信息、逻辑卷使用标志、以及外部存储控制单元逻辑卷使用标志。
逻辑卷号是分配给逻辑卷的标识符。图7示出了其中为0号逻辑卷形成三个对的例子。图7中的表表示了对于顶部开始的第一个对,次逻辑卷具有1号存储控制单元的20号逻辑卷,所述次逻辑卷是副本逻辑卷。第二个对被显示在相同存储控制单元内具有158号逻辑卷的次逻辑卷。第三个对是以与第一个对相同的方式来形成的。第四个对显示出1号逻辑卷用作次逻辑卷而主逻辑卷是3号存储控制单元的3783号逻辑卷。
主/次标志表示逻辑卷是否用作一个对的主部分或次部分。副本卷信息是通过其而形成一个对的副本的卷信息且包括存储控制单元号和逻辑卷号。副本卷信息是副本的卷信息,利用其形成对,且卷信息包括存储控制单元号和逻辑卷号。在相同的存储控制单元内形成一个对的情况下,将次逻辑卷的逻辑卷号记录为副本卷信息中的逻辑卷号。在跨越不同存储控制单元而形成一个对的情况下,将次逻辑卷的存储控制单元号和逻辑卷号记录在副本卷信息中。逻辑卷使用标志是表示相应逻辑卷是否正在使用或为空。外部存储控制单元使用标志是表示相应逻辑卷是否正在用作外部存储控制单元的逻辑卷的信息。
《系统处理》现在将描述包括存储系统100的整个系统的处理。首先,将描述从存储控制单元向外部存储控制单元的命令操作。然后将描述在两个或多个存储控制单元之间传送复制对的处理。就这些复制对传送处理而言,将分别描述在相同存储控制单元内的传送处理和跨越不同帧的传送处理。此后,将描述在相同存储控制单元内的传送处理中首先执行的传送逻辑卷确定处理。就传送逻辑卷确定处理而言,将分别描述设备增加、设备删除以及负载分配这三种情况。此外,将描述传送时间仲裁处理。
<外部存储控制单元的命令操作>
当从主机51接收输入/输出请求时,存储控制单元20判断逻辑卷是否存在于存储控制单元20中或外部存储控制单元70中,所述逻辑卷是受输入/输出支配的LU的实体。如果表示未使用的“-”符号存储于卷信息表Ct2的外部存储控制单元逻辑卷使用标志中,则该逻辑卷存在于存储控制单元20中,且通过通常操作来访问磁盘设备24中的相应LDEV(逻辑设备,逻辑卷)。如果该标志被设为“使用中”,则该逻辑卷存在于外部存储控制单元70内且存储控制单元20向外部存储控制单元70重新提出输入/输出请求。外部存储控制单元逻辑卷使用标志的缺省值是“-”符号,且当要管理具有外部存储控制单元70内的实体的逻辑卷时“使用中”被存储。
图8A和8B都示出了一个例子中的差异位图Ct3的示意图。差异位图Ct3中的“0”表示从主逻辑卷向次逻辑卷的拷贝已经结束了的那个位置,而“1”表示拷贝还未结束的那个位置。在差异位图Ct3中,使具有预定数据大小的数据对应于1位(bit)。例如,在使64 Kbytes的数据对应于1位的情况下,即使当恰好64 Kbytes的数据中的1位已经被更新时,该位被设置为“1”以便该内容也会在拷贝目的地被反映。图8A示出了准备一个差异位图的例子,而图8B示出了准备一个对中具有相同尺寸的两个位图的例子。
最初向次逻辑卷(拷贝目的地)拷贝主逻辑卷(一个对的拷贝源)的全部内容的处理称为初始拷贝或构成拷贝。在初始拷贝中,差异位图Ct3P1(见图8A)的所有位均被设置成“1”。在拷贝处理中,每次检测到差异位图中的“1”时,判断与该位相对应的位置处的数据是否存在于高速缓冲存储器(图1中所示的公用内存22的一部分)中。如果数据不在高速缓冲存储器中,则从主逻辑卷将该数据读入高速缓冲存储器并将该数据拷贝到用于次逻辑卷的数据的高速缓冲存储器内。随着这个拷贝,用于判断数据是否正确的冗余信息(例如,奇偶校验数据)也为该次逻辑卷而被新创建并且被附着于该数据上。当存储在高速缓冲存储器中时,差异位图Ct3P1的相应位被设置为“0”。当发现下一个“1”位时重复该处理。也可以采用这样一种方法,其中当从上述主逻辑卷中读出数据时,在为次逻辑卷创建冗余信息时数据被直接存储在高速缓冲存储器中做为次逻辑卷的数据。也可以采用这样一种方法,即在高速缓冲存储器中的次逻辑卷的数据异步地存储在该次逻辑卷中。
在上述处理中,在该主和次逻辑卷之间实现数据同步并且主逻辑卷和次逻辑卷放在成对状态。此后通过存储控制单元20在任意时间“分离”处于成对状态中的对,在任意时间由该对所持有的数据被保存在次逻辑卷中。
通常地,在结束初始拷贝的时刻执行分离,并且使主逻辑卷和次逻辑卷的内容同步。同时,存在一种称作“快速分离”的技术,利用这种技术,即使在初始拷贝期间接收到分离请求时,也能立即向主机51发出分离完成报告而在后台执行剩余的拷贝。在“快速分离”期间,差异位图Ct3P1(用于构成拷贝)和差异位图Ct3P2(其记录分离之后的更新,即记录差异)用在存储控制单元20处如图8B所示的组合中以实现快速分离。
虽然利用如例子那样的表结构显示了图5到7的表,但是它足以提供上述信息并且不特别地限制该信息的数据结构。例如,该结构可以是列表结构。因而持有该信息的形式不是本发明的本质。
<在两个或多个存储控制单元之间传送复制对的处理>
现在描述在两个或多个存储控制单元之间传送复制对的处理。复制对指的是由主逻辑卷和次逻辑卷所形成的对。虽然在目前的描述中采用了其中在拷贝源创建单个复制的情况,但是所有相关的逻辑卷均可以以同样地方式被传送,即使是在为主逻辑卷(多对)创建多个复制的情况下、在从次逻辑卷(次逻辑卷变成另一个对的主逻辑卷)(级联)创建另一个副本的情况下,以及在逻辑卷单元之外的单元中创建复制的情况下。在级联的情况下,将会认为主逻辑卷和次逻辑卷形成一个对,以及通过再现这个次逻辑卷和主逻辑卷而形成一个对。虽然以下描述是关于虚拟化设备52对同一个LU执行多路径虚拟化处理的例子,但是要虚拟化的层不局限于任何具体的一个。例如,这个层可能是主机51的程序层。
根据图10的流程图,现在描述从存储控制单元20A内将逻辑上管理的外部存储控制单元70的一对逻辑卷(在构成拷贝的处理中)传送到不同的存储控制单元20B中的处理。
后面将详细描述S1010的处理作为预传送处理,其中管理服务器50决定要将哪个逻辑卷传送到哪里。首先,从服务处理器(SVP)81向传送目的地存储控制单元20B(S1020),通知逻辑卷的传送和那些逻辑卷的卷信息(传送源逻辑卷)。因此,传送目的地存储控制单元20B从传送源存储控制单元20A获取配置信息(外部存储控制单元70的卷信息)(S1030)。如果复制正在进行中,则配置信息包含有对信息。这个配置信息的获取是经由SAN41来执行的。此后传送源存储控制单元20A向虚拟化设备52通知传送源逻辑卷号(S1040)。传送目的地存储控制单元20B为要传送的部分重新建立LU(S1050)并且将这些LU记录在存储控制单元20B内的卷信息表Ct2中。如果传送的单元是一个对,那么为这一个对做记录,以及在多个对的情况下,为多个对的数目做记录。还有在级联的情况下,为级联的数目进行记录。
如果传送源逻辑卷形成了复制逻辑卷,那么与传送源存储控制单元20A中的那些信息相同的复制信息(逻辑卷对关系)被设置在新设置的LU中并被记录(S1060)。传送中逻辑卷对设置程序Mr12在卷对信息管理表Ct1A中设置并记录在卷信息表Ct2中所记录的该LU和对信息。传送源对的存储控制单元号和对号也被记录在传送目的地对信息管理表Ct1A中。传送中逻辑卷对设置程序Mr12简单地设置存在一个复制对关系并设置在卷对信息管理表Ct1A中记录的上述对号的构成拷贝位为“1”,以防止执行初始拷贝(S1070)。还有,为了防止接受对于作为拷贝目的地的次逻辑卷的访问,记录在卷对信息管理表Ct1A中的上述对号的二次访问使能位被设置为“1”(S1070)。为了使传送源和传送目的地的成对状态统一为相同状态,即使没有执行构成拷贝,在传送目的地存储控制单元20B中将“对(拷贝正在进行中)”记录为成对状态,其中所述“对”是与传送源的状态相同的状态,所述构成拷贝是用于创建一个对的初始拷贝。传送目的地存储控制单元20B向虚拟化设备52通知传送目的地的新LU号(S1080)。
在虚拟化设备52处,交换路径软件Mc100的帧间多路径程序Mc2(参见图3)从相同设备对应表Vt1中识别出传送源LU和传送目的地的新LU表示相同的实际逻辑卷(S1090)。具体地说,例如存在这样一种方法,其中如图5的相同设备对应表Vt1中所示,为每个路径指定存储控制单元标识符和存储控制单元内的LU号,其中所述存储控制单元标识符是区别访问目的地的存储控制单元的标识符。利用这种方法,交换路径软件Mc100不能识别出不同存储控制单元内的LU的实体是相同外部存储控制单元内的LU。因而,除未区别帧的常规信息之外,重新提供相同设备对应标识符信息,该信息是表示该实体是相同LU的信息,并且交换路径软件Mc100的帧间多路径程序Mc2(见图3)甚至在在帧方面不同的两个或多个存储控制单元之间设置多路径并且使得能够识别出该实体是相同外部存储控制单元中的逻辑卷。利用图5的例子,0号、2号和3号路径是通向相同实体的LU的路径。此后帧间多路径程序Mc2打开(设置)一条从虚拟化设备52到传送目的地存储控制单元20B的路径(S1095)。
作为在S1030中获取配置信息并将其设置在传送目的地的方法,(1)管理服务器50向存储控制单元20发出一个命令用于获取(该信息可由管理服务器50获取一次,或者可以发布一指令给存储控制单元20以通过存储控制单元之间的通信而进行获取和设置),(2)传送源信息可以经由SVP81而被获得并移交给传送目的地的SVP81,(3)主机51可发一命令以进行获取(同(1)),或者(4)该信息可被写入外部存储控制单元70内的逻辑卷(专用逻辑卷或空逻辑卷)中,然后由传送目的地来获取等。在这个处理中(S1095以及之前的步骤),在传送源存储控制单元20A和传送目的地存储控制单元20B之间也形成一条路径(经过SAN41)。这个路径用来经由该传送源存储控制单元20A向外部存储控制单元70发送一个由传送目的地存储控制单元20B所收到的命令。
假如在图10中的传送处理开始之前,该对是在构成拷贝的过程中。在这种情况下,正在执行向次逻辑卷拷贝主逻辑卷的全部内容的初始拷贝处理。在图10的处理期间,在传送源存储控制单元20A中持有并使用构成拷贝位图。在进行拷贝处理中,存储控制单元20A内的CPU21启动并执行一个程序。
图15是示出注意到要受传送支配的对的逻辑卷标的构造和I/O路径的示意图。这里,认为在主机51帧间多路径是虚拟化的。对于逻辑卷1(LDEV1逻辑设备1)和逻辑卷2(LDEV2)的对来说,其具有外部存储控制单元70中的实体,在存储控制单元20A中执行虚拟化和LU管理。当主机51向该对逻辑卷发出I/O时,主机51中的交换路径软件Mc100的多路径管理程序Mc1(见图3)搜索被分配给对其提出请求的逻辑卷的路径。因为直到S1090那一点为止,仅存在经过存储控制单元20A的路径,所以从该多个路径中选择出一条路径并且发出I/O。如果发出了正常I/O(写请求),则在构成拷贝位图中设置“1”。到此的步骤组成在存储控制单元20和虚拟化设备52之间设置路径的处理。
现在将根据图11的流程图描述开始向不同帧(不同存储控制单元)开始实际传送的处理。
为了开始该实际传送处理,主机51(or管理服务器50或MSVP80)向存储控制单元20A中的对发出“分离(对分离)”指令(S1110)。响应这个指令,在传送源存储控制单元20A处进行分离。改变成对状态,即,从“对”向“分离”更新(S1115),以及如果随后做出写请求,则执行在存储控制单元20A中以差异位图(在目前的情况下是差异位图Ct3P2)进行记录。作为传送处理的一部分,传送源存储控制单元20A经由SAN41向传送目的地存储控制单元20B移交“分离”指令(S1120)。在这个处理中,存储控制单元标识符和传送源的卷对信息也被移交。
响应来自传送源存储控制单元20A的指令,传送目的地存储控制单元20B搜索要分离的对(S1125)。具体地说,通过搜索记录在卷对信息管理表Ct1A(见图6A)中的关于传送源的卷对信息而搜索在传送目的地的相应对。当完成搜索时,在传送目的地存储控制单元20B,执行相应对的分离(成对状态的改变,差异的合并)(S1130)。具体地说,以和S1115中相同的方式改变对号的成对状态(在当前的情况下更新到“分离”),所述对号是如上所述在卷对信息管理表Ct1A中搜索的。此外,差异位图Ct3P1的内容(其用于在传送源存储控制单元20A处相应对的分离之前的构成拷贝)与传送目的地存储控制单元20B中相应对的构成拷贝差异位图Ct3P1(应当认为已经初始化了构成拷贝差异位图Ct3P1)的内容进行合并。差异位图Ct3P2的内容也被合并。因而,当在传送目的地存储控制单元20B接收到新的I/O时为差异位的获取而作准备。这里,合并指的是由在两个位图的相应位上执行OR操作的结果形成新位图。
当差异合并(准备)完成时,传送目的地存储控制单元20B将这个通知给传送源存储控制单元20A和虚拟化设备52(S1135)。作为将要在上述差异位图Ct3P1和Ct3P2的相应合并的开始和完成之间所采用的一种方法,不接收新的I/O,且当新的I/O到达时,向主机51返回所取消的接收,然后使所述主机51在预定时间量过去之后再次提出请求。作为另一个方法,接收新的I/O,且如果I/O请求的主题是差异合并已经完成的一部分,那么在引用传送目的地存储控制单元20B的差异位图时处理该请求,而如果I/O请求的主题是差异合并还没有完成的一部分,那么在引用传送源存储控制单元20A的差异位图时处理该请求。在这个处理中,借助于差异位图Ct3P1检验构成拷贝是否已结束,如果没有结束,则在相应位置的构成拷贝已结束之后进行写处理。如果构成拷贝已结束,则进行写处理。在接收该新的I/O的存储控制单元20处执行这个写处理。
此后,借助于优先权控制程序Mc3,虚拟化设备52执行设置以致于在处理对于跨越不同帧的多路径的I/O中,传送目的地帧的路径会接收当时的100%的I/O(S1140)。
在这个处理期间,已经被接收的I/O的处理继续并且当已经经由传送源存储控制单元20A(图16的原路线)接收的I/O的处理完成时,从传送源存储控制单元20A向主机51做出完成报告,并且当所有处理完成时,已经被传送的LU被删除(清除卷信息表中的信息)(S1150)。这里为了使得传送源的LU信息无效,采用了一种根据LU号设置一个表示信息是有效还是无效的位的方法。传送对的传送源卷对信息也被删除(S1150)。在这期间,存储控制单元20B连接到外部存储控制单元70并且起备用作用(S1160)。还有,存储控制单元20A执行紧急降级(执行从高速缓冲存储器到具有最高优先权的磁盘设备24的写入),以及当随后做出新的写请求时,以连续写通(write-though)模式执行写入,其中数据没有被存储在高速缓冲存储器中而是直接写入到磁盘设备24中(S1165)。从而在磁盘设备24中完全地反映了新的访问请求以及在高速缓冲存储器中的数据。当对于传送单元的所有逻辑卷来说紧急降级结束时(S1170中的Y),因为无效数据(dirty data)(磁盘设备24中未反映的新数据)不会被遗留在传送源存储控制单元20A的高速缓冲存储器中,所以使得能够完成向传送目的地存储控制单元20B的传送以及存储控制单元20B连接到外部存储控制单元70(S1175)。
在以上所述处理中,可以直接从主机51向传送目的地存储控制单元20B发出“分离”指令。
直到在存储控制单元20A的紧急降级结束,存储控制单元20B接收新的I/O。在这个处理中,存储控制单元20B经由存储控制单元20之间的SAN41向存储控制单元20A传送所接收到的I/O。当差异位图的合并已经完成且此后接收了I/O时,在向存储控制单元20A传送该I/O之前,存储控制单元20B的两个差异位图(见图8B)之间的差异位图Ct3P2的相应位被设置为“1”。在那一点检验构成拷贝是否已结束并且如果它没有结束,则在结束了那个位置的构成拷贝之后进行写入处理。如果构成拷贝已经结束了,则在存储控制单元20B侧继续执行拷贝处理,同时引用构成拷贝位图Ct3P1。
就象图15,图16是示出注意到要受到传送的对的逻辑卷的构造和I/O路径的示意图。在此处所列举的状态中,存储控制单元20A和存储控制单元20B对于LDEV1与LDEV2的对设置LU并且对其执行管理,所述存储控制单元20A和存储控制单元20B具有外部存储控制单元70中的实体。当主机51向该对逻辑卷发出I/O时,通过优先级控制经由存储控制单元20B侧而执行该处理。对于已经在存储控制单元20A接收到的I/O,从存储控制单元20A中做出完成报告。当在S1150接收到的所有I/O的处理完成时,原路线消失,仅新路线存在。然而,直到S1165的紧急降级完成,存储控制单元20A均执行实际处理。还有,使用了存储控制单元20A中的高速缓冲存储器而没有使用存储控制单元20B中的高速缓冲存储器。当S1165的紧急降级结束时,执行到在存储控制单元20B的处理的切换,如图17所示。在紧急降级完成这一刻,不再使用存储控制单元20A中的高速缓冲存储器,而是使用存储控制单元20B中的高速缓冲存储器。当该处理完全传送到存储控制单元20B时,传送期间存储控制单元20之间所使用的路径(经由SAN41)变为未使用。
虽然这里使用了一种其中“分离”请求的发出被用作开始传送处理的定时的方法,但是也可以代之以使用在构成拷贝结束之后开始传送处理的方法。在这种情况下,构成拷贝结束之后,可以重新引入用于开始传送的命令,或者执行处理以便当在存储控制单元侧结束构成拷贝时执行传送。
同样,利用当前例子描述了在拷贝期间执行传送处理的情况,但是同样的流程也适用于在分离期间执行传送处理的情况。然而,在传送目的地合并传送源差异位图中,如果构成拷贝已经结束,则它恰好足以合并差异位图Ct3P2而无需合并构成拷贝位图Ct3P1。
在构成拷贝期间发布“分离”请求的情况中或者在分离期间执行传送处理的情况中,为了利用以上所述快速分离技术,差异位图具有图8B所示的双-映射配置且如图9B中所示那样被建立。在完成构成拷贝之后执行传送处理的情况中,差异位图具有如图8A中所示的单映射配置且如图9A中所示那样被建立。
还有,执行主逻辑卷的传送处理之后,在传送目的地存储控制单元20B执行从主逻辑卷到次逻辑卷的拷贝。可以判断出在传送处理之后执行这种拷贝,例如,在传送源存储控制单元20A已经拷贝的数据量小于预定比例的情况中就如此。
现在将描述一种处理,其中为外部存储控制单元70的一对逻辑上管理的卷(在构成拷贝过程中)而将该对的主或次逻辑卷从相同的存储控制单元20A内传送到不同的存储控制单元20B。
伴随该传送的预先设置与图10的流程图的预先设置相同。在S1050,传送目的地存储控制单元20B为要传送的量而重新设置LU并且将这些LU记录在存储控制单元20B内的卷信息表Ct2中。在这一点上,设置了与所传送逻辑卷的数目相对应的LU。还有,为该新设置LU设置且记录与在传送源中的复制信息相同的复制信息(卷对信息)。也就是说,传送中逻辑卷对设置程序Mr12该LU和已经记录在卷信息表Ct2中的对信息设置并记录在卷对信息管理表Ct1B中。如同主次卷信息那样,在卷对信息管理表Ct1B中记录该存储控制单元号和逻辑卷号。还有,在传送目的地存储控制单元20B侧卷对信息管理表Ct1B中记录传送源存储控制单元20A的存储控制单元号和存储控制单元20A中的对号。同样地,在传送源存储控制单元20A侧卷对信息管理表Ct1B中记录有关传送目的地的信息。其他信息与卷对信息管理表Ct1A的相同。在该对逻辑卷跨越帧的情况下,也应该在传送源处随后更新该卷对信息,因为该卷对信息将在传送源和传送目的地处被持有。
在S1080,传送目的地存储控制单元20B向虚拟化设备52通知主逻辑卷的传送目的地的新LU号。在S1090,从相同设备对应表Vt1中识别对于主逻辑卷传送源LU和新的传送目的地LU表示相同的实际逻辑卷。对于主逻辑卷,虚拟化设备52和传送目的地存储控制单元20B之间的路径被打开(设置)(S1095)。
现在根据图18的流程图将描述实际传送的处理。这里,认为对的主逻辑卷要被传送。
从主机51(或管理服务器50或MSVP80)做出对于该对的“分离(对分离)”指令(S1810)。在传送源存储控制单元20A处进行分离处理。改变成对状态,即,从“对”向“分离”的更新(S1815),以及如果随后做出写请求,则执行在存储控制单元20A中以差异位图中进行的记录。作为传送处理的一部分,传送源存储控制单元20A经由SAN41向传送目的地存储控制单元20B移交“分离”指令(S1820)。在这个处理中,存储控制单元标识符和传送源的对信息也被移交。
响应来自传送源存储控制单元20A的指令,传送目的地存储控制单元20B搜索要被分离的对(S1825)。具体地,通过搜索在卷对信息管理表Ct1B(见图6B)中记录的关于传送源的卷对信息而搜索在传送目的地处的相应对。当完成搜索时,在传送目的地存储控制单元20B,执行相应对的分离处理(对状态的改变,差异的合并)(S1830)。具体地,以和S1815(此处继续“分离”)中相同的方式来改变对号的对状态,所述对号如上所述是在卷对信息管理表Ct1B中搜索的。此外,差异位图Ct3P1的内容(其用于在传送源存储控制单元20A处的相应逻辑卷对的分离之前的构成拷贝)与传送目的地存储控制单元20B中的相应逻辑卷对的构成拷贝差异位图Ct3P1(应当认为已经初始化了构成拷贝差异位图Ct3P1)的内容进行合并。差异位图Ct3P2的内容也被合并。因而,当在传送目的地存储控制单元20B处接收到主逻辑卷的新的I/O时,为差异位的获取而做准备。
当差异合并完成时,传送目的地存储控制单元20B将此通知给传送源存储控制单元20A和虚拟化设备52(S1835)。作为在上述差异位图的相应合并的开始和完成之间所采用的一种方法,不接收新的I/O,且当新的I/O到达时,向主机返回所取消的接收,此后使所述主机在预定时间量过去之后再次提出请求。作为另一种方法,接收新的I/O,且根据每个I/O请求的主题是否是已经完成差异合并的一部分而执行处理。其详细情况与图11的S1135所描述的情况相同。此后借助于优先权控制程序Mc3,虚拟化设备52执行(恰好对于主逻辑卷)设置以便在处理对于跨越不同帧之间的多路径的I/O中,传送目的地帧的路径会接收当时的100%的I/O(S1840)。对于次逻辑卷,在传送源存储控制单元20A处I/O被接收和处理而没有改变。
在这个处理期间,已经被接收的对于主逻辑卷的I/O的处理被继续,并且当已经经由传送源存储控制单元20A(图16的原路线)而接收的I/O的处理完成时,从传送源存储控制单元20A向主机51做出完成报告,并且当所有处理完成时,已经被传送的主逻辑卷的LU被删除(清除卷信息表Ct2中的信息)(S1850)。这里为了使得传送源的LU信息无效,使用了一种根据LU号设置一个表示信息是有效还是无效的位的方法。被传送的对的传送源卷对信息也被更新(S1850)。在这期间,存储控制单元20B连接到外部存储控制单元70并且起备用作用(S1860)。还有,存储控制单元20A执行主逻辑卷的紧急降级(执行从高速缓冲存储器到具有最高优先权的磁盘设备24的写入),以及当随后向主逻辑卷做出新的写请求时,以写通模式执行写入,其中数据没有被存储在高速缓冲存储器中(在存储控制单元20A和20B中的)而是直接写入到磁盘设备24中(S1865)。从而,在磁盘设备24中完全地反映该主逻辑卷的高速缓冲存储器中的数据。当对于整个的主逻辑卷结束了紧急降级(S1870中的Y)时,使得能够实现向传送目的地存储控制单元20B的主逻辑卷的全部传送,并且存储控制单元20B连接到外部存储控制单元70(S1875)。当该处理完全传送到存储控制单元20B时,传送期间存储控制单元20之间所使用的路径(经由SAN41)变为未使用。
现在根据图19的流程图描述传送对的次逻辑卷的情况。
象在S1810中那样,从主机51(或管理服务器50或MSVP80)做出对于该对的“分离(对分离)”指令(S1910)。象在S1815中那样,在传送源存储控制单元20A处执行分离处理。改变成对状态,即,从“对”向“分离”的更新(S1915),以及如果随后做出写请求,则执行在存储控制单元20A中以差异位图进行的记录。象在S1820中那样,作为传送处理的一部分,传送源存储控制单元20A经由SAN41向传送目的地存储控制单元20B移交“分离”指令(S1920)。在这个处理中,存储控制单元标识符和传送源的对信息也被移交。
象在S1825中那样,响应来自传送源存储控制单元20A的指令,传送目的地存储控制单元20B搜索要分离的相应对(S1925)。通过搜索有关记录在卷对信息管理表Ct1B中的传送源的信息可以搜索在传送目的地处的相应对。当完成搜索时,在传送目的地存储控制单元20B执行相应对的分离处理(对状态的改变,差异位图的初始化)(S1930)。具体地说,以和在S1915(此处继续“分离”)中相同的方式来改变对号的成对状态,所述对号如上所述是在卷对信息管理表Ct1B中搜索的。此外,初始化传送目的地存储控制单元20B的逻辑卷对差异位图Ct3P2。当处理完成时,传送目的地存储控制单元20B将此通知给传送源存储控制单元20A和虚拟化设备52(S1935)。此后,借助于优先权控制程序Mc3,虚拟化设备52执行(仅对于次逻辑卷)设置以便在处理对于跨越不同帧之间的多路径的I/O中,传送源帧的路径会接收当时的100%的I/O(S1940)。对于主逻辑卷,I/O在传送源存储控制单元20A处被接收且被处理而没有改变。
在这个处理期间,已经被接收的对于次逻辑卷的I/O的处理继续,并且当已经经由传送源存储控制单元20A(图16的原路线)而接收的I/O的处理完成时,从传送源存储控制单元20A向主机51做出完成报告,并且当所有处理完成时,已经被传送的次逻辑卷的LU被删除(清除卷信息表Ct2中的信息)(S1950)。这里为了使得传送源的LU信息无效,采用了一种根据LU号设置一个表示信息是有效还是无效的位的方法。被传送的对的传送源卷对信息也被更新(S1950)。在这期间,存储控制单元20B连接到次逻辑卷的外部存储控制单元70并且起备用作用(S1960)。还有,存储控制单元20A执行次逻辑卷的紧急降级,且当随后向次逻辑卷做出新的写请求时,以写通模式执行写入,其中数据没有被存储在高速缓冲存储器(存储控制单元20A和20B的)中而是直接写入到磁盘设备24中(S1965)。从而在磁盘设备24中完全地并入该次逻辑卷的高速缓冲存储器中的数据。当对于整个次逻辑卷结束了紧急降级(S1970中的Y)时,使得能够向传送目的地存储控制单元20B全部传送次逻辑卷,并且存储控制单元20B连接到外部存储控制单元70(S1975)。在执行构成拷贝之后,次逻辑卷可被传送到该存储控制单元20B。当该处理被完全传送到存储控制单元20B时,传送期间存储控制单元20之间所使用的路径(经由SAN41)将不再被使用。
当在图18的传送处理期间,在合并差异位图完成之后写入主逻辑卷的请求到达,存储控制单元20B的两个差异位图之间的差异位图Ct3P2的相应位被设置成“1”。在那一点检验构成拷贝是否已结束并且如果它还没有结束,则在结束了那个位置的构成拷贝之后进行写入处理。如果已经结束了构成拷贝,则继续存储控制单元20B侧的拷贝处理,同时引用差异位图Ct3P2。当对于次逻辑卷的I/O到达时,引用存储控制单元20B的构成拷贝位,并且如果构成拷贝还没有结束,则在那个位置的构成拷贝已经结束之后执行该处理,同时如果构成拷贝已经结束,则通过将存储控制单元20A的差异位图Ct3P2的相应位设置为“1”而执行正常的读/写处理,仅在写请求的情况下。
通过经由SAN41而查询存储控制单元20B来引用构成拷贝位。
还有,如果构成拷贝还没有结束,则存储控制单元20B执行要拷贝的数据的升级(读入到高速缓冲存储器)并且经由SAN41将数据从高速缓冲存储器传送到存储控制单元20A。
在跨越帧而进行传送的情况下,在如图9A中所示的两个存储控制单元20中均建立卷对信息管理表Ct1B以及差异映射Ct3P1和Ct3P2。当没有执行以上所述快速分离且接收了“分离”指令时,拷贝继续直到逻辑卷的内容实际上变为相同的。如果在这个处理完成之后执行了分离,则可以由每个具有如图9A所示的一个差异位图的存储控制单元来实现帧间的传送。
由本申请人提交的日本专利申请号2004-115693中描述了跨越帧执行传送之后的I/O处理。
只要图19的次逻辑卷是要被传送的以便在主逻辑卷侧的存储控制单元20A处管理构成拷贝差异位图Ct3P1,差异位图的合并就不会发生。除此之外,该处理与图18的流程图中的处理相同。
<确定要传送的逻辑卷的处理>
现在将根据图12到14的流程图描述确定在图10的S1010中要传送哪个逻辑卷的处理(预传送处理)。根据传送处理是通过传送处理是通过添加还是删除存储控制单元20还是通过优化现有配置中的存储控制单元20的资源使用速率(负载分配)来提高处理性能而执行,该预传送处理是不同的。
图12是举例说明增加存储控制单元情况下的预传送处理的流程图。这里,假定存储控制单元20B是新增加的。首先,管理服务器50或另一个SAN管理服务器定义新存储控制单元20B与存储系统100的连接(S1210)。具体地,例如由用户将该定义内容输入到管理服务器50中,并且存储在预定的公用内存中。此后,从除了存储控制单元20B之外的现有存储控制单元中获取负载信息(S1215)。所述负载信息是经由MSVP80或管理服务器50而获得的。此后,从所获得的负载信息中搜索高负载的位置(S1220)。具体地,搜索具有处理器操作速率高于预定值的处理器,或者搜索为其发出比I/O的预置数目多很多的I/O的逻辑卷。此后,指定具有处理器、逻辑卷或其他高负载资源的存储控制单元20,以及确定在这个存储控制单元内的哪个逻辑卷是实际上要传送的。具体地,向用户指示该负载信息,以及该用户确定并输入要传送的逻辑卷或者在存储控制单元20内自动地确定要传送的逻辑卷(S1225)。虽然默认的传送目的地是存储控制单元20B,但是可以代之以选择另一个单元。
如果要经传送的逻辑卷是要作为对相同的帧的一个对而传送的(S1230中的Y),则执行在相同帧内的传送的处理(见图10和图11)(S1240)。如果逻辑卷不是作为对于相同帧的一个对要传送的(S1230中的N),则判断该对的逻辑卷是否要被传送到不同的帧(S1235)。如果该对的逻辑卷是要传送到不同的帧(S1235中的Y),则执行到不同帧的传送处理(S1245)。如果该对的逻辑卷不是要传送到不同帧的(S1235中的N),则执行单独地传送逻辑卷的处理(S1250)。如果当传送处理结束时要继续传送(S1255中的Y),则过程返回到S1225。如果不是要执行传送(S1255中的N),则操作结束。
图13是在删除存储控制单元情况下举例说明预传送处理的流程图。这里,假定存储控制单元20B是要被删除的。象在S1215中那样,从除了要删除的存储控制单元20B之外的现有存储控制单元中获得负载信息。所述负载信息是经由MSVP80或管理服务器50而获得的(S1310)。此后从所获得的负载信息中搜索低负载的位置(S1315)。具体地,搜索处理器的操作速率低于预定值的处理器或者为其发出比预定数目的I/O多很多的I/O的逻辑卷。此后,指定具有处理器、逻辑卷或其他低负载的资源的存储控制单元20,然后确定这个存储控制单元内的哪个逻辑卷是要经传送的。也就是说,要删除的存储控制单元20B的哪个逻辑卷是要被传送到所确定的地点的(S1320)。参见S1225关于该处理的特定过程。S1325到S1345的处理与S1230到S1250的处理相同。如果此后要继续传送(S1350中的Y),则过程返回到S1320。如果不要执行传送(S1350中的N),则从存储系统100中除去存储控制单元20B然后处理结束(S1355)。
图14是举例说明为了负载分配目的在两个或多个存储控制单元之间传送逻辑卷情况下的预传送处理的流程图。为了在每个预定时间执行该处理,首先判断是否过去了预定时间(S1410)。如果过去了(S1410中的Y),则管理服务器50或其他SAN管理服务器从存储控制单元20获得负载信息。所述负载信息是经由MSVP80或管理服务器50而获得的(S1415)。此后从所获得的信息中搜索高负载和低负载的位置(S1420)。该处理的特定过程与S1220中的相同。此后确定存储控制单元20内的哪个逻辑卷要被传送到哪里(S1425)。该处理的特定过程与S1225中的相同。S1430到S1450的处理与S1230到S1250的处理相同。如果此后要继续传送(S1455中的Y),则过程返回到S1425。如果不要执行传送(S1455中的N),则该处理结束。
在S1225、S1320和S1425中用于确定要将哪个逻辑卷传送到哪里的策略是根据资源的操作速率,即,例如,CPU操作速率、高速缓冲存储器使用速率、使用速率逻辑卷。还有,如果预先已知负载仅会在特定时期内增大,所述特定时期如在创建复制之后时,那么为了某种目的要使用的逻辑卷将被存储在相同的存储控制单元(帧)中,或者在用于某个时期之后被删除,这种因素在确定中也可以被考虑到。例如,为了确定要传送哪个逻辑卷,不仅要引用资源的操作速率而且也要引用它的逻辑卷的属性。作为操作的一部分,在预定时期内可以受限制地使用复制逻辑卷(次逻辑卷)。在这种情况下,通过引用逻辑卷的属性,预先已知在预定时期过去之后,复制逻辑卷会变成不必要的并且变成(预定是)可删除的。因为由此能预见即使对于预定时期负载增大了,最终负载也会被减轻,所以不执行逻辑卷传送的判断也是可能的。
还有,在通过逻辑卷传送处理使得接近复制创建时在相同帧内形成一个对的逻辑卷变成跨越不同帧的一个对,然后通过另一个逻辑卷传送处理返回成为相同帧内的原始对的情况下,LU和对信息可以是新创建的,或者先前的信息可以被无效然后当在传送处理中被重新生效时使用。
<传送时间仲裁处理>
虽然图10和图11的处理是这样一种例子,其中用于传送逻辑卷的时间是由存储控制单元20A和20B之间的通信来仲裁的,但是这个时间的仲裁也可由管理服务器50来执行。也就是说,每次时间到达时,管理服务器50向相应的存储控制单元20通知那一点以使得相应的存储控制单元20开始该处理。
通过上文,当要传送的逻辑卷是正在为其创建复制的那个逻辑卷时,可以实现传送该逻辑卷的处理,同时执行保持具有复制关系的复制的拷贝处理。还有,用具有与多个磁盘设备相连的多个控制单元的存储控制单元,不仅在连接到相同控制单元的磁盘设备内创建一逻辑卷的复制的情况下,而且在为一逻辑卷创建复制而无需连接到不同控制单元的磁盘设备(实体)的情况下,可以不必知道该不同的控制单元即可准备存储区的拷贝。
《组传送和对分离》虽然在上文的描述中,象在存储控制单元之间要传送的逻辑卷那样,处理了复制逻辑卷,其中整个逻辑卷彼此相匹配,但是也可以处理这样的卷,即不必须是单个的对而可以是两个或更多对的一个组的卷。当象要传送的卷那样处理该组时,该组中的所有或一部分的对可以被传送。
诸如表、索引、以及与应当彼此保持一致性的工作有关的日志之类的一对数据属于一个组。当一个组的所有数据存储在存储控制单元20中时,例如对于来自主机51的请求的处理和内部处理可能增加资源上的负载(例如,端口、CPU、高速缓冲存储器以及硬盘单元)。为了分散该负载,日志,例如来自组中的数据,被传送且被存储到另一个存储控制单元20中。此时,通过管理跨越属于单个组的多个存储控制单元20(日志以及除了日志之外的数据)而存在的那些数据,允许在数据之间保持相互一致性,而且允许在对分离中保证同步性(以及,其结果是一致性)。
用于形成跨越多个存储控制单元20的一个组的处理是双重的。可以以任何顺序执行用于提供一组对和用于传送该对的处理。一个处理包括首先在一个存储控制单元20中设置一组对;以及向另一个存储控制单元20传送该组对的一部分。另外一个处理包括在一个存储控制单元20中创建多个对;向另一个存储控制单元20传送该组对的一部分;以及作为一个组而提供跨越两个存储控制单元20而存在的那些对。
图20是示出一组信息表的例子的示意图。组信息表Gt1是一个用于管理组、存储控制单元以及对之间的对应关系的表,包括组号、存储控制单元号以及对号。各组号具有一个对于存储系统100中的一个组唯一的号(见图1)。各存储控制单元号具有管理属于该组的对的许多存储控制单元。这里两个或更多存储控制单元号可以对应于一个组号。这意味着属于该组的一个对跨越两个或更多存储控制单元20(帧)而存在。对号是要由存储控制单元管理的对的号,出自属于该组的对。有关与该对号相对应的主和次卷的信息可由卷对信息管理表Ct1(见图6)来指定。
如图20中所示,例如,编号为0的组包括由存储控制单元20A和20B所管理的对,具体地说是编号为0到6(在存储控制单元20A中)以及6到9(在存储控制单元20B中)的对。编号为1的组包括存储控制单元20C中编号为11和12的对。应当注意的是此处所描述的对号是对于该存储系统100唯一的示范性号码。
组信息表Gt1由管理服务器50、主机51、以及虚拟化设备52所拥有。在这点上,会考虑组信息表Gt1与交换路径软件Mc100之间的配置关系。如果管理服务器50具有组信息表Gt1,那么主机51或虚拟化设备52具有交换路径软件Mc100。如果主机51具有卷对信息管理表Ct1,那么主机51同样具有交换路径软件Mc100。类似地,如果虚拟化设备52具有组信息表Gt1,那么虚拟化设备52同样具有交换路径软件Mc100。在一些情况下,存储控制单元20可以引用或查询组信息表Gt1的内容。
接下来会讨论用于传送组中的一个对的处理。例如,当编号为0到6的对,即0号组中的部分对,是传送对象而存储控制单元20B是传送目的地时,利用上述方法来执行对于该0到6的对的传送处理,用于组信息表Gt1中编号为0的组的存储控制单元是20A和20B,且记录包含在相应的单元20A和20B之内的对号。跨越存储控制单元20而传送的对(例如,仅为次卷传送)是以两个对号来表示的。这被例示成编号为6的对,其具有存储控制单元20A和20B之间的一个对,如图20中所示。
象之前所讨论的,可以以这样一种方式来使用一个对,即象复制逻辑卷那样曾经已获得了一致性的对被分离且被单独地使用。这里对于该组的分离请求是分离属于该组的对的请求。例如,该请求是通过为每个组发布一个偶尔分离命令或向该组中的对之一发布偶尔分离命令来实现的。“偶尔分离命令”是一个用于以同步方式在预定时间分离多个对的函数。偶尔分离命令是一个用于执行该函数的命令。
图21A是示出一种用于当该组被存储在单个存储控制单元20A中时执行来自主机的分离请求的方法的示意图,其中向该组发布偶尔分离命令。图21B是示出相同方法的示意图,其中向该组中的对之一发布偶尔分离命令。
在图21A中,存储控制单元20A接收对于一个组的偶尔分离命令,然后执行用于同时分离属于该组的所有对的处理。相反在图21B中,存储控制单元20A接收对于一个对的偶尔分离命令,以及如果接收该命令的对属于一个组,那么指定该组并且执行该命令以同时分离属于该组的所有对(包括接收该命令的对及其他对)。
如果该组跨越多个存储控制单元20而存在,那么主机51利用该组信息表Gt1来执行一个处理以向包括该组的所有存储控制单元20发布偶尔分离命令,如图22中示意性地示出的,与如图21所示的向仅仅一个存储控制单元20A发布该命令的主机51相反。当编号为0的组跨越存储控制单元20A和20B而存在时,主机51向存储控制单元20A、20B每一个发布用于0号组的偶尔分离命令以便执行该处理以同时分离属于0号组的所有对。图22A示出了对于向该组发布偶尔分离命令的方法。图22B是示出用于向该组中的对之一发布偶尔分离命令的方法。
在图22A中,主机51向包括该组的存储控制单元20中的相应对象组发布偶尔分离命令。在这种情况下,存储控制单元20A、20B均接收对于一个组的偶尔分离命令,并执行用于同时分离属于该组的所有对的处理。相反,在图22B中,主机51向包括该组的所有存储控制单元20中的相应对象组中的对之一发布偶尔分离命令。在这种情况下,存储控制单元20A、20B均接收对于一个对的偶尔分离命令,并且如果接收该命令的对属于一个组,那么指定该组并且执行该处理以同时分离属于该组的所有对。为了在存储控制单元20中同时实现分离处理,例如需要主机51在偶尔分离命令中预置用于执行该分离处理的时间,然后存储控制单元20A、20B都在预定时间执行该分离处理。
接下来会讨论当一个组跨越存储控制单元20而存在时要执行的处理。这里,处理的范围是从利用组信息表Gt1以识别该命令要向哪个存储控制单元20发布(是否是向多个存储控制单元20)到发布该命令。该处理被认为在如上所述的图21A到22B的范围之内。以下将对当主机51包括组信息表Gt1时要执行的处理步骤进行讨论,参考图23。
(1)根据来自主机51(或MSVP80、SVP81(参见图2))的指令,组#0中的对之一被从存储控制单元20传送到存储控制单元20B。如图11中的流程图所描述的那样,执行关于该对传送的处理。
(2)当对传送完成时,主机51更新组信息表Gt1。
(3)主机51(或MSVP80、SVP81)从用户处接收请求以分离整个组#0(偶尔分离命令)。
(4)主机51检索组信息表Gt1以确定偶尔分离命令应该向哪个存储控制单元20发布。在这个例子中,该命令是向存储控制单元20A和20B发布。
(5)存储控制单元20A、20B同时执行对于组#0中的所有对的分离处理,例如根据偶尔分离命令中预置的分离处理时间。
这些处理可以得到象一个对那样的一致性,同时保持复制逻辑卷中的组属性。具体地说,允许保持属于一个组的数据之间的相互一致,以及保证对分离中的同步性(以及,从而一致性)。
《虚拟区中的卷的传送处理》上述实施例讨论了一种包括在次卷中获得与主卷相同的容量的方法,其中全部数据被拷贝到该次卷以创建一个对。接下来将描述作为另一个实施例一种在下述的复制逻辑卷对的情况中的传送处理,其中次卷是具有称为“池”的虚拟区(以下简称“池区”)的虚拟卷,其仅存储不同于主卷的位置的数据而不获得具有与主卷相同的容量的数据区。
当次卷利用虚拟卷时,地址映射表用来管理次卷中相应位置(地址)的数据被存储在哪里。对于具有与主卷相同的数据的位置,主卷中的地址被表示为存储目标数据的位置。对于具有与主卷不同的数据的位置,则指示存储该数据的池区中的地址。地址映射表存在用于每个快照产生(对分离时间)的一项。池区存在于存储控制单元20或外部存储控制单元70中的磁盘设备24中(参见图1)。地址映射表处于存储控制单元20或外部存储控制单元70中的公用内存22中(参见图1)。
图24是示出地址映射表的例子的示意图。地址映射表At1s是一个关于给定对的次卷的表,包括卷地址和实际数据存储地址。例如,卷地址包括在一种容量的卷中的所有地址,其是LBA(Logical Block Addresses,逻辑块地址)。实际数据存储地址是每个为其每个卷地址存储与该卷地址相对应的次卷数据的位置。如图24所示,例如,具有卷地址编号为0和1的数据被分别存储在池区中的地址10011和主卷(P-VOL)的相同地址。只要它可以管理存储快照数据的地址,地址映射表就可具有另一种配置。
在一些情况下主卷也可以使用虚拟卷。不仅主卷而且具有实体的普通的卷(以下简称实际卷)都可以预先获得存储器的预定容量。换句话说,作为具有存储器的预定容量的实体(不管其中是否写入任何数据)而存在的数据区可包括一个未使用的区(不具有已写数据)。为删除这种未使用的数据区,向池区分配具有实际上写入主卷的数据的容量的存储区。
通过使用与图24中的地址映射表Atls相同格式的地址映射表Atlp(未示出)而管理该存储区。卷地址可以是为主卷容量全部地址而准备的,也可以因所使用的量而增加的。实际数据存储地址是池区中的地址,其中存储与卷地址相对应的数据。当在一种容量的卷中卷地址包括所有地址时,一些卷地址可能是未使用的因而无效其实际数据存储地址。当卷地址被使用时,其实际数据存储地址全部有效。当主和次卷都是虚拟卷时,利用池区的地址而不是“P-VOL”格式来设置实际数据存储地址,如图24所示。
<传送处理概述>
接下来将要讨论在下述情况下的传送处理,其中主次卷分别是实际卷和虚拟卷。
(1)仅传送特定对用于利用存储系统100中的池区创建一个对的实施例包括一种外部存储控制单元70包括主卷和池区的方法,图25示出了用于实现该方法的结构。存储控制单元20A中的对创建次卷作为虚拟卷。为了向存储控制单元20B传送该对,执行一种处理用于在存储控制单元20(正如以上的讨论)之间切换主/次卷,以及次卷地址映射表Atls被从存储控制单元20A传送到存储控制单元20B。当完成从存储控制单元20中传送地址映射表Atls时,存储控制单元20B读出池区中的数据并且开始对于该主/次卷的I/O处理。
(2)传送整个池区如果希望传送的卷在一个对中并且次卷是虚拟卷,那么可以考虑传送整个池区。在这种情况下,执行一种处理以传送池区中的所有对。
接下来将描述当主次卷是虚拟卷的情况下的传送处理。在这种情况下,对该主卷和次卷都执行对于次卷的处理。如果池区存在于存储控制单元20中,为了向作为传送目的地的存储控制单元20传送整个池区,池区中的数据和地址映射表Atlp、Atls被拷贝到那里。
<快照传送中的变化>
对于当该对包括虚拟卷时的快照,存在两种虚拟卷变化主/次卷是虚拟卷,以及次卷是虚拟卷。还有,在传送对象中有三种变化次卷、单个对(主次卷)、以及整个池区(池区中的全部对)。因此,当该对包括虚拟卷时,快照传送得出6(=2×3)种变化。以下讨论是关于对每种变化的处理,假设该池区存储在外部存储控制单元70中。池区可被存储在每个存储控制单元20中并在其之间被传送。
从存储控制单元20A到20B,传送次卷的地址映射表Atls。存储控制单元20B利用从存储控制单元20A传送的地址映射表Atls以引用并更新池区中的数据。因为主/次卷是虚拟卷,所以所有数据都在该池区中。关于主卷,存储控制单元20A包括对于该主卷的地址映射表Atlp。对于主卷的引用是经由SAN41而从存储控制单元20B中进行的。
从存储控制单元20A到20B,分别传送主次卷的地址映射表Atlp和Atls。存储控制单元20B利用从存储控制单元20A传送的地址映射表Atlp、Atls以引用并更新池区中的数据。因为主/次卷是虚拟卷,所以所有数据都在该池区中。
为了传送池区中的全部对,与该池区有关的地址映射表全部地被传送。如果该地址映射表Atlp、Atls被包含于其中,则从存储控制单元20A或从外部存储控制单元7中拷贝这些表。
从存储控制单元20A到20B,传送次卷的地址映射表Atls。在次卷数据中,对于数据实体存在于主卷中的那个位置(卷地址),修改地址映射表Atls中的实际数据存储地址以便可以指定存储主卷和卷号的存储控制单元。存储控制单元20B利用从存储控制单元20A传送的地址映射表Atls,并且如果池区包含所有数据,那么引用并更新该数据,以及如果主卷包含所有数据,那么经由SAN41引用并更新存储控制单元20A中的数据。
如果主卷的实体存在于外部存储控制单元70中,那么重新连接SAN43,或者如果该实体是存储控制单元20A的内部卷,那么数据被拷贝并经由SAN41而传送。接下来,次卷的地址映射表Atls被从存储控制单元20A向20B传送。在次卷数据中,对于主卷中的位置(卷地址),地址映射表Atls中的信息按现状被使用。也就是说,存储控制单元20B利用从存储控制单元20A传送的地址映射表Atls以引用该次卷数据。如果池区或者主卷包括所有数据,那么存储控制单元20B引用并更新该相应的数据。
为了传送池区中的全部对,与该池区有关的地址映射表全部地被传送。地址映射表Atls可能是从存储控制单元20A传送的。当地址映射表Atls处于外部存储控制单元70中时,对其进行引用。如果主卷的实体处于外部存储控制单元70中,那么重新连接SAN43。如果该实体是存储控制单元20A的内部卷,那么数据被拷贝并经由SAN41而传送。存储控制单元20B利用从存储控制单元20A传送的地址映射表Atls,并且如果池区包含所有数据,那么引用并更新该数据,以及如果主卷包含所有数据,那么经由SAN41引用并更新该数据。
如上所述,在存储控制单元20之间的传送能够象复制逻辑卷那样被执行,不考虑主卷是否是虚拟卷或者主卷和次卷是否都是虚拟卷。当池区存储在外部存储控制单元70中时,特别是,不需要在存储控制单元20之间传送池区,因而能够快速地传送该虚拟卷。
虽然前面已经描述了本发明的实施例,但是本发明实施例的存储系统被认为是通过将图1中所示的存储系统分别执行的程序记录在计算机可读的记录介质中以及通过使计算机系统读取并且执行记录在这个记录介质中的程序来实现的。可以安排该程序经由诸如互联网之类的网络而被提供给计算机系统。
《其他实施例》虽然上面描述了本发明优选实施例的例子,但是本发明不会受其限制,而在落入本发明要点的范围内可以做出适当的改变。例如,以下实施例是可能的。
(1)虽然在实施例的上述描述中,象要在存储控制单元之间传送的逻辑卷那样而处理了其中整个逻辑卷彼此匹配的复制逻辑卷,但是仍然可以代之以处理具有相同属性(例如每个逻辑卷中的一部分数据)的逻辑卷。也就是说,具有某种数据的逻辑卷和具有那些某种数据的复制的逻辑卷可以是要在存储控制单元之间受到传送的。
(2)当要在存储控制单元之间传送的卷属于包括两个或更多个对的组时,数据内容不必须是彼此匹配的,并且这些对或组可以在数据属性(例如,数据的部分范围)方面匹配。同样应用于(1)的每个逻辑卷中的部分数据。
(3)虽然在上述实施例中,主次复制逻辑卷都存在于外部存储控制单元70中,但是其他的逻辑卷配置同样是可能的。例如,其中两个复制逻辑卷存在于存储控制单元20中的配置是可能的。还有,其中一个复制逻辑卷存在于存储控制单元20中而另一个存在于外部存储控制单元70中的配置是可能的。
在这种情况下,其中至少一个复制逻辑卷存在于存储控制单元20内(是内部逻辑卷),当图11的S1165的内部逻辑卷紧急降级结束时,开始内部逻辑卷的数据传送。这里,数据传送指的是经由SAN41从传送源存储控制单元20A向传送目的地存储控制单元20B的数据的传送。在数据传送期间,在存储控制单元20A借助于数据传送结束位置信息而管理传送结束时数据所到达的内部逻辑卷的那个位置。当在存储控制单元20B侧接收了新的I/O时,存储控制单元20A侧的数据传送结束位置信息被引用,而如果I/O请求的主题的数据传送已经结束,则存储控制单元20B将该数据写入正在被传送或已经被传送到单元本身的逻辑卷。如果数据传送还没有结束,则在写入存储控制单元20A的逻辑卷之后执行数据传送或者受I/O请求的数据首先被传送到存储控制单元20B并之后执行写入。
通过以上所述,不仅复制逻辑卷而且具有上述的关系中的任一种的一对或一组逻辑卷均可在两个或多个存储控制单元之间受到传送。从而存储系统可根据存储控制单元的增加、减少或者负载分配而更加灵活地投入使用。
(4)虽然上述实施例已经分别描述了对于跨越多个存储控制单元20的一个组的处理,以及对于当主/次卷都是虚拟卷或者次卷是虚拟卷时的处理,但是这些处理提供了对于独立卷的设置方法并且可被同时施加到两个或更多的复制逻辑卷。
权利要求
1.一种逻辑卷传送方法,由此,在下述系统中,所述系统包括存储系统,具有逻辑上由多个存储控制单元来管理的逻辑卷,作为相应的存储控制单元中或者连接到存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个的存储控制单元,这些逻辑卷在两个或多个存储控制单元之间被传送,其中在两个或多个存储控制单元之间传送这些逻辑卷中,包含地传送另一个逻辑卷,其与这些逻辑卷形成一个对或者一个两对或更多对的组。
2.根据权利要求1的逻辑卷传送方法,其中当逻辑卷包括复制逻辑卷时,复制逻辑卷的实体存在于外部存储控制单元中,以及要从已经利用其设置了到虚拟化设备的一条路径的第一存储控制单元向没有利用其设置该路径的第二存储控制单元传送复制逻辑卷的主逻辑卷和次逻辑卷,执行以下步骤虚拟化设备设置一条到第二存储控制单元的路径;第二存储控制单元准备表示主逻辑卷和次逻辑卷之间的数据差异的差异位图,以便接收访问请求;当完成差异位图的准备时,虚拟化设备进行设置以便不是向第一存储控制单元而是向第二存储控制单元做出对于该逻辑卷的访问请求;第二存储控制单元向第一存储控制单元移交从虚拟化设备接收的该访问请求;第一存储控制单元处理从第二存储控制单元接收的访问请求以在磁盘设备中反映该访问请求;第一存储控制单元执行一个紧急降级,将逻辑卷的高速缓冲存储器中的数据存储到磁盘设备中;以及当紧急降级结束时,第二存储控制单元与外部存储控制单元相连接并且不是向第一存储控制单元而是向外部存储控制单元移交从虚拟化设备所接收的访问请求。
3.根据权利要求2的逻辑卷传送方法,其中当对于复制逻辑卷而言,复制逻辑卷的次逻辑卷是另一个复制逻辑卷的主逻辑卷时,复制逻辑卷的主逻辑卷和次逻辑卷以及另一个复制逻辑卷的次逻辑卷被传送给同一个第二存储控制单元。
4.根据权利要求2的逻辑卷传送方法,其中当对于复制逻辑卷,正在从主逻辑卷向次逻辑卷的拷贝进行中时,执行拷贝并且主逻辑卷和次逻辑卷被传送到第二存储控制单元。
5.根据权利要求2的逻辑卷传送方法,其中当对于复制逻辑卷,在主逻辑卷被传送到第二存储控制单元之后在第二存储控制单元中执行从主逻辑卷向次逻辑卷的拷贝。
6.根据权利要求1的逻辑卷传送方法,其中当逻辑卷包括复制逻辑卷时,在当前存储控制单元中留下复制逻辑卷的主逻辑卷,而将次逻辑卷传送到另一个存储控制单元。
7.根据权利要求6的逻辑卷传送方法,其中首先执行构成拷贝,然后将所述主逻辑卷传送到另一个存储控制单元,其中借助构成拷贝可将所有数据从主逻辑卷拷贝到次逻辑卷。
8.根据权利要求1的逻辑卷传送方法,其中当逻辑卷包括复制逻辑卷时,判断在向另一个存储控制单元传送主逻辑卷之后,在该另一个存储控制单元中是否要执行从主逻辑卷到次逻辑卷的拷贝。
9.根据权利要求1的逻辑卷传送方法,其中当逻辑卷包括复制逻辑卷时,如果次逻辑卷按预定计划会变得不必要,则根据该预定计划而确定是否要传送该逻辑卷。
10.根据权利要求1的逻辑卷传送方法,其中虚拟化设备是主机、开关或者专用设备。
11.根据权利要求1的逻辑卷传送方法,其中连接到存储系统的管理服务器仲裁传送逻辑卷的时间。
12.根据权利要求1的逻辑卷传送方法,其中通过在两个或多个存储控制单元之间的通信而仲裁传送该逻辑卷的时间。
13.一种逻辑卷传送方法,由此,在下述系统中,所述系统包括存储系统,具有逻辑上由多个存储控制单元来管理的逻辑卷,作为相应的存储控制单元中或者连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个的存储控制单元;这些逻辑卷在两个或多个存储控制单元之间被传送,其中在两个或多个存储控制单元之间传送这些逻辑卷中,包含地传送另一个逻辑卷,所述另一个逻辑卷具有利用这些逻辑卷中的数据形成一个对或者两个或更多对的一个组的另一数据。
14.根据权利要求13的逻辑卷传送方法,其中,当所述逻辑卷的数据包括复制数据时,具有主数据的逻辑卷和具有次数据的逻辑卷被传送到相同的存储控制单元。
15.根据权利要求13的逻辑卷传送方法,其中,当利用所述逻辑卷中的数据形成所述对或者所述组的所述另一数据被存储在虚拟区或者逻辑卷中时,传送目的地存储控制单元还获得所述另一数据被传送到的虚拟区或逻辑卷。
16.根据权利要求13的逻辑卷传送方法,其中,当所述逻辑卷的数据包括复制数据时,具有主数据的逻辑卷被留在当前存储控制单元中而具有次数据的逻辑卷被传送到另一个存储控制单元。
17.根据权利要求16的逻辑卷传送方法,其中首先执行构成拷贝,然后将该具有次数据的逻辑卷传送到另一个存储控制单元,其中借助构成拷贝可将所有数据从主逻辑卷拷贝到次逻辑卷。
18.根据权利要求13的逻辑卷传送方法,其中,当所述逻辑卷的数据包括复制数据时,判断在具有主数据的逻辑卷被传送到另一个存储控制单元之后是否要执行从具有主数据的逻辑卷向具有次数据的逻辑卷的拷贝。
19.一种逻辑卷传送方法,由此,在下述系统中,所述系统包括存储系统,具有逻辑上由多个存储控制单元来管理的逻辑卷,作为相应的存储控制单元中或者连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个的存储控制单元;这些逻辑卷在两个或多个存储控制单元之间被传送,其中如果由第一存储控制单元管理的逻辑卷包括复制逻辑卷、形成一个组的两套或更多套复制逻辑卷,那么当从第一存储控制单元向第二存储控制单元传送该组的一部分复制逻辑卷时,虚拟化设备利用预定表以管理包括跨越第一和第二存储控制单元的复制逻辑卷的一个组。
20.如权利要求19中的逻辑卷传送方法,其中当从第一存储控制单元向第二存储控制单元传送所述组的复制逻辑卷的一部分时,仅关于该复制逻辑卷的又一部分而传送次卷。
21.如权利要求19中的逻辑卷传送方法,其中虚拟化设备将用于由所述组分离复制逻辑卷的分离请求向每个存储控制单元中的一个组发布;以及其中,当从虚拟化设备接收该分离请求时,存储控制单元执行用于分离属于该组的所有复制逻辑卷的处理。
22.如权利要求19中的逻辑卷传送方法,其中,虚拟化设备向每个存储控制单元中的复制逻辑卷发布用于由该组分离复制逻辑卷的分离请求;以及其中,当从虚拟化设备接收分离请求时,存储控制单元指定复制逻辑卷所属的那个组并执行用于分离属于该组的所有复制逻辑卷的处理。
23.一种逻辑卷传送方法,由此,在下述系统中,所述系统包括存储系统具有逻辑上由多个存储控制单元管理的逻辑卷,作为在相应的存储控制单元中或在连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备标识该多个存储控制单元作为单个的存储控制单元;这些逻辑卷在两个或多个存储控制单元之间被传送,其中存储控制单元作为没有预先获得具有全部容量的数据区的虚拟逻辑卷在逻辑上管理用于在该虚拟逻辑卷中存储部分或所有数据的虚拟区以及用于为该虚拟逻辑卷中的每个地址管理数据存储位置的地址映射表,其中由该第一存储控制单元管理的逻辑卷包括复制逻辑卷、以及在该复制逻辑卷中,次逻辑卷是虚拟逻辑卷;以及其中,当从第一存储控制单元向第二存储控制单元传送该复制逻辑卷时,从第一存储控制单元向第二存储控制单元传送关于该次逻辑卷的虚拟区及地址映射表的管理。
24.如权利要求23中的逻辑卷传送方法,其中,在该复制逻辑卷中,主次逻辑卷都是虚拟逻辑卷;以及其中,当从第一存储控制单元向第二存储控制单元传送该复制逻辑卷时,从第一存储控制单元向第二存储控制单元传送关于该主次逻辑卷的虚拟区及地址映射表的管理。
25.如权利要求23中的逻辑卷传送方法,其中如果由第一存储控制单元管理的虚拟区或地址映射表存储在第一存储控制单元中,那么当从第一存储控制单元向第二存储控制单元传送复制逻辑卷时,从该第一存储控制单元向第二存储控制单元传送该虚拟区或地址映射表。
26.如权利要求23中所请求的逻辑卷传送方法,其中如果由第一存储控制单元管理的虚拟区或地址映射表存储在外部存储控制单元中,那么当从第一存储控制单元向第二存储控制单元传送复制逻辑卷时,第二存储控制单元引用并更新外部存储控制单元中的虚拟区或地址映射表。
27.一种存储网络系统,包括存储系统,其具有由多个存储控制单元逻辑上管理的逻辑卷,作为在相应的存储控制单元中或在连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个的存储控制单元,其中逻辑卷在两个或多个存储控制单元之间被传送,包括利用该逻辑卷形成一对或者两个或更多对的一组的另一逻辑卷。
28.根据权利要求27的存储网络系统,其中当逻辑卷包括复制逻辑卷时,复制逻辑卷的实体存在于外部存储控制单元中,以及要从已经利用其设置了到虚拟化设备的一条路径的第一存储控制单元向没有利用其设置该路径的第二存储控制单元传送复制逻辑卷的主逻辑卷和次逻辑卷,虚拟化设备设置一条到第二存储控制单元的路径第二存储控制单元准备表明主逻辑卷和次逻辑卷之间的数据差异的差异位图,以便接收访问请求;当完成差异位图的准备时,虚拟化设备设置以便不是向第一存储控制单元而是向第二存储控制单元做出对该逻辑卷的访问请求;第二存储控制单元向第一存储控制单元移交从虚拟化设备所接收的该访问请求;第一存储控制单元处理从第二存储控制单元接收的访问请求以在磁盘设备中反映该访问请求;第一存储控制单元执行将该逻辑卷的高速缓冲存储器中的数据存储到磁盘设备中的紧急降级;以及当紧急降级结束时,第二存储控制单元与外部存储控制单元相连接并且不是向第一存储控制单元而是向外部存储控制单元移交从虚拟化设备所接收的访问请求。
29.一种存储网络系统,包括存储系统,具有由多个存储控制单元在逻辑上管理的逻辑卷,作为在相应存储控制单元中或连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个存储控制单元,其中如果由第一存储控制单元管理的逻辑卷包括复制逻辑卷、形成一个组的两套个或更多套复制逻辑卷,那么当从第一存储控制单元向第二存储控制单元传送该组的一部分复制逻辑卷时,虚拟化设备利用预定表以管理包括跨越第一和第二存储控制单元的复制逻辑卷的一个组。
30.一种存储网络系统,包括存储系统,其具有逻辑上由多个存储控制单元管理的逻辑卷,作为在相应存储控制单元中或连接到该存储控制单元的外部存储控制单元中的实体;以及虚拟化设备,标识该多个存储控制单元作为单个存储控制单元,其中存储控制单元作为没有预先获得具有全部容量的数据区的虚拟逻辑卷在逻辑上管理用于在该虚拟逻辑卷中存储部分或所有数据的虚拟区以及用于为该虚拟逻辑卷中的每个地址管理数据存储位置的地址映射表;其中由该第一存储控制单元管理的逻辑卷包括复制逻辑卷、至少复制逻辑卷的次逻辑卷是虚拟逻辑卷;以及其中,当从第一存储控制单元向第二存储控制单元传送复制逻辑卷时,从第一存储控制单元向第二存储控制单元传送至少关于该次逻辑卷的虚拟区及地址映射表的管理。
全文摘要
本发明在包括多个存储控制单元的存储系统中的两个或多个存储控制单元之间传送复制逻辑卷。为了从存储控制单元20A向存储控制单元20B传送复制逻辑卷,虚拟化设备52设置一条到存储控制单元20B的路径。此后存储控制单元20B准备差异位图以便接收访问请求。当所述准备完成时,虚拟化设备52向存储控制单元20B做出访问请求。此后存储控制单元20B向存储控制单元20A移交该访问请求。随后,存储控制单元20A执行一种处理以便在磁盘设备24中反映该访问请求并且执行将高速缓冲存储器中的数据存储到磁盘设备24中的紧急降级。当紧急降级结束时,存储控制单元20B连接外部存储控制单元70并且向外部存储控制单元70移交访问请求。
文档编号G06F12/08GK1936819SQ20061012892
公开日2007年3月28日 申请日期2006年9月4日 优先权日2005年9月20日
发明者里山爱, 江口贤哲, 山本康友 申请人:株式会社日立制作所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1