CN103179053A - 用于提供数据管理服务的***和方法 - Google Patents

用于提供数据管理服务的***和方法 Download PDF

Info

Publication number
CN103179053A
CN103179053A CN2012101877986A CN201210187798A CN103179053A CN 103179053 A CN103179053 A CN 103179053A CN 2012101877986 A CN2012101877986 A CN 2012101877986A CN 201210187798 A CN201210187798 A CN 201210187798A CN 103179053 A CN103179053 A CN 103179053A
Authority
CN
China
Prior art keywords
port
starter
storage system
switch
name
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012101877986A
Other languages
English (en)
Other versions
CN103179053B (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.)
Union Information Technology (Nanjing) Co., Ltd.
Original Assignee
Liu Chang International Co 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 Liu Chang International Co Ltd filed Critical Liu Chang International Co Ltd
Publication of CN103179053A publication Critical patent/CN103179053A/zh
Application granted granted Critical
Publication of CN103179053B publication Critical patent/CN103179053B/zh
Active 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Small-Scale Networks (AREA)
  • Multi Processors (AREA)

Abstract

由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来识别存储***的目标端口的目标全球端口名称。在第一注册过程中,基于目标全球端口名称向该交换机注册该设备的第一端口。在第二注册过程中接收与目标端口相关联的服务器的启动器端口有关的注册信息。基于注册信息来确定服务器的启动器端口的启动器全球端口名称。基于启动器端口的启动器全球端口名称来识别与启动器端口相关联的存储***中的存储卷。

Description

用于提供数据管理服务的***和方法
技术领域
本说明书大体而言涉及用于存储和管理数据的***和方法,且特定而言涉及关于维持在存储***中的数据提供数据管理服务的***和方法。
背景技术
电子数据的存储,且更一般而言,电子数据的管理变得越来越重要。随着因特网和特别地云计算的增长,对数据存储容量和高效管理存储数据的方法的需要持续增加。许多不同类型的存储设备和存储***目前用于存储数据,包括盘驱动,磁带驱动,光盘、独立盘冗余阵列(RAID)、基于光纤信道的存储区域网(SAN)等。
在许多企业级存储***中,有益地向现有存储***添加数据管理服务以执行一种或多种所需任务。举例而言,在许多存储***中可有益地添加拷贝数据,执行数据图像的快照,备份数据,复制数据,执行从一个存储设备或***向另一存储设备或***数据迁移的功能。通常需要安装任何额外功能来执行这样的服务而不造成存储***操作的任何中断。
发明内容
根据一实施例,提供用于提供数据管理服务的方法。由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来识别存储***的目标端口的目标全球端口名称。在第一注册过程中,基于目标全球端口名称向该交换机注册该设备的第一端口。在第二注册过程中,接收与目标端口相关联的服务器的启动器端口有关的注册信息。基于注册信息来确定服务器的启动器端口的启动器全球端口名称。基于启动器端口的启动器全球端口名称来识别与启动器端口相关联的存储***中的存储卷。
在一实施例中,向所述设备的第一端口分配目标全球端口名称。
在另一实施例中,第二注册过程包括由启动器端口经由第一端口向所述设备注册。在一实施例中,在第二注册过程中,接收与分区到目标端口的服务器的启动器端口相关联的交换机端口标识符。
在另一实施例中,存取简单名称服务器表,简单名称服务器表对于交换机中一个或多个交换机端口中每一个识别相对应的全球端口名称。
在一实施例中,包括启动器全球端口的REPORT LUN命令传输到存储***。响应于REPORT LUN命令,从存储***接收识别启动器全球端口名称存取的存储卷的信息。
在另一实施例中,向存储***传输启动器全球端口名称所存取的存储卷有关的SCSI询问。响应于SCSI询问,接收指示存储卷的全球唯一标识符的信息。基于全球唯一标识符来做出与启动器全球端口名称相关联的两个存储卷是否相同的判断。
在一实施例中,交换机为光纤信道交换机。
根据另一实施例,提供一种位于交换机的交换机端口与存储***的目标端口之间的网络中的设备。该设备包括第一端口和处理器。该处理器被配置为识别存储***的目标端口的目标全球端口名称;且在第一向注册过程中,基于该目标全球端口名称向交换机注册第一端口。处理器还被配置为:在第二注册过程中,接收与目标端口相关联的服务器的启动器端口有关的注册信息;基于注册信息来确定服务器的启动器端口的启动器全球端口名称;以及基于启动器端口的启动器全球端口名称来识别与启动器端口相关联的存储***中一个或多个存储卷。
在另一实施例中,提供用于提供数据管理服务的方法。由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来确定连接到交换机的主机实体的启动器端口的标识符。基于标识符来识别启动器端口存取的存储***中的存储卷。关于所述识别的存储卷提供数据管理服务。标识符可为全球端口名称。
在一实施例中,数据管理服务可包括下列之一:拷贝数据,执行数据图像的快照,复制数据,执行数据迁移服务,监视向维持于存储***中的选定卷发送和从其发送的I/O命令;生成与I/O命令有关的统计;以及基于检测到预定条件来调用预定函数来执行规定的行动。
在另一实施例中,一种位于交换机的交换机端口与存储***的目标端口之间路径中的网络中的设备。该设备包括连接到交换机的第一端口;连接到存储***的第二端口;以及至少一个处理器。该处理器被配置为确定连接到交换机的主机实体的启动器端口的标识符;基于标识符来识别启动器端口存取的存储***中的存储卷;以及关于所识别的存储卷向提供数据管理服务。
在另一实施例中,提供一种仪器。该仪器包括:用于识别存储设备的目标端口的目标全球端口名称的装置;在第一注册过程中基于目标全球端口名称向交换机注册第一端口的装置;以及在第二注册过程中,接收与目标端口相关联的服务器的启动器端口有关的注册信息的装置。该仪器还包括:基于注册信息来确定服务器的启动器端口的启动器全球端口名称的装置;以及基于启动器端口的启动器全球端口名称来识别与启动器端口相关联的存储***中的存储卷的装置。
在另一实施例中,提供用于提供数据存储服务和数据管理服务的***。该***包括存储***,存储***包括:存储装置,其适于存储一个或多个存储卷;以及,至少一个目标端口,其适于传输和接收与一个或多个存储卷有关的I/O命令。该***还包括服务器,其包括至少一个启动器端口,启动器端口适于传输和接收与一个或多个存储卷有关的I/O命令。该***还包括交换机,其包括:多个交换机端口,其适于传输和接收I/O命令;以及,交换机管理器,其适于将自第一选定交换机端口的选定I/O命令导向至第二选定交换机端口。该***还包括:一种位于交换机的交换机端口与存储***的目标端口之间的路径中的器具,其中该器具适于确定服务器的选定启动器端口的标识符,基于标识符来识别选定启动器端口存取的存储***中的存储卷;以及关于识别的存储卷提供数据管理服务。
通过参考下文的发明详述和附图,本公开的这些和其它优点将会对本领域技术人员而言变得显然。
附图说明
图1示出根据一实施例可用于提供数据存储服务和数据管理服务的通信***;
图2示出根据一实施例的基于光纤信道的存储区域网(SAN)的构件;
图3示出根据一实施例的服务器的功能构件;
图4示出根据一实施例的存储***的功能构件;
图5示出根据一实施例的光纤信道交换机的功能构件;
图6示出根据一实施例的简单名称服务器表的实例;
图7示出根据一实施例可在光纤信道交换机内建立的分区配置的实例;
图8示出根据一实施例的***具的功能构件;
图9A示出根据一实施例在移除了光纤信道交换机与存储***之间的链路之后图2的基于光纤信道的SAN;
图9B示出根据一实施例在光纤信道交换机与存储***之间***了***具之后的图2的基于光纤信道的SAN;
图10为根据一实施例用于与网络构件通信的方法的流程图;
图11示出根据一实施例可用于提供数据存储服务和数据管理服务的通信***;
图12为根据一实施例提供数据管理服务的方法的流程图;以及
图13示出了可用于实施本发明的特定实施例的示例性计算机。
具体实施方式
根据各种实施例,提供了用于提供数据存储服务和数据管理服务的方法和***。在一实施例中,拦截设备***于在交换机的交换机端口与存储***的目标端口之间路径的网络中。在一实施例中,拦截设备***于存储区域网(SAN)中。拦截设备欺骗存储区域网的选定构件来获得关于存储配置的信息和存储于存储***中的数据。具体而言,由该设备识别目标端口的目标全球端口名称,且在第一注册过程中基于目标全球端口名称使得该设备的上游端口向该交换机注册。在第二注册过程中,接收识别分区到目标端口的主机实体的启动器端口的启动器全球端口名称的注册信息。可从一个或多个启动器端口接收注册信息。基于注册信息来确定启动器端口的启动器全球端口名称。对于主机实体的一个或多个启动器端口中的每一个,基于相应启动器端口的启动器全球端口名称来识别与相应启动器端口相关联的存储***中的一个或多个存储卷。以此方式,拦截设备识别主机实体存取的一个或多个存储卷。
在识别了主机实体可存取的存储卷之后,拦截设备可提供关于存储于卷中的数据的额外数据管理服务。举例而言,拦截设备可拷贝数据、执行数据快照、备份数据、复制数据、执行数据迁移操作等。
图1示出根据一实施例可用于提供数据存储服务和数据管理服务的通信***100。通信***100包括第一网络105,一个或多个客户端160-A、160-B等和一个或多个服务器135-A、135-B等。通信***100还包括第二网络115和存储***180。虽然在图1中示出了两个客户端160,在其它实施例中,通信***100可包括多于两个或少于两个客户端。同样,虽然在图1中示出了两个服务器135,在其它实施例中,通信***100可包括多于两个或少于两个服务器。
为了方便起见,在本中使用术语“客户端160”来指客户端160-A、160-B等中的任一个。因此,在本文中关于“客户端160”的任何讨论同样可应用于客户端160-A、160-B等中的每一个。同样,术语“服务器135”在本文中用于指服务器135-A、135-B中的任一个。因此,在本文中关于“服务器135”的任何讨论同样可应用于服务器135-A、135-B等中的每一个。
存储***180存储数据。举例而言,存储***180可存储任何类型的数据,包括(但不限于)文件、电子表格、图像、音频文件、源代码文件等。存储***180可不时地从另一设备接收存储规定数据的请求且响应地存储规定的数据。举例而言,存储***180可存储从服务器135接收的数据。存储***180可不时地从另一设备接收存取所存储的数据的请求且响应地向做出请求的设备提供请求的数据或者提供对所请求的数据的存取。存储***180可在提供对数据的存取之前验证做出请求的设备被授权存取所请求的数据。存储***180连接到网络115。
网络115可包括不同类型的网络中的一个或多个,诸如,基于光纤信道的存储区域网(SAN)、基于iSCSI的网络、局域网(LAN)、广域网(WAN)或无线网络。可使用其它网络。
服务器135不时地从客户端160接收对所存储的数据的请求,与存储***180通信以检索所请求的数据且向做出请求的客户端提供所请求的数据。服务器135连接到网络115且经由网络115与存储***180通信。服务器135还连接到网络105且经由网络105与客户端160通信。举例而言,服务器135可为个人计算机、工作站、大型计算机、服务器计算机、工作站等。在某些实施例中,服务器或两个或两个以上的服务器的群集可被定义为“主机实体”。
在图1的示例性实施例中,网络105可包括多种不同类型网络中的一个或多个,诸如,企业网、局域网(LAN)、广域网(WAN)或无线网络。可使用其它网络。或者,网络105可包括不同类型的网络的组合。
客户端160可为能经由网络105通信的任何计算机或其它设备。举例而言,客户端160可为(但不限于)个人计算机、膝上型计算机、平板设备、服务器计算机、大型计算机、工作站、无线设备,诸如蜂窝电话、个人数字助理等。客户端160不时地向服务器135传输对数据的请求。举例而言,客户端160可在客户端160的用户请求访问网页时,存取所存储的文件时,存取所存储的电子邮件时,存取与账户有关的存储数据时,向服务器135传输对存储数据的请求。
在一实施例中,服务器135可包括web服务器,web服务器维持网站且提供对与该网站相关联的一个或多个网页的访问。更特定而言,服务器135可向客户端160提供一个或多个基于云的服务,包括允许客户端160经由因特网远程且透明地存储数据且经由因特网存取所存储的数据的基于云的存储服务。
在其它实施例中,服务器135可提供其它类型的服务。举例而言,服务器135可包括提供对存储的文件的存取的文件服务器,提供对存储的电子邮件存取的电子邮件服务器等。
在一图示实施例中,网络115为基于光纤信道的存储区域网(SAN)。图2示出根据实施例的基于光纤信道的存储区域网(SAN)115的构件。基于光纤信道的存储区域网(SAN)115包括一个或多个服务器,包括服务器135-A和服务器135-B,存储***180和光纤信道交换机225。服务器135-A由链路271和272连接到光纤信道(FC)交换机225。服务器135-B由链路273和274连接到FC交换机225。FC交换机225由链路281和282连接到存储***180。在其它实施例中,基于光纤信道的SAN 115可具有任何类型的拓扑,包括(但不限于)点对点拓扑,仲裁环路拓扑、交换结构拓扑或其它拓扑。
在基于光纤信道的SAN 115内的某些设备包括一个或多个端口;一端口为经由网络115主动通信的实体。位于服务器135上的端口在本文中有时被称作启动器端口。位于存储器***180上的端口在本文中有时被称作目标端口。位于FC交换机225上的端口在本文中有时被称作交换机端口。在图2的图示实施例中,服务器135-A包括启动器端口I-1和I-2,且服务器135-B包括启动器端口I-3和I-4。存储***180包括目标端口T-1和T-2。FC交换机225包括交换机端口P-1、P-2、P-3、P-4、P-5和P-6。服务器135、存储***180和FC交换机225可包括比图2所示的那些更多或更少的端口。
数据经由链路传输到基于光纤信道的SAN 115内。在该图示实施例中,链路271将(服务器135-A的)启动器端口I-1连接到FC交换机225的端口P-1。链路272将(服务器135-A的)启动器端口I-2连接到FC交换机225的端口P-2。链路273将(服务器135-B的)启动器端口I-3连接到FC交换机225的端口P-3。链路274将服务器135-B的启动器端口I-4连接到FC交换机225的端口P-4。链路281将FC交换机225的端口P-5连接到存储***180的目标端口T-1。链路282将FC交换机225的端口P-6连接到存储***180的目标端口T-2。
在一实施例中,在基于光纤信道的SAN 115的构件之间的通信根据光纤信道协议(FCP)进行。举例而言,服务器135、FC交换机225和存储***180可经由网络115传输SCSI命令。
图3示出根据一实施例的服务器135的功能构件。出于示例性目的,图3示出服务器135-A的构件,但图3和下文的讨论同样适用于在通信***100中的任何服务器。服务器135-A包括服务管理器325、存储器375和启动器端口I-1和I-2。服务器135-A可包括多于两个或少于两个启动器端口。
服务管理器325控制服务器135-A内各种构件的活动。服务管理器325具有能由软件、硬件或软件与硬件的组合实施的功能流程。存储器375由服务器135-A的各种构件用于存储数据。在图3的图示实施例中,启动器端口I-1和I-2实施于位于服务器135-A中的主机总线适配器362中。服务器135-A可包括多个主机总线适配器。在其它实施例中,启动器端口I-1和I-2可实施于服务器135-A的不同构件中。服务器135-A可包括图3中未图示的构件。
图4示出根据实施例的存储***180的功能构件。存储***180包括存储管理器410、存储器475和存储装置468。存储管理器410控制存储***180的各种构件的操作。存储管理器410可包括使用多种数据存储技术中的一种或多种技术来存储数据的功能。举例而言,存储管理器410可利用虚拟化方法,使用各种RAID配置等来存储数据。存储器管理器410为能由软件、硬件或软件与硬件的组合实施的功能流程。存储器475可由存储***180的各种构件用于存储数据。存储***180还包括目标端口T-1和T-2。在一实施例中,目标端口T-1和T-2可实施于一个或多个主机总线适配器中。在一实施例中,存储管理器410和一个或多个目标端口可实施为被称作存储控制器的子***。存储***180可包括在图4中未图示的构件。
存储装置468包括能存储数据的一个或多个存储设备(未图示)。存储装置468可包括一个或多个块级存储设备、一个或多个文件级存储设备和/或其它类型的存储设备。举例而言,存储装置468可包括(但不限于)一个或多个盘驱动、光盘、磁带驱动等。存储装置468可包括独立盘冗余阵列(RAID)或多个RAID。存储装置468可包括本地和/或分布式存储装置。也可使用其它类型的存储设备。
存储于存储***180中的数据可组织为逻辑单位号(LUN),也被称作卷。在图4的图示实施例中,存储装置468包括多个卷,包括卷491和492。LUN或卷为逻辑单元且因此可包括在多个存储设备上分布的数据。
图5示出根据实施例的FC交换机225的功能构件。FC交换机225包括交换机管理器525和存储器575。交换机管理器525控制在FC交换机225内的各种构件的活动。交换机管理器525为能由软件、硬件或软件与硬件的组合实施的功能流程。存储器575由FC交换机225的各种构件用于存储控制数据。FC交换机225还包括交换机端口P-1、P-2、P-3、P-4、P-5和P-6。在一实施例中,端口P-1、P-2、P-3、P-4、P-5和P-6可使用一个或多个主机总线适配器实施。FC交换机225可包括在图5中未图示的构件。
交换机管理器525可不时地将在FC 225的第一交换机端口接收的I/O命令导向至FC交换机225的第二交换机端口。
在基于光纤信道的SAN 115内的设备上的端口连接到FC交换机225时,端口以已知注册过程或登陆过程来登陆FC交换机225或向FC交换机225注册。该设备的制造商向每个光纤信道端口分配唯一标识符,被称作全球端口名称(WWPN)。每个WWPN是唯一的六十四位数。因此,每个启动器端口I-1、I-2、I-3和I-4具有相应WWPN。在FC交换机225上的端口P-1至P-6中每一个具有相应WWPN。存储***180的目标端口T-1和T-2中每一个具有相应WWPN。
为了方便起见,启动器端口的全球端口名称在本文中被称作启动器全球端口名称且目标端口的全球端口名称在本文中被称作目标全球端口名称。但是,如上文所讨论的那样,每个全球端口名称(与其是否与启动器端口或目标端口相关联无关)为唯一六十四位数。术语启动器全球端口名称和目标全球端口名称在本文中仅为了方便起见而使用;这些术语并不反映全球端口名称的不同“类型”且也不反映全球端口名称本身的任何特征,其区分与启动器端口相关联的全球端口名称和与目标端口相关联的全球端口名称。
FC交换机225维持简单名称服务器表以在基于光纤信道的SAN115内存储关于各个端口的信息。图6示出根据一实施例的简单名称服务器表的实例。简单名称服务器表650包括存储启动器端口或目标端口的全球端口名称的列635和存储启动器端口或目标端口连接的FC交换机225的端口的标识符的列629。参看记录602,分配给启动器端口I-1的第一全球端口名称,WWPN-1,连接到PC交换机225上的端口P-1。记录604指示WWPN-2(分配给启动器端口I-2)连接到FC交换机225上的端口P-2。记录606指示WWPN-3(分配给启动器端口I-3)连接到FC交换机225上的端口P-3。记录614指示WWPN-5(分配给目标端口T-1)连接到FC交换机225上的端口P-5。
简单名称服务器表650存储于FC交换机225的存储器575中,如在图5中所示的那样。服务器135和存储***180可不时地被给予存取简单名称服务器表650。
当服务器135的启动器端口或存储***180的目标端口连接到FC交换机225上的端口时,启动器或目标端口向FC交换机225传输注册请求,也被称作纤维信道登陆请求。响应地,简单名称服务器表650更新以记录做出请求的端口的WWPN-2和FC交换机225的相对应的端口。当启动器或目标端口与FC交换机225断开连接时,简单名称服务器表650更新以反映该变化。
I/O命令
服务器135可不时地生成并向存储***180(经由FC交换机225)传输请求存储***180在规定存储卷中存储数据的输入/输出(I/O)命令。与特定存储卷有关,从服务器135上的特定启动器端口发起且计划用于存储***180的所需目标端口的I/O命令可包括(除其它数据之外):(1)对应于(即,连接到)服务器135的发起启动器端口的交换机225上的端口的标识符;(2)对应于(即,连接到)存储***180的所需目标端口的交换机225的端口上的标识符;(3)I/O命令有关的特定卷的标识符。
LUN屏蔽
有时需要限制或局限单个服务器或被定义为单个主机主体的一个或多个服务器集群对特定存储卷的存取。因此,根据一实施例,维持于存储***180中的特定卷可分配给选定服务器的所有端口(且并不到任何其它服务器上的其它端口)。在另一实施例中,对特定存储卷的存取可限于特定主机实体(其可包括多个服务器)。因此,存储卷可分配给与该主机实体相关联的每个服务器的所有端口。具体而言,卷分配给与相应启动器端口相关联的一个或多个WWPN。指示向各个启动器WWPN分配存储卷的分配信息由存储***180来维持。根据该分配,使用被称作“LUN屏蔽”的方法来准予存储***180对存储卷的存取。在下文中描述用于执行LUN屏蔽的技术的实例。
在该图示实施例中,准予服务器135-A存取图4所示的卷-1(491)(且并不到服务器135-B或任何其它服务器)。因此,卷-1(491)被分配给启动器端口I-1的WWPN且分配给服务器135-A的启动器端口I-2的WWPN。
因此,在LUN屏蔽技术中,当存储***180的存储管理器410接收规定卷-1(491)的I/O命令时,存储管理器410从I/O命令检索可用于确定发起启动器端口的WWPN的信息。如果存储卷分配给该特定WWPN,存储管理器410提供对该卷的存取。举例而言,如果I/O命令规定卷-1且在启动器端口I-1发起,存储***180验证卷-1分配给启动器端口I-1的WWPN且准予对卷-1进行存取。如果卷并未分配给发起WWPN,存储管理器410驳回I/O命令,拒绝对该卷的存取。
分区
使用被称作分区的方法,在FC交换机225的端口之间的内部路径可根据一个或多个预定政策来配置。举例而言,FC交换机225可被配置为确保交换机225的第一端口仅链接或分区到交换机225的规定的第二端口。或者,FC交换机225可被配置为确保FC交换机225的第一规定端口分区到FC交换机225的两个或两个以上的端口。图7示出根据一实施例可在FC交换机225内建立的分区配置的实例。在图7的图示实施例中,端口P-1经由内部路径771分区到端口P-5,端口P-2经由内部路径772分区到端口P-5且经由内部路径773到端口P-6,端口P-3经由内部路径774分区到端口P-6,且端口P-4经由内部路径775分区到端口P-6。可使用不同于图7所示的分区布置的其它分区布置。根据被称作硬分区的一个分区方法,基于交换机端口建立分区。
在被称作软分区的分区方法中,通过限定服务器135的启动器端口与存储***180的目标端口之间的关系来在FC交换机225内建立分区配置。服务器135的启动器端口可分区到存储***180的目标端口,尽管在各个端口之间有物理连接。在图示实施例中(参看图2和图7),服务器135-A的启动器端口I-1可仅分区到存储***180的目标端口T-1,具体地从启动器端口I-1经由链路271到FC交换机225的端口P-1,然后经由内部路径771在内部到FC交换机225的端口P-5,然后到存储***180的目标端口T-1。因此,服务器135-A的启动器端口I-1能仅向存储***180的目标端口T-1传输数据和从其接收数据。应当指出的是虽然在此实例中启动器端口I-1连接到FC交换机225的端口P-1和P-5,启动器端口I-1可使用软分区方法基于各个端口的WWPN而不是物理端口连接到任何其它交换机端口。
在该图示实施例中,服务器135-A的启动器端口I-2分区到存储***180的两个目标端口。具体而言,启动器端口I-2通过从启动器端口I-2经由链路272到FC交换机225的端口P-2,然后经由内部路径772在内部到FC交换机225的端口P-5,然后经由链路281到存储***180的目标端口T-1的第一路径分区到目标端口T-1。启动器端口I-2通过从启动器端口I-2经由链路272到FC交换机225的端口P-2,然后经由内部路径773在内部到FC交换机225的端口P-6,然后经由链路282到存储***180的目标端口T-2的第二路径分区到存储***180的目标端口T-2。因此,服务器135-A的启动器端口I-2能仅向存储***180的目标端口T-1和T-2传输数据和从其接收数据。如上文所讨论的那样,分区配置可基于各个端口的WWPN使用软分区方法而改变,尽管在各个端口之间按有物理连接。
多路径功能
在一实施例中,服务器135-A包括确定由FC交换机225内的特定分区配置限定的路径之间的关系以及在存储***180内的LUN屏蔽和维持于存储***180内的各种卷的功能。举例而言,参看图3,服务器135-A的服务管理器325可包括多路径功能。或者,这样的功能可由驻留于服务器135-A上的单独软件应用程序来实施。这样的软件应用程序有时被称作多路径软件应用程序。
在该图示实施例中,服务管理器325使用多路径功能来检查在服务器135-A与存储***180之间的所有可用路径(考虑在FC交换机225内建立的任何内部分区和在存储***180内建立的LUN屏蔽)且识别可经由每个相应路径存取的每个存储卷。因此,服务管理器325确定启动器端口I-1分区到存储***180的仅一个目标端口T-1。服务管理器325还确定此特定路径允许对一个特定存储卷进行存取。服务管理器325额外地确定启动器端口I-2分区到存储***180的两个端口T-1和T-2。服务管理器325还确定这些路径中的每一个允许对一个存储卷进行存取。这个确定可基于与服务器135的相应启动器端口相关联的全球端口名称和基于LUN屏蔽来执行。
由服务管理器325获得的关于哪些卷可由每个相应启动器端口存取的信息可为不明确的且不能规定许多唯一卷可由各个启动器端口存取。
服务管理器325使用多路径功能来调解可存取的存储卷以确定实际上多少唯一存储卷可由启动器端口I-1和I-2存取。在该图示实施例中,服务管理器325检查在服务器135-A与存储***180之间的三个限定路径中的每一个且确定三个路径能对相同卷-1(491)进行存取,而不是对三个不同的存储卷进行存取。
使用多路径功能的额外方面,服务管理器325根据需要将服务器135-A与存储***180之间的通信量从第一路径重新引导到第二路径以确保关于特定存储卷的连续通信。举例而言,如果服务管理器325检测到在FC交换机225与存储***180之间的链路281上的数据流动中断,中断与卷-1(491)有关的通信,服务管理器325可重新导向与卷-1(491)有关的所有通信到能存取卷-1(491)的另一可用路径,诸如源自利用链路282的启动器端口I-2的路径。
***具
在许多企业级存储***中,向现有存储***添加数据管理服务是适用的。举例而言,常常适用地添加拷贝数据,执行数据图像的快照,备份数据,复制数据,执行从一个存储设备或***向另一存储设备或***数据迁移的功能。优选地,添加这样的功能,而不会造成存储***操作的任何中断。
一种解决方案是向服务器或主机实体添加功能。举例而言,专业驱动器(例如,软件应用程序)可安装于服务器中以拦截传输到存储***的I/O命令。但是,由于多种原因,这种解决方案是不利的。在服务器上安装软件造成安装的应用程序的任何问题可减缓或甚至造成服务器崩溃的风险。这个办法的另一问题在于必须创造适合于在各种服务器上所用的操作***平台的不同的软件。创造用于不同服务器上的不同驱动器是低效的且不合需要的。
本发明者确定了一种解决方案,其包括用于在光纤信道交换机与存储***之间的数据路径中***具有透明地拦截所有I/O命令且关于存储于存储***中的数据提供数据管理服务的设备或器具。本发明者还确定了一种解决方案,其包括用于透明地执行这样的设备或器具***的***和方法,而无需中断存储***的操作且无需任何***停机时间。
因此,在一实施例中,***具***于FC交换机225的选定端口与存储***180的选定目标端口之间。***具确定存储***180的选定目标端口的WWPN,确定服务器的每个启动器端口的WWPN或者被分区到存储***180的选定目标端口的主机实体,且识别被分配到服务器或主机实体的每个相应WWPN的存储***中的所有存储卷。
图8示出根据一实施例的***具890的功能构件。***具890包括***流程810、存储器815和数据管理服务848。***流程810控制***具890的各种构件的操作。***流程810为能由软件、硬件或软件与硬件的组合实施的功能流程。存储器815由***具890的各个构件用于存储数据。***具890还包括***端口846和847。***端口846和847可使用一个或多个主机总线适配器来实施。
在一实施例中,***具890包括计算机。也可使用其它类型的处理设备。
***具890可使用多种方法中的任一方法***于FC交换机225的选定端口与存储***180的目标端口之间。举例而言,在图示实施例中,移除了在FC交换机225的端口P-5与存储***180的目标端口T-1之间的链路281,如图9A所示的那样。
在服务器135中的多路径功能确保了关于维持于存储***180中的任何卷,移除链路281不会中断数据流动。举例而言,服务器135的服务管理器325可检测到链路281移除且确定启动器端口I-1不再与存储***180通信。服务管理器325可使用多路径功能来确定与卷-1有关的任何I/O命令可从启动器端口I-1(由于移除了链路281,其可能不再与存储***180通信)重导向至启动器端口I-2,其还具有对卷-1的存取且能通过另一可用路径与存储***180通信。
在该图示实施例中,***具890以下面的方式来***。参看图9B,***具890的***端口846由链路981连接到FC交换机225的端口P-5,且***端口847由链路982连接到存储***180的目标端口T-1。
***具890现与基于光纤信道的SAN 115的构件通信以便获得关于存储于存储***180中的数据的信息。图10为根据一实施例用于与网络的构件通信的方法的流程图。在步骤1010,由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来识别存储***的目标端口的目标全球端口名称。在该图示实施例中,当存储***180的目标端口T-1连接到***具890的***端口847时,目标端口T-1试图向器具890注册。因此,目标端口T-1向***具890传输注册或完成光纤信道登陆的请求。该请求包含目标端口T-1的WWPN。***具890接收请求且检索目标端口T-1的WWPN。
在步骤1020,在第一注册过程或光纤信道登陆过程中,基于目标全球端口名称,向该交换机注册该设备的上游端口。在该图示实施例中,(上游)***端口846使用目标端口T-1的WWPN来欺骗目标端口T-1且从FC交换机225获得信息。具体而言,***具890从(上游)***端口846传输向FC交换机225注册的请求。注册的请求包括目标端口T-1的目标全球端口名称(且可额外地包括***端口846唯一的第二全球端口名称)。FC交换机225接收注册请求且基于目标端口T-1的目标全球端口名称来注册***端口846。FC交换机225可额外地基于***端口846唯一的第二全球端口名称来注册***端口846。
在步骤1030,在第二注册过程中接收与目标端口相关联的服务器的启动器端口有关的注册信息。在该图示实施例中,从启动器端口接收的注册信息包括识别启动器端口的全球端口名称的信息。从启动器端口接收的注册信息还可包括规定启动器端口连接的交换机端口的信息。
因此,在第二注册过程中,当***端口846使用目标端口T-1的全球端口名称来向FC交换机225注册时,分区到目标端口T-1的任何服务器135(或主机实体)的所有启动器端口向***端口846注册。在第二注册过程期间,每个启动器端口传输识别其相应全球端口名称的注册信息。因此,启动器端口I-1和I-2中的每一个(其被分区到目标端口I-1)向***端口846注册且向***端口846提供规定其全球端口名称的信息。具体而言,启动器端口I-1在注册信息中提供其全球端口名称(WWPN-1)且启动器端口I-2提供其全球端口名称(WWPN-2)。启动器端口I-1也可在注册信息中包括识别其所连接的交换机端口P-1的交换机端口标识符。启动器端口I-2也可在注册信息中包括识别其所连接的交换机端口P-2的交换机端口标识符。
在步骤1040,基于注册信息来确定服务器(或主机实体)的启动器端口的启动器全球端口名称。因此,***具890从所接收的注册信息获得服务器135-A的每个启动器端口的全球端口名称。具体而言,***具890的***流程810确定WWPN-1为启动器端口I-1的全球端口名称且WWPN-2为启动器端口I-2的全球端口名称。以此方式,***具890确定分区到存储***180的目标端口T-1的服务器135-A的每个启动器端口的启动器全球端口名称。
在一替代实施例中,从启动器端口接收的注册信息并不包括启动器端口的全球端口名称,而是包括识别启动器端口所连接的交换机端口的交换机端口标识符。举例而言,启动器端口I-1提供指示其连接到交换机端口P-1的注册信息且启动器端口I-2提供指示其连接到交换机端口P-2的注册信息。***具890因此存取且检查简单名称服务器表650且对于所接收的每个交换机端口标识符识别相对应的启动器全球端口名称。具体而言,***具890的***流程810咨询简单名称服务器表650且确定WWPN-1与交换机端口标识符P-1相关联(且因此链接到FC交换机225的端口P-1)且WWPN-2与交换机端口标识符P-2相关联(且因此链接到FC交换机225的端口P-2)。
在步骤1050,基于启动器端口的启动器全球端口名称来识别与启动器端口相关联的存储***中一个或多个存储卷。在该图示实施例中,***具890现欺骗服务器135的每个启动器端口来从存储***180获得信息。具体而言,***具890的***流程810使用标准过程来向***具890的(下游)***端口847添加分区到目标端口T-1的启动器端口的启动器全球端口名称。因此,***流程810向***端口847添加WWPN-1和WWPN-2。在启动器全球端口名称添加到***端口847之后,***流程810可以下文所述的方式从存储***180获得识别每个相应启动器全球端口名称存取的一个或多个卷的信息。
对于现与***具890的端口847相关联的每个启动器全球端口名称,***流程810向存储***180传输规定相应启动器WWPN且请求识别启动器WWPN存取的卷的信息的命令。举例而言,***流程810可根据SCSI协议来传输REPORT LUN命令。存储***180接收命令且响应地传输指示规定的启动器WWPN存取的一个或多个卷的信息。因此在图示实施例中,***流程810向存储***180传输规定WWPN-1的REPORT LUN命令。响应地,存储***180向***具890传输指示WWPN-1存取卷-1(491)的信息。***流程810向存储***180传输规定WWPN-2的REPORT LUN命令。响应地,存储***180向***具890告知WWPN-2存取卷-1(491)。
如上文所讨论的那样,在某些实施例中,从存储***180所接收的关于哪些卷可由每个相应启动器全球端口名称存取的信息是不明确的且不能规定多少唯一卷可由各个启动器全球端口名称可存取。因此,***具890可拦截从存储***180获得的指示实际存在更多存储卷的信息。因此,***具890可调解从存储***180接收的信息以判断识别的存储卷是否为唯一的或者识别的存储卷中的一个或多个是否为相同的且因此冗余。
因此,在一实施例中,***流程810向每个识别的卷传输命令(诸如,SCSI命令,被称作INQUIRY命令)以获得与卷相关联的全球唯一标识符(GUID)。响应于该命令,卷向***具890传输规定其全球唯一标识符的消息。基于以此方式接收的GUID,***流程810确定存在多少唯一卷且识别的卷中的任一个是否为冗余的。每个卷的全球唯一标识符的实施方式可基于存储***的制造商而不同。在某些实施例中,可需要非标准的命令来检索构成GUID的信息。
使用本文所述的方法,***具890识别分区到存储***180的选定目标端口的启动器WWPN且识别启动器WWPN可存取的存储***180内的一个或多个卷。此方法可用于识别与选定服务器(或主机实体)相关联的多个WWPN。***具180然后可识别WWPN可存取的存储***180内的所有卷。因此***具890可识别服务器或主机实体存取的所有卷。
本文所述的***和方法有利地允许在FC交换机225与存储***180之间的数据路径中******具890使得可透明地拦截所有I/O命令。本文所述的***和方法进一步允许透明地******具890,而不会中断存储***180或网络的操作。
提供数据管理服务
根据一实施例,***具890提供关于存储于存储***180中的数据的一个或多个数据管理服务。参看图8,***具890包括数据管理服务848,其包括提供一个或多个数据管理服务的功能。举例而言,数据管理服务848可包括拷贝数据,执行数据图像的快照,备份数据,复制数据,执行从一个存储设备或***另一存储设备或***的数据迁移的功能。数据管理服务848可包括用户介面功能。举例而言,由***具890使用本文所述的方法识别的存储卷和主机实体可使用用户介面向用户呈现以便于用户选择一个或多个卷和用户希望关于选定卷执行的一个或多个服务。
在一实施例中,在识别了特定服务器或主机实体存取的一个或多个卷之后,以上文所述的方式,***具890可使用这条信息来提供一个或多个数据管理服务。图11示出可用于提供数管理服务的通信***100的另一实施例。在图11的实施例中,通信***100还包括链接到网络115的备份存储***1140。在一图示实施例中,***具890包括复制特定主机实体(在此实例中,服务器135-A)准予存取的一个或多个卷。因此,***具890识别主机实体存取的存储***180中的卷,且拷贝该卷到备份存储***1140。
为了在拷贝数据时由主机实体向该卷写入新数据的情况下确保完整和准确的拷贝,***具890记录在拷贝过程中写入到卷内的任何数据的位置。以此方式,***具890跟踪写入于卷内的新数据。在第一回合完成之后,***具890咨询指示新数据位置的记录且在随后回合中拷贝新数据。也可执行额外回合。
图12为根据一实施例提供数据管理服务的方法的流程图。在步骤1210,由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来确定连接到交换机的主机实体的启动器端口的标识符。以上文所述的方式,***具890的***流程810识别主机实体(服务器135-A)的启动器端口I-1的启动器WWPN。在该图示实施例中,启动器端口I-1的WWPN为WWPN-1。
在步骤1220,基于标识符来识别启动器端口存取的存储***中的存储卷。在该图示实施例中,***流程810以上文所述的方式确定WWPN-1存取维持于存储***180中的卷-1。
在识别了存储***180中的卷之后,利用规定主机实体的一个或多个启动器WWPN的详细且精细的信息,***具890可拦截I/O命令且确定接收的每个I/O命令的起源。这允许(***具890的)数据管理服务848基于I/O命令的起源关于每个I/O命令执行选定的行动。
在步骤1230,关于所述识别的存储卷提供数据管理服务。参看图8,(***具890的)数据管理服务848存取卷-1且将卷-1中的数据拷贝到另一卷。在图11的图示实施例中,数据管理服务848将卷-1中的数据拷贝到备份存储***1140中的卷。
在拷贝数据之前,数据管理服务848指导***流程810来拦截所有数据写入命令。数据管理服务848然后开始以循序方式从起始到结尾拷贝该卷中的数据。在执行拷贝过程时,新数据可写入于已经被拷贝的卷的部分。为了确保最新的拷贝,数据管理服务848记录写入到卷的所有新数据的位置。在完成了第一回合之后,数据管理服务848在随后的回合中拷贝新数据新写入的位置。若需要,也可执行额外回合。
在其它实施例中,数据管理服务848可提供其它类型的服务,诸如执行数据图像的快照,复制数据,执行从一个存储设备或***到另一设备或***的数据迁移等。当执行其它功能时,***流程810根据需要拦截I/O命令,以使得能执行这样的功能。在另一实施例中,数据管理服务848可监视向维持于存储***180中的选定卷发送和从该选定卷发送的I/O命令且可生成关于I/O命令的统计。在另一实施例中,数据管理服务848可监视至选定存储卷和自选定存储卷的通信量且如果检测到预定条件,调用预定函数来执行规定行动。举例而言,数据管理服务848可通知管理员,如果规定的启动器端口向选定卷写入数据。
虽然在基于光纤信道的SAN的情形下描述了本文所述的实施例,本文所述的方法和***并不限于用于基于光纤信道的SAN内。在其它实施例中,本文所述的方法和***可结合其它类型的通信***和网络来使用。举例而言,本文所述的方法和***可用于使用iSCSI协议的通信***中。
在各种实施例中,本文所述的方法步骤,包括描述于图10和/或图12中的方法步骤,可以不同于所描述或图示的特定次序的次序来执行。在其它实施例中,可提供其它步骤,或者可从所描述的方法排除步骤。
本文所述的***、仪器和方法可使用数字电路或者使用利用熟知计算机处理器、存储器单元、存储设备、计算机软件和其它构件的一个或多个计算机来实施。通常,计算机包括用于实行指令的处理器和存储指令和数据的一个或多个存储器。计算机也可包括或联接到一个或多个大容量存储设备,诸如一个或多个磁盘、内部硬盘和可移除的盘,磁光盘、光盘等。
本文所述的***、仪器和方法可使用以客户端-服务器关系操作的计算机来实施。通常,在这样的***中,客户端计算机位于距服务器计算机较远处且经由网络交互。客户端-服务器关系可由在相应客户端和服务器计算机上运行的计算机程序来限定和控制。
本文所述的***、仪器和方法可用于基于网络的云计算***内。在这样的基于网络的云计算***中,连接到网络的服务器或另一处理器经由网络与一个或多个客户端计算机通信。客户端计算机可例如经由驻留于且操作于客户端计算机上的网络浏览器应用程序与服务器通信。客户端计算机可在服务器上存储数据且经由网络存取数据。客户端计算可经由网络向服务器传输对数据的请求或者对于联机服务的请求。服务器可执行所请求的服务且向客户端计算机提供数据。服务器也可传输数据,数据适于使得客户端计算机执行规定的功能,例如,执行计算,以在屏幕上显示规定数据等。
本文所述的***、仪器和方法可使用有形地实施于信息载体中的计算机程序产品来实施,例如在非暂时机器可读存储设备中,例如由可编程的处理器来实行,且本文所述的方法步骤,包括图10和/或图12的步骤中的一个或多个可使用可由这样的处理器实行的一个或多个计算机程序来实施。计算机程序为可在计算机中直接地或间接地执行特定活动或带来特定结果的计算机程序指令的集合。计算机程序可以任何形式的编程语言写入,包括编译或解释语言,且其能以任何形式部署,包括作为独立程序或模块、构件、子例程或适用于计算环境中的其它单元。
在图13中示出可用于实施本文所述的***、仪器和方法的示例性计算机的高层次方块图。计算机1300包括处理器,其在操作上联接到数据存储设备1302和存储器1303。处理器1301通过实行限定这样的操作的计算机程序指令来控制计算机1300的总操作。计算机程序指令可存储于数据存储设备1302或其它计算机可读媒体中且当需要实行计算机程序指令时加载到存储器1303内。因此,图10的方法步骤可由存储于存储器1303和/或数据存储设备1302中的计算机程序指令限定且受到实行计算机程序指令的处理器1301来控制。举例而言,计算机程序指令能实施为本领域技术人员编程的计算机可实行的代码以执行由图10和/或图12的方法步骤所限定的算法。因此,通过实行计算机程序指令,处理器1301实行由图10和/或图12的方法步骤所限定的算法。计算机1300还包括用于经由网络与其它设备通信的一个或多个网络接口1304。计算机1300还包括能使得用户与计算机1300交互的一个或多个输入/输出设备1305(例如,显示器、键盘、鼠标、扬声器、按钮等)。
处理器1301可包括通用微处理器和专用微处理器且可为唯一处理器或计算机1300的多个处理器之一。处理器1301可例如包括一个或多个中央处理单元(CPU)。处理器1301、数据存储设备1302和/或存储器1303可包括一个或多个专用集成电路(ASIC)和/或一个或多个场可编程的门极阵列(FPGA),由一个或多个专用集成电路(ASIC)和/或一个或多个场可编程的门极阵列(FPGA)实施或者合并于一个或多个专用集成电路(ASIC)和/或一个或多个场可编程的门极阵列(FPGA)中
数据存储设备1302和存储器1303各包括有形非暂时计算机可读存储存储媒体。数据存储设备1302和存储器1303可各包括高速随机存取存储器,诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、双数据速率同步动态随机存取存储器(DDR RAM)或其它随机存取固态存储器设备,且可包括非易失性存储器,诸如一个或多个磁盘存储设备,诸如内部硬盘和可移除的盘,磁光盘存储设备、光碟盘存储设备、闪速存储器设备、半导体存储器设备,诸如可擦除可编程的只读存储器(EEPROM)、光碟只读存储器(CD-ROM)、数字多用盘只读存储器(DVD-ROM)盘或其它非失性的固态存储设备。
输入/输出设备1305可包括***装置,诸如打印机、扫描仪、显示屏等。举例而言,输入/输出设备1305可包括显示设备,诸如阴极射线管(CRT)或用于向用户显示信息的液晶显示器(LCD)监视器,键盘和指点设备,诸如鼠标或跟踪球,用户能用它来提供对计算机1300的输入。
本文所讨论的任何或所有***和仪器包括客户端160、服务器135、光纤信道交换机225、存储***180和***具890和其构件,包括服务管理器325、存储器375、存储管理器410、存储器475、存储装置468、交换机管理器525、存储器575、***流程810、存储器815、数据管理服务848和在这些仪器或构件内的所有端口可使用诸如计算机1300这样的计算机来实施。
本领域技术人员应认识到实际计算机或计算机***的实施方式可具有其它结构且也可包含其它构件,且出于说明目的,图13为这样的计算机的构件中某些构件的高层次图示。
前文的发明详述应被理解为在每个方面是说明性且示例性的而不是限制性的,且本文所公开的本发明的范围并不从发明详述来确定,而是仅从权利要求来确定,如根据专利法许可的完整范围来理解。应了解本文所示和所述的实施例仅说明本发明的原理且在不偏离本发明的范围和精神的情况下可由本领域技术人员实施各种修改。在不偏离本发明的范围和精神的情况下本领域技术人员能实施各种其它特点组合。

Claims (23)

1.一种用于提供数据管理服务的方法,所述方法包括:
由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来识别所述目标端口的目标全球端口名称;
在第一注册过程中,基于所述目标全球端口名称向所述交换机注册所述设备的第一端口;
在第二注册过程中,接收与所述目标端口相关联的服务器的启动器端口有关的注册信息;
基于所述注册信息来确定所述服务器的所述启动器端口的启动器全球端口名称;以及
基于所述启动器端口的所述启动器全球端口名称来识别与所述启动器端口相关联的存储***中的存储卷。
2.根据权利要求1所述的方法,其还包括:
向所述设备的所述第一端口分配所述目标全球端口名称。
3.根据权利要求1所述的方法,其特征在于,所述第二注册过程包括由所述启动器端口经由所述第一端口向所述设备注册。
4.根据权利要求3所述的方法,其还包括:
在第二注册过程,接收与分区到所述目标端口的服务器的启动器端口相关联的交换机端口标识符。
5.根据权利要求1所述的方法,其还包括:
存取简单名称服务器表,所述简单名称服务器表对于所述交换机中一个或多个端口中每一个识别相对应的全球端口名称。
6.根据权利要求1所述的方法,其还包括:
向所述存储***传输REPORT LUN命令,包括启动器全球端口名称;以及
响应于所述REPORT LUN命令从所述存储***接收识别所述启动器全球端口名称存取的所述存储卷的信息。
7.根据权利要求6所述的方法,其还包括:
向所述存储***传输与所述启动器全球名称存取的所述存储卷有关的SCSI询问;
响应于所述SCSI询问来接收指示所述存储卷的全球唯一标识符的信息;以及
基于所述全球唯一标识符来判断与所述启动器全球端口名称相关联的两个存储卷是否相同。
8.根据权利要求1所述的方法,其特征在于,所述交换机为光纤信道交换机。
9.一种位于交换机的交换机端口与存储***的目标端口之间的网络中的设备,所述设备包括:
第一端口;以及
处理器,其被配置为:
识别所述存储***的目标端口的目标全球端口名称;
在第一注册过程中基于所述目标全球端口名称向所述交换机注册所述第一端口;
在第二注册过程中,接收与所述目标端口相关联的服务器的启动器端口有关的注册信息;
基于所述注册信息来确定所述服务器的所述启动器端口的启动器全球端口名称;以及
基于所述启动器端口的所述启动器全球端口名称来识别与所述启动器端口相关联的存储***中一个或多个存储卷。
10.根据权利要求9所述的设备,其特征在于,所述处理器还被配置为:
向所述设备的所述第一端口分配所述目标全球端口名称。
11.根据权利要求9所述的设备,其特征在于,所述第二注册过程包括由所述启动器端口经由所述第一端口向所述设备注册。
12.根据权利要求11所述的设备,其特征在于,所述处理器还被配置为:
在第二注册过程,接收与分区到所述目标端口的所述服务器的启动器端口相关联的交换机端口标识符。
13.根据权利要求9所述的设备,其特征在于,所述处理器还被配置为:
存取简单名称服务器表,所述简单名称服务器表对于所述交换机中一个或多个端口中每一个识别相对应的全球端口名称。
14.根据权利要求9所述的设备,其特征在于,所述处理器还被配置为:
向所述存储***传输REPORT LUN命令,包括所述启动器全球端口名称;以及
响应于所述REPORT LUN命令从所述存储***接收识别所述全球端口名称存取的所述存储卷的信息。
15.根据权利要求14所述的设备,其特征在于,所述处理器还被配置为:
向所述存储***传输与所述启动器全球端口名称相关联的存储卷有关的SCSI询问;
响应于SCSI询问来接收指示所述存储卷的全球唯一标识符的信息;以及
基于所述全球唯一标识符来判断与所述启动器全球端口名称相关联的两个存储卷是否相同。
16.根据权利要求9所述的设备,其特征在于,所述交换机为光纤信道交换机。
17.一种用于提供数据管理服务的方法,所述方法包括:
由位于交换机的交换机端口与存储***的目标端口之间的路径中的设备来确定连接到所述交换机的主机实体的启动器端口的标识符;
基于所述标识符来识别所述启动器端口存取的所述存储***中的存储卷;以及
关于所述识别的存储卷提供数据管理服务。
18.根据权利要求17所述的方法,其特征在于,所述数据管理服务包括下列之一:拷贝数据,执行数据图像的快照,复制数据,执行数据迁移服务,监视向维持于存储***中的选定卷发送和从其发送的I/O命令;生成与I/O命令有关的统计;以及基于检测到预定条件来调用预定函数来执行规定的行动。
19.根据权利要求17所述的方法,其特征在于,标识符为全球端口名称。
20.根据权利要求19所述的方法,其还包括:
向所述存储***传输REPORT LUN命令,包括全球端口名称;以及
响应于所述REPORT LUN命令从所述存储***接收识别所述选定全球端口名称所存取的所述存储卷的信息。
21.一种位于交换机的交换机端口与存储***的目标端口之间路径中的网络中的设备,所述设备包括:
连接到所述交换机的第一端口;
连接到所述存储***的第二端口;以及
至少一个处理器,其被配置为:
确定连接到所述交换机的主机实体的启动器端口的标识符;
基于所述标识符来识别所述启动器端口存取的所述存储***中的存储卷;以及
关于所述识别的存储卷提供数据管理服务。
22.根据权利要求21所述的设备,其特征在于,所述数据管理服务包括下列之一:拷贝数据,执行数据图像的快照,复制数据,执行数据迁移服务,监视向维持于存储***中的选定卷发送和从其发送的I/O命令;生成与I/O命令有关的统计;以及基于检测到预定条件来调用预定函数来执行规定的行动。
23.根据权利要求21所述的设备,其特征在于,所述标识符为全球端口名称。
CN201210187798.6A 2011-12-23 2012-06-07 用于提供数据管理服务的***和方法 Active CN103179053B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/336,257 US8255538B1 (en) 2011-12-23 2011-12-23 Systems and methods for intercepting data relating to storage volume access
US13/336,257 2011-12-23

Publications (2)

Publication Number Publication Date
CN103179053A true CN103179053A (zh) 2013-06-26
CN103179053B CN103179053B (zh) 2016-10-05

Family

ID=46689907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210187798.6A Active CN103179053B (zh) 2011-12-23 2012-06-07 用于提供数据管理服务的***和方法

Country Status (5)

Country Link
US (2) US8255538B1 (zh)
EP (2) EP2795454B1 (zh)
JP (2) JP2015506506A (zh)
CN (1) CN103179053B (zh)
WO (2) WO2013095921A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105306387A (zh) * 2014-07-31 2016-02-03 华为技术有限公司 一种分区方法及设备
CN105827549A (zh) * 2015-08-03 2016-08-03 联琛辉信息科技(南京)有限公司 通过虚拟光纤交换机管理存储设备的***方法
CN112764666A (zh) * 2019-10-21 2021-05-07 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9495113B2 (en) * 2011-12-23 2016-11-15 Cirrus Data Solutions, Inc. Systems, devices, apparatus, and methods for identifying stored data by a device located in a path between virtual Fibre channel switches and performing a data management service
US8255538B1 (en) * 2011-12-23 2012-08-28 Cirrus Data Solutions, Inc. Systems and methods for intercepting data relating to storage volume access
US9077752B2 (en) * 2011-12-23 2015-07-07 Cirrus Data Solutions, Inc. Systems, apparatus, and methods for identifying stored data that may be accessed by a host entity and providing data management services
US9176902B1 (en) * 2012-06-27 2015-11-03 Emc Corporation Data migration techniques
JP5971057B2 (ja) * 2012-09-27 2016-08-17 富士通株式会社 ストレージ装置、設定方法および設定プログラム
US8495221B1 (en) * 2012-10-17 2013-07-23 Limelight Networks, Inc. Targeted and dynamic content-object storage based on inter-network performance metrics
US9081502B2 (en) * 2012-10-18 2015-07-14 Hitachi, Ltd. Method and apparatus of storage volume migration in cooperation with takeover of storage area network configuration
WO2015034500A1 (en) * 2013-09-05 2015-03-12 Hewlett-Packard Development Company, L.P. Storage array confirmation of use of a path
US10817321B2 (en) 2017-03-21 2020-10-27 International Business Machines Corporation Hardware independent interface for cognitive data migration
US10599856B2 (en) 2017-06-07 2020-03-24 International Business Machines Corporation Network security for data storage systems
CN113625944B (zh) * 2021-06-25 2024-02-02 济南浪潮数据技术有限公司 一种基于多路径和远程复制技术的容灾方法、***
US11552844B1 (en) * 2022-04-11 2023-01-10 Target Brands, Inc. Persistent storage for server clusters

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101047594A (zh) * 2006-03-28 2007-10-03 国际商业机器公司 保护交换结构存储区域网络中节点端口访问的方法和装置
US20080114961A1 (en) * 2006-11-15 2008-05-15 Cisco Technology, Inc. Transparent device switchover in a storage area network
CN101283340A (zh) * 2005-07-08 2008-10-08 思科技术公司 存储区域网络中进行数据分接的装置和方法
US8028062B1 (en) * 2007-12-26 2011-09-27 Emc Corporation Non-disruptive data mobility using virtual storage area networks with split-path virtualization

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6421711B1 (en) * 1998-06-29 2002-07-16 Emc Corporation Virtual ports for data transferring of a data storage system
US6845387B1 (en) * 2000-04-07 2005-01-18 Advanced Digital Information Corporation Creating virtual private connections between end points across a SAN
JP4794068B2 (ja) * 2000-06-05 2011-10-12 富士通株式会社 ストレージエリア・ネットワーク管理システム
US6742020B1 (en) * 2000-06-08 2004-05-25 Hewlett-Packard Development Company, L.P. System and method for managing data flow and measuring service in a storage network
US7203730B1 (en) * 2001-02-13 2007-04-10 Network Appliance, Inc. Method and apparatus for identifying storage devices
US7447197B2 (en) * 2001-10-18 2008-11-04 Qlogic, Corporation System and method of providing network node services
US7139845B2 (en) * 2003-04-29 2006-11-21 Brocade Communications Systems, Inc. Fibre channel fabric snapshot service
JP2005251078A (ja) * 2004-03-08 2005-09-15 Hitachi Ltd 情報処理装置、及び情報処理装置の制御方法
JP4514501B2 (ja) * 2004-04-21 2010-07-28 株式会社日立製作所 ストレージシステム及びストレージシステムの障害解消方法
US7839865B2 (en) * 2005-01-26 2010-11-23 Emulex Design & Manufacturing Corporation Dynamically controlling fair access to a system packet interface attached switch enclosure
US7908358B1 (en) 2006-03-31 2011-03-15 Amazon Technologies, Inc. Method and apparatus for network services metering
JP2007328611A (ja) * 2006-06-08 2007-12-20 Hitachi Ltd ストレージ仮想化システム及び方法
US7908656B1 (en) 2007-04-23 2011-03-15 Network Appliance, Inc. Customized data generating data storage system filter for data security
US7836332B2 (en) * 2007-07-18 2010-11-16 Hitachi, Ltd. Method and apparatus for managing virtual ports on storage systems
US20090234982A1 (en) * 2008-03-13 2009-09-17 Inventec Corporation Method of identifying and dynamically updating storage device status at target
US8028141B2 (en) 2008-06-03 2011-09-27 International Business Machines Corporation Partitioning of a multiple logic-unit-number SCSI target
US7912051B1 (en) * 2008-12-19 2011-03-22 Emc Corporation Techniques for port virtualization
US8918488B2 (en) * 2009-02-04 2014-12-23 Citrix Systems, Inc. Methods and systems for automated management of virtual resources in a cloud computing environment
JP5531625B2 (ja) * 2010-01-13 2014-06-25 日本電気株式会社 通信システム及びその障害検出方法
US8645509B2 (en) * 2010-10-12 2014-02-04 Guest Tek Interactive Entertainment Ltd. System and server for assigning location-dependent hostname to client device over network and method thereof
US8255538B1 (en) * 2011-12-23 2012-08-28 Cirrus Data Solutions, Inc. Systems and methods for intercepting data relating to storage volume access

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101283340A (zh) * 2005-07-08 2008-10-08 思科技术公司 存储区域网络中进行数据分接的装置和方法
CN101047594A (zh) * 2006-03-28 2007-10-03 国际商业机器公司 保护交换结构存储区域网络中节点端口访问的方法和装置
US20080114961A1 (en) * 2006-11-15 2008-05-15 Cisco Technology, Inc. Transparent device switchover in a storage area network
US8028062B1 (en) * 2007-12-26 2011-09-27 Emc Corporation Non-disruptive data mobility using virtual storage area networks with split-path virtualization

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105306387A (zh) * 2014-07-31 2016-02-03 华为技术有限公司 一种分区方法及设备
CN105306387B (zh) * 2014-07-31 2018-11-13 华为技术有限公司 一种分区方法及设备
CN105827549A (zh) * 2015-08-03 2016-08-03 联琛辉信息科技(南京)有限公司 通过虚拟光纤交换机管理存储设备的***方法
CN105827549B (zh) * 2015-08-03 2020-05-05 联琛辉信息科技(南京)有限公司 通过虚拟光纤交换机管理存储设备的***方法
CN112764666A (zh) * 2019-10-21 2021-05-07 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品
CN112764666B (zh) * 2019-10-21 2024-04-19 伊姆西Ip控股有限责任公司 用于存储管理的方法、设备和计算机程序产品

Also Published As

Publication number Publication date
WO2013095921A1 (en) 2013-06-27
JP2015510296A (ja) 2015-04-02
WO2013096762A3 (en) 2013-08-22
EP2795454B1 (en) 2018-05-02
WO2013096762A2 (en) 2013-06-27
CN103179053B (zh) 2016-10-05
JP2015506506A (ja) 2015-03-02
EP2795457A2 (en) 2014-10-29
EP2795454A1 (en) 2014-10-29
US8417818B1 (en) 2013-04-09
US8255538B1 (en) 2012-08-28

Similar Documents

Publication Publication Date Title
CN103179053A (zh) 用于提供数据管理服务的***和方法
US8140785B2 (en) Updating metadata in a logical volume associated with a storage controller for data units indicated in a data structure
US10452489B2 (en) Reconciliation in sync replication
US8495131B2 (en) Method, system, and program for managing locks enabling access to a shared resource
US8117169B2 (en) Performing scheduled backups of a backup node associated with a plurality of agent nodes
US10152281B2 (en) Systems, devices, apparatus, and methods for transparently inserting a virtual storage layer in a fibre channel based storage area network while maintaining continuous input/output operations
US9229647B2 (en) Systems, methods, and apparatus for spoofing a port of a host entity to identify data that is stored in a storage system and may be accessed by the port of the host entity
US7730267B2 (en) Selecting storage clusters to use to access storage
US8375385B1 (en) Techniques for parallel drive upgrade while maintaining host accessibility
CN110998562B (zh) 在分布式集群***中隔开节点
US7529972B2 (en) Methods and apparatus for reconfiguring a storage system
US20070157002A1 (en) Methods and apparatus for configuring a storage system
US9740649B2 (en) Systems, devices, apparatus, and methods for identifying stored data by a device located in a path between virtual Fibre channel switches and performing a data management service
CN105827549B (zh) 通过虚拟光纤交换机管理存储设备的***方法
US20150229642A1 (en) Controlling access to storage devices shared by host systems
US11093413B2 (en) Techniques for using a stealth storage device for secure information storage
CN115168318A (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
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170320

Address after: Jiangsu province Nanjing City Road 211161, Jiangning Binjiang Development Zone

Patentee after: Union Information Technology (Nanjing) Co., Ltd.

Address before: Nassau, New York, USA,

Patentee before: Lin Weidong

Patentee before: Lin Weiguang

Patentee before: Liu Chang