CN102594858A - 云存储环境中的镜像解决方案 - Google Patents

云存储环境中的镜像解决方案 Download PDF

Info

Publication number
CN102594858A
CN102594858A CN2011103792615A CN201110379261A CN102594858A CN 102594858 A CN102594858 A CN 102594858A CN 2011103792615 A CN2011103792615 A CN 2011103792615A CN 201110379261 A CN201110379261 A CN 201110379261A CN 102594858 A CN102594858 A CN 102594858A
Authority
CN
China
Prior art keywords
network node
data
node
shared storage
configuration
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
CN2011103792615A
Other languages
English (en)
Other versions
CN102594858B (zh
Inventor
S·班德约帕德雅
A·P·戈尔
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.)
Kioxia Corp
Original Assignee
Mawier International Trade 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 Mawier International Trade Co Ltd filed Critical Mawier International Trade Co Ltd
Publication of CN102594858A publication Critical patent/CN102594858A/zh
Application granted granted Critical
Publication of CN102594858B publication Critical patent/CN102594858B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
    • 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/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1034Reaction to server failures by a load balancer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (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)
  • Hardware Redundancy (AREA)

Abstract

本发明涉及一种云存储环境中的镜像解决方案。配置用于提供对共享存储的访问的系统包括配置用于向第一多个客户端工作站提供对共享存储的访问的第一网络节点。该第一网络节点包括配置用于存储对应于该第一多个客户端工作站的第一数据的第一高速缓存存储器模块,以及配置用于从第一高速缓存存储器模块向共享存储传送第一数据的第一高速缓存控制模块。第二网络节点配置用于向第二多个客户端工作站提供对共享存储的访问。该第二网络节点包括配置用于存储对应于该第二多个客户端工作站的第二数据并存储第一数据的第二高速缓存存储器模块,以及配置用于从第二高速缓存存储器模块向共享存储传送第二数据并且响应于第一网络节点的故障而从第二高速缓存存储器模块向共享存储传送第一数据的第二高速缓存控制模块。

Description

云存储环境中的镜像解决方案
相关申请的交叉引用
本申请要求2010年11月19日提交的美国临时申请No.61/415,775的权益。通过引用其全文将上述申请所公开的内容合并于此。
技术领域
本公开涉及对云存储环境中的镜像节点进行高速缓存。
背景技术
在此提供的背景技术描述是出于一般性地呈现本公开上下文的目的。在本背景技术部分中所描述的程度上的当前提名发明人的工作以及在提交时不作为现有技术的描述的各方面,都不被明示或者暗示地承认为本公开的现有技术。
在云存储环境中,服务器提供共享存储以用于操作一个或多个虚拟机(VM)。远程用户访问服务器以使用由VM中的相应VM实现的操作系统。仅出于示例,用户经由对应的客户端工作站或计算机来访问服务器。客户端工作站与网络节点集群通信,网络节点集群转而与服务器对接。例如,每个客户端工作站可以与节点之一通信,该节点代表客户端工作站中的一个或多个客户端工作站与服务器通信。节点对客户端工作站使用的数据进行高速缓存。因此,客户端工作站可得到数据而无需直接访问服务器。
发明内容
配置用于提供对共享存储的访问的系统包括第一网络节点,该第一网络节点配置用于向第一多个客户端工作站提供对共享存储的访问。该第一网络节点包括第一高速缓存存储器模块和第一高速缓存控制模块,该第一高速缓存存储器模块配置用于存储对应于该第一多个客户端工作站的第一数据,并且该第一高速缓存控制模块配置用于从第一高速缓存存储器模块向共享存储传送第一数据。第二网络节点配置用于向第二多个客户端工作站提供对共享存储的访问。该第二网络节点包括第二高速缓存存储器模块和第二高速缓存控制模块,该第二高速缓存存储器模块配置用于存储对应于该第二多个客户端工作站的第二数据并且存储第一数据,并且该第二高速缓存控制模块配置用于从第二高速缓存存储器模块向共享存储传送第二数据,并且响应于第一网络节点的故障,从第二高速缓存存储器模块向共享存储传送第一数据。
在其他特征中,集群管理模块配置用于检测第一网络节点的故障,以及指示第二网络节点向共享存储传送第一数据。第一网络节点配置用于当至少一个第一数据被写入第一网络节点并且该第一数据在该第一网络节点中被修改时,向第二网络节点传送第一数据。第一网络节点配置用于响应于第一网络节点向共享存储传送第一数据而指示第二网络节点使存储在第二高速缓存存储器模块中的第一数据无效。
在其他特征中,配置用于提供对共享存储的访问的系统包括布置在节点集群中的多个网络节点,该多个网络节点中的每一个网络节点配置用于向多个客户端工作站提供对共享存储的访问。集群管理模块配置用于向节点配对指派每个网络节点。每个节点配对包括原始网络节点和镜像网络节点。原始网络节点配置用于存储与多个客户端工作站的第一分组相关联的第一数据。镜像网络节点配置用于存储第一数据以及存储与多个客户端工作站的第二分组相关联的第二数据。镜像网络节点配置用于响应于原始网络节点的故障而向共享存储传送第一数据。
在其他特征中,集群管理模块配置用于检测是否多个网络节点之一发生故障并且向节点配对重新分配多个网络节点。
本公开的适用性的其他领域将通过详细描述、权利要求书和附图变得显而易见。详细描述和具体示例仅仅是为了示例说明的目的,而并不是旨在限制本公开范围。
附图说明
本公开将通过详细描述和随附的附图被更加充分地理解,在附图中:
图1是根据本公开的云存储环境的功能框图;
图2是根据本公开的节点配对的功能框图;
图3是根据本公开的节点集群的功能框图;以及
图4图示了根据本公开的节点配对方法的步骤。
具体实施方式
云存储环境中的网络节点以集群方式进行布置。每个集群与集群管理模块对接。集群管理模块对节点进行管理和配置。仅出于示例,集群管理模块基于可用性和负载平衡来管理节点、多个客户端工作站以及服务器之间的通信。
客户端工作站中的一个或多个客户工作站经由节点中的选定节点与服务器通信。因此,选定节点存储由客户端工作站使用的数据以最小化客户端工作站与服务器之间的通信。如果节点出现故障,则向不同节点分配客户端工作站,并且经由该不同节点与服务器通信。如果节点在该节点中存储的任何经修改的数据被冲向(flush)(即,传送)服务器之前出现故障,则经修改的数据对于客户端工作站而言丢失。
在根据本公开的原理的云存储环境中,每个节点与另一节点配对并且在特定条件下(例如,当在该节点中执行写入操作时)将数据冲向另一节点。如果节点出现故障,则向另一节点分配与该节点相关联的任何客户端工作站。因此,最小化由该节点的故障引起的数据丢失。
现在参考图1,在云存储环境中操作的系统100包括共享存储104(例如,由网络服务器提供的共享存储,诸如文件夹(filer))。多个节点集群108-1、108-2...108-m(统称为节点集群108)与共享存储104通信。节点集群108相对于共享存储104而言可以位于本地或者远程。
节点集群108中的每个集群都包括多个网络节点112-1、112-2...112-n(统称为网络节点112)和集群管理模块116。虽然节点集群108-1被示出为具有n个节点,但是应当理解,其他节点集群108-2...108-m可以包括n个或其他数目的节点。仅出于示例,每个节点集群108可以包括16个节点112。换言之,节点集群108-1可以包括16个节点112-1...112-16。类似地,节点集群108-2可以包括另外16个节点112-1...112-16,这些节点与节点集群108-1的节点不同。另外,虽然与节点112分开示出,但是集群管理模块116也可以与节点112中的一个或多个节点集成。多个客户端工作站120-1、120-2...120-p(统称为客户端工作站120)经由节点112与共享存储104对接。例如,每个客户端工作站120可以执行主应用,该主应用与在节点112和共享存储104上实现的虚拟机(VM)对接。
节点集群108之一中的每个节点112对客户端工作站120的相关联的客户端工作站所使用的数据进行高速缓存,以用于与对应的VM对接。此外,每个节点112与另一节点112配对。例如,在第一节点配对中,节点112-1可以是原始节点,而节点112-2可以是针对该原始节点的配对节点(即,镜像节点)。相反地,在第二节点配对中,节点112-2可以是原始节点,而节点112-n可以是镜像节点。在第n个节点配对中,节点112-n可以是原始节点,而节点112-1可以是镜像节点。
因此,节点集群108中的每个节点112在一个节点配对中为原始节点(例如,第一节点配对中的节点112-1),而在另一节点配对中为镜像节点(例如,第n个节点配对中的节点112-1)。在每个节点配对中,原始节点配对相关联的客户端工作站120的数据进行高速缓存,并且还向镜像节点提供其相关联的客户端工作站120的数据。例如,节点112-1对客户端工作站120的数据进行高速缓存并且向节点112-2提供该数据。
在每个节点集群108中,对应的集群管理模块116管理客户端工作站120向节点112的分配和重新分配,并且向相应的节点配对分配节点112。仅出于示例,集群管理模块116可以存储标识客户端工作站120与节点之间的关联的信息,以及存储标识每个节点配对的原始节点与镜像节点的信息。可以基于以下标准向所述配对分配节点112,该标准包括但不限于故障区域和/或电源使用。例如,集群管理模块116可以向所述配对分配节点112,从而使得每个配对中的节点112不使用相同的电源和/或不位于相同的故障区域中。此外,虽然节点112被描述为分配到节点配对,但是应当理解,在其他实施方式中,某些节点112可以与不止一个其他节点配对。
集群管理模块116确定是否节点112之一出现故障。仅出于示例,如果节点112没有响应集群管理模块116传输的特定数据分组;如果另一个节点112向集群管理模块116通知尝试访问节点112不成功,以及/或者一个或多个其他错误条件,则集群管理模块116可以确定该节点112出现故障。如果节点112的原始节点出现故障,则集群管理模块116指示对应的镜像节点将对应的原始节点的数据冲向共享存储104。镜像节点将该数据冲向共享存储104,并且当冲送传输完成时,通知集群管理模块116。因此,尽管原始节点出现了故障,但该原始节点的数据仍然对于客户端工作站120可用。集群管理模块116向一个或多个其他节点112重新分配对应于发生故障的原始节点的VM,并且可以重新分配节点配对。例如,发生故障的原始节点还可能已经是另一节点112的镜像节点。因此,集群管理模块116还指示节点112的另一节点将其数据冲向共享存储104,并且可以向节点112的另一节点重新分配不同镜像节点。节点112的另一节点还可以转变成直写模式(writethrough mode),直到其与不同镜像节点配对为止。例如,在直写模式中,节点112中的所有写入操作被复制到共享存储104中。
如果与原始节点相关联的客户端工作站120被分配到一个不同节点112,则集群管理模块116还可以指示镜像节点将对应的原始节点的数据冲向共享存储104。因此,如果客户端工作站120通过该不同的节点112访问共享存储104,则冲向共享存储104的数据仍然对于客户端工作站120可用。
现在参考图2,节点集群200包括具有原始节点208和镜像节点212的节点配对204。虽然可以理解节点集群200包括多个附加节点(例如,总共16个节点),但是出于说明的目的只示出了节点配对204。例如,原始节点208可以是不同节点配对中的镜像节点。节点配对204与集群管理模块216、共享存储220和相应的客户端工作站224和228进行通信。
原始节点208包括高速缓存控制模块240、高速缓存存储器模块244(例如,L1高速缓存)和高速缓存固态驱动(SSD)模块248(例如,L2高速缓存)。仅出于示例,高速缓存存储器模块244可以是L1(即,等级1)存储器,其相对于高速缓存SSD模块248(例如,L2或等级2存储器)而言较快并且具有较少的存储空间。相反,镜像节点212包括高速缓存控制模块252、高速缓存存储器模块256和高速缓存SSD模块260。仅出于示例,高速缓存存储器模块244和256可以包括非易失性存储器,诸如NVRAM。相反,高速缓存存储器模块248和260可以包括SSD。此外,虽然原始节点208和镜像节点212被示出为包括高速缓存模块244、248、252和256,但是原始节点208和镜像节点212可以包括任何其他适合的高速缓存存储器布置。
当数据在原始节点208中被修改时(例如,基于与客户端工作站224之一的交互将数据写入原始节点208或在原始节点208中进行修改),原始节点208的高速缓存控制模块240将经修改的数据存储到高速缓存模块244和248中的一个或两者中,并且将经修改的数据冲向镜像节点212。高速缓存控制模块240还可以根据任何适合的标准将数据冲向共享存储220。例如,高速缓存控制模块240可以周期性地和/或基于达到预定的经修改数据量来将数据冲向共享存储220。
高速缓存控制模块252将经修改的数据存储到高速缓存模块256和260中的一个或两者中。如果原始节点208出现故障,则集群管理模块216检测该故障,并且指示镜像节点212的高速缓存控制模块252将经修改的数据冲向共享存储220。当将经修改的数据向共享存储220的冲送传输完成时,高速缓存控制模块252通知集群管理模块216,并且集群管理模块216向不同节点重新分配客户端工作站224(和任何对应的VM)。集群管理模块216还可以在节点集群200中重新分配节点配对。
相反,如果镜像节点212出现故障,则集群管理模块216可以通知原始节点208镜像节点212出现故障。作为响应,原始节点208可以将数据冲向共享存储220并且不再尝试将数据冲向镜像节点。仅出于示例,原始节点208可以按照直写模式将数据冲向共享存储220(例如,原始节点208中的所有写入操作均被复制/备份到共享存储220),直到集群管理模块向原始节点208分配新的镜像节点。
在一个实现中,原始节点208的高速缓存控制模块240可以响应于数据被写入高速缓存存储器模块244和248中的一个或两者(即,数据在其中被修改)而将经修改的数据冲向镜像节点212。仅出于示例,高速缓存控制模块252将存储在高速缓存模块244和248中数据的备份映像(即,拷贝)存储到高速缓存存储器模块256。最初,备份映像数据被存储到高速缓存存储器模块256,然后高速缓存控制模块252可以将该备份映像数据从高速缓存存储器模块256传送到高速缓存SSD模块260。存储到高速缓存模块256和260的备份映像数据可以被称作“暂停”数据。
镜像节点212针对原始节点208(例如,高速缓存模块256和260)中发生的每个写入操作维持被冲向镜像节点212的暂停数据。当原始节点208中对应于镜像节点212中的暂停数据的任何数据被修改(例如,重写(overwrite))时,受影响的数据还被冲向镜像节点212,从而使得镜像节点212中的数据反映原始节点208中的经修改的数据。相反,当原始节点208中对应于镜像节点212中的暂停数据的数据被冲向共享存储220时,镜像节点212中的暂停数据变成“无效”或“无暂停”。例如,如果原始节点208将数据冲向共享存储220,则原始节点208可以指示镜像节点212使任何对应的暂停数据无效。然而,在原始节点208出现故障之后,如果对应于无暂停数据的VM与镜像节点212对接,则镜像节点212随后可以重新使用被标记为“无暂停”的数据。镜像节点212可以不使用该无效数据,并且如果镜像节点212将数据标记为无效,则可以随后改写该无效数据,或者如果数据为“无暂停”,则可以在特定条件下重新使用该数据。
此外,当集群管理模块216确定原始节点208已经出现故障时,镜像节点212将尚未无效的任何暂停数据冲向共享存储220。例如,集群管理模块216可以指示镜像节点212冲送传输暂停数据。
现在参考图3,节点集群300中的节点配对配置包括节点304-1、304-2、304-3...304-(n-1)和304-n(统称为节点304),这些节点由集群管理模块308进行管理。节点304与共享存储312通信。集群管理模块308向节点配对分配节点304。例如,在第一节点配对中,节点304-1是原始节点而节点304-2是镜像节点。类似地,在第二节点配对中,节点304-2是原始节点而节点304-3是镜像节点。在第(n-1)个节点配对中,节点304-(n-1)是原始节点而节点304-n是镜像节点。相反,在第n个节点配对中,节点304-n是原始节点而节点304-1是镜像节点。因此,每个节点304在两个节点配对中,并且每个节点304在一个节点配对中为原始节点而在另一节点配对中为镜像节点。此外,如果任何节点304出现故障,则会影响两个节点配对。
每个节点304可以与唯一的标识符相关联。当集群管理模块308向节点配对分配两个节点304时,节点配对中的每个节点304接收指示另一节点304的唯一标识符的信息。例如,集群管理模块308可以向节点304-2提供节点304-1的标识符,以用于将节点304-1标识为原始节点。相反,集群管理模块308可以向节点304-1提供节点304-2的标识符,以用于将节点304-2标识为镜像节点。基于原始节点的标识符,镜像节点提供对原始节点的访问并且保留预定存储器量以存储从原始节点冲送传输的数据。
当节点304中的一个节点出现故障时,集群管理模块308从对应的节点配对以及节点集群300移除该节点304。例如,如果节点304-1出现故障,则集群管理模块308指示节点304-2不允许来自节点304-1的任何后续数据,并且将对应于节点304-1的任何暂停数据冲向共享存储312。集群管理模块308还可以指示节点304-n不再将数据冲向节点304-1。
在任何受影响节点的数据被冲送传输之后,集群管理模块308可以向不具有节点304-1的节点配对重新分配节点304。例如,在第一节点配对中,节点304-2可以是原始节点而节点304-3可以是镜像节点。在第(n-2)个节点配对中,节点304-(n-1)可以是原始节点而节点304-n可以是镜像节点。在第(n-1)个节点配对中,节点304-n可以是原始节点而节点304-2可以是镜像节点。因此,发生故障的节点304-1不再被分配到节点集群300中的任何节点配对。集群管理模块308可以重新引导(reboot)节点304-1或者采取其他补救措施来修复节点304-1。如果成功,则节点304-1可以重新进入节点集群300并被分配给节点配对。
现在参考图4,节点配对方法400开始于404。在408处,方法400向具有原始节点和镜像节点的节点配对分配节点集群中的节点。在412处,方法400确定是否节点集群中的任何节点出现了故障。如果为真,则方法400继续到416。如果为假,则方法400继续到420。在416处,方法400将受节点故障影响的任何节点冲向共享存储。例如,方法400将出现故障的节点的镜像节点以及还可以将出现故障的节点的对应原始节点冲向不同的节点配对。在424处,方法400从节点集群中的任意节点配对移除出现故障的节点。方法400继续到408以向不具有出现故障的节点的节点配对分配节点集群中的节点。
在420处,方法400确定原始节点中是否存在写入操作以及是否支持回写(即,将写入内容复制到对应的镜像节点)。如果为真,则方法400继续到428。如果为假,则方法400继续到412。在428处,方法400将原始节点中的经修改的或写入的数据复制到对应的镜像节点。在432处,方法400确定原始节点是否将数据冲向共享存储。如果为真,则方法400继续到436。如果为假,则方法400继续到412。在436处,方法400使镜像节点中的数据无效,所述镜像节点中的数据对应于由原始节点冲送传输的数据。
上述描述本质上仅是说明性的,并且绝非旨在限制本公开、其应用或使用。本公开的广义教导可以通过各种形式实现。因此,虽然本公开包括特定示例,但是本公开的实际范围并不应当如此受限,这是因为其他修改在研习了附图、说明书和所附权利要求书之后将会变得显而易见。出于清楚的目的,相同的参考标号在图中将用于标识类似的元素。如在此所用,短语A、B和C中至少一个应被解释为意味着使用非排他性逻辑OR的逻辑(A或B或C)。应该理解,在不改变本公开原理的情况下,方法中的一个或多个步骤可以按照不同的顺序(或者同时)执行。
如在此所用,术语模块可以指代、包括专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享、专用或分组);提供所述功能的其他适合的硬件组件;或者上述某些或所有的组合(诸如在片上系统中)或者作为上述中的一部分。术语模块可以包括存储供处理器执行的代码的存储器(共享、专用或分组)。
如上文所用的术语代码可以包括软件、固件和/或微代码,并且可以指代程序、例程、函数、类和/或对象。如上文所用的术语共享意味着来自多个模块的某些或所有代码可以使用单个(共享)处理器来执行。另外,来自多个模块的某些或所有代码可以由单个(共享)存储器来存储。如上文所用的术语分组意味着来自单个模块的某些或所有代码可以使用处理器分组来执行。另外,来自单个模块的某些或所有代码可以使用存储器分组来存储。
在此所述的装置和方法可以通过由一个或多个处理器执行的一个或多个计算机程序来实现。计算机程序包括处理器可执行指令,该指令存储在非瞬态有形计算机可读介质上。计算机程序还可以包括所存储的数据。非瞬态有形计算机可读介质的非限制示例为非易失性存储器、磁存储和光存储。

Claims (20)

1.一种配置用于提供对共享存储的访问的系统,所述系统包括:
第一网络节点,其配置用于向第一多个客户端工作站提供对所述共享存储的访问,所述第一网络节点包括:
第一高速缓存存储器模块,其配置用于存储对应于所述第一多个客户端工作站的第一数据;以及
第一高速缓存控制模块,其配置用于从所述第一高速缓存存储器模块向所述共享存储传送所述第一数据;以及
第二网络节点,其配置用于向第二多个客户端工作站提供对所述共享存储的访问,所述第二网络节点包括:
第二高速缓存存储器模块,其配置用于存储对应于所述第二多个客户端工作站的第二数据并且存储所述第一数据;以及
第二高速缓存控制模块,其配置用于从所述第二高速缓存存储器模块向所述共享存储传送所述第二数据,并且响应于所述第一网络节点的故障,从所述第二高速缓存存储器模块向所述共享存储传送所述第一数据。
2.根据权利要求1所述的系统,进一步包括集群管理模块,其配置用于向节点配对分配所述第二网络节点和所述第一网络节点。
3.根据权利要求2所述的系统,其中所述集群管理模块配置用于检测所述第一网络节点的故障,以及指示所述第二网络节点向所述共享存储传送所述第一数据。
4.根据权利要求2所述的系统,其中所述集群管理模块配置用于从所述节点配对移除所述第一网络节点。
5.根据权利要求1所述的系统,其中所述第一网络节点配置用于当所述第一数据中的至少一个被写入所述第一网络节点并且所述第一数据在所述第一网络节点中被修改时,向所述第二网络节点传送所述第一数据。
6.根据权利要求1所述的系统,其中所述第一网络节点配置用于响应于所述第一网络节点向所述共享存储传送所述第一数据而指示所述第二网络节点使存储在所述第二高速缓存存储器模块中的所述第一数据无效。
7.根据权利要求1所述的系统,其中所述第一多个客户端工作站配置用于根据从所述第二高速缓存存储器模块向所述共享存储传送的所述第一数据进行操作。
8.根据权利要求1所述的系统,其中所述第一高速缓存存储器模块和所述第二高速缓存存储器模块包括NVRAM和固态驱动(SSD)中的至少一个。
9.根据权利要求1所述的系统,其中所述第一数据和所述第二数据对应于虚拟机数据。
10.一种配置用于提供对共享存储的访问的系统,所述系统包括:
布置在节点集群中的多个网络节点,所述多个网络节点中的每个网络节点配置用于向多个客户端工作站提供对所述共享存储的访问;以及
集群管理模块,其配置用于向节点配对指派每个所述网络节点,其中每个所述节点配对包括原始网络节点和镜像网络节点,所述原始网络节点配置用于存储与所述多个客户端工作站的第一分组相关联的第一数据,所述镜像网络节点配置用于存储所述第一数据以及存储与所述多个客户端工作站的第二分组相关联的第二数据,以及所述镜像网络节点配置用于响应于所述原始网络节点的故障而向所述共享存储传送所述第一数据。
11.根据权利要求10所述的系统,其中所述多个网络节点中的每个网络节点是第一节点配对中的原始网络节点和第二节点配对中的镜像网络节点。
12.根据权利要求10所述的系统,其中所述集群管理模块配置用于检测是否所述多个网络节点中的一个网络节点发生故障并且向节点配对重新分配所述多个网络节点。
13.一种用于提供对共享存储的访问的方法,所述方法包括:
使用第一网络节点,
向第一多个客户端工作站提供对所述共享存储的访问;
存储对应于所述第一多个客户端工作站的第一数据;以及
从所述第一网络节点向所述共享存储传送所述第一数据;以及
使用第二网络节点,
向第二多个客户端工作站提供对所述共享存储的访问;
存储对应于所述第二多个客户端工作站的第二数据;
存储所述第一数据;
从所述第二网络节点向所述共享存储传送所述第二数据;以及
响应于所述第一网络节点的故障,从所述第二网络节点向所述共享存储传送所述第一数据。
14.根据权利要求13所述的方法,进一步包括向节点配对分配所述第二网络节点和所述第一网络节点。
15.根据权利要求14所述的方法,进一步包括:
检测所述第一网络节点的故障;以及
指示所述第二网络节点向所述共享存储传送所述第一数据。
16.根据权利要求14所述的方法,进一步包括从所述节点配对移除所述第一网络节点。
17.根据权利要求13所述的方法,进一步包括当所述第一数据中的至少一个被写入所述第一网络节点并且所述第一数据在所述第一网络节点中被修改时,向所述第二网络节点传送所述第一数据。
18.根据权利要求13所述的方法,进一步包括响应于所述第一网络节点向所述共享存储传送所述第一数据而指示所述第二网络节点使存储在所述第二网络节点中的所述第一数据无效。
19.根据权利要求13所述的方法,其中所述第一多个客户端工作站配置用于根据从所述第二网络节点向所述共享存储传送的所述第一数据进行操作。
20.根据权利要求13所述的方法,其中所述第一数据和所述第二数据对应于虚拟机数据。
CN201110379261.5A 2010-11-19 2011-11-18 云存储环境中的镜像解决方案 Expired - Fee Related CN102594858B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US41577510P 2010-11-19 2010-11-19
US61/415,775 2010-11-19

Publications (2)

Publication Number Publication Date
CN102594858A true CN102594858A (zh) 2012-07-18
CN102594858B CN102594858B (zh) 2016-02-03

Family

ID=46065397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110379261.5A Expired - Fee Related CN102594858B (zh) 2010-11-19 2011-11-18 云存储环境中的镜像解决方案

Country Status (2)

Country Link
US (1) US9112887B2 (zh)
CN (1) CN102594858B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932415A (zh) * 2012-09-26 2013-02-13 东软集团股份有限公司 一种镜像文件存储方法及装置
CN104750658A (zh) * 2013-12-27 2015-07-01 英特尔公司 辅助式一致共享存储器
CN108076078A (zh) * 2016-11-09 2018-05-25 北京金山云网络技术有限公司 一种云主机创建方法、装置及云服务系统
CN112015340A (zh) * 2020-08-25 2020-12-01 实时侠智能控制技术有限公司 一种非易失性数据存储结构和存储方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103049407B (zh) * 2012-12-27 2016-07-13 华为技术有限公司 数据存储方法、装置及系统
US9086991B2 (en) * 2013-02-19 2015-07-21 Infinidat Ltd. Solid state drive cache recovery in a clustered storage system
CN103309763A (zh) * 2013-07-04 2013-09-18 曙光信息产业(北京)有限公司 虚拟机的容错机制的保护方法和装置
US9760577B2 (en) 2013-09-06 2017-09-12 Red Hat, Inc. Write-behind caching in distributed file systems
US9898398B2 (en) * 2013-12-30 2018-02-20 Microsoft Technology Licensing, Llc Re-use of invalidated data in buffers
US9723054B2 (en) 2013-12-30 2017-08-01 Microsoft Technology Licensing, Llc Hierarchical organization for scale-out cluster
US9430508B2 (en) 2013-12-30 2016-08-30 Microsoft Technology Licensing, Llc Disk optimized paging for column oriented databases
IN2014DE00404A (zh) * 2014-02-13 2015-08-14 Netapp Inc
US9830238B2 (en) 2014-08-29 2017-11-28 Netapp, Inc. Techniques for maintaining communications sessions among nodes in a storage cluster system
US9483311B2 (en) * 2014-09-15 2016-11-01 International Business Machines Corporation Logical data shuffling
CN106331642B (zh) * 2016-08-31 2020-05-26 浙江大华技术股份有限公司 一种视频云系统中的数据处理方法及装置
US11099942B2 (en) 2019-03-21 2021-08-24 International Business Machines Corporation Archival to cloud storage while performing remote backup of data
US11507392B2 (en) * 2020-02-26 2022-11-22 Red Hat, Inc. Automatically configuring computing clusters

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080091747A1 (en) * 2006-10-17 2008-04-17 Anand Prahlad System and method for storage operation access security

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043485B2 (en) * 2002-03-19 2006-05-09 Network Appliance, Inc. System and method for storage of snapshot metadata in a remote file
WO2012035588A1 (en) * 2010-09-17 2012-03-22 Hitachi, Ltd. Method for managing information processing system and data management computer system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080091747A1 (en) * 2006-10-17 2008-04-17 Anand Prahlad System and method for storage operation access security

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932415A (zh) * 2012-09-26 2013-02-13 东软集团股份有限公司 一种镜像文件存储方法及装置
CN102932415B (zh) * 2012-09-26 2015-04-15 东软集团股份有限公司 一种镜像文件存储方法及装置
CN104750658A (zh) * 2013-12-27 2015-07-01 英特尔公司 辅助式一致共享存储器
CN108076078A (zh) * 2016-11-09 2018-05-25 北京金山云网络技术有限公司 一种云主机创建方法、装置及云服务系统
CN112015340A (zh) * 2020-08-25 2020-12-01 实时侠智能控制技术有限公司 一种非易失性数据存储结构和存储方法
CN112015340B (zh) * 2020-08-25 2024-05-03 实时侠智能控制技术有限公司 一种非易失性数据存储结构和存储方法

Also Published As

Publication number Publication date
CN102594858B (zh) 2016-02-03
US9112887B2 (en) 2015-08-18
US20120131126A1 (en) 2012-05-24

Similar Documents

Publication Publication Date Title
CN102594858A (zh) 云存储环境中的镜像解决方案
CN110427284B (zh) 数据处理方法、分布式系统、计算机系统和介质
US7934121B2 (en) Transparent replacement of a system processor
US8458284B2 (en) Systems and methods for efficient live application migration within bandwidth constrained networks
US20080201603A1 (en) Correlating hardware devices between local operating system and global management entity
CN103294616B (zh) 信息处理设备和控制方法
US8612973B2 (en) Method and system for handling interrupts within computer system during hardware resource migration
US9367261B2 (en) Computer system, data management method and data management program
US20160147603A1 (en) Allocation of replica-sets in a storage cluster
WO2014006656A1 (en) Computer system, cache control method and computer program
WO2017179537A1 (ja) ソフトウェア更新制御装置、ソフトウェア更新制御システム、ソフトウェア更新制御方法、及び、ソフトウェア更新制御プログラムが格納された記録媒体
US9916215B2 (en) System and method for selectively utilizing memory available in a redundant host in a cluster for virtual machines
CN106855834B (zh) 一种数据备份方法、装置和系统
CN104102535B (zh) 进程迁移方法和可迁移操作系统
CN102597963B (zh) 集群中的动态副本卷交换
US20210089379A1 (en) Computer system
US20180089055A1 (en) Method and apparatus for monitoring logs
US20140059312A1 (en) Recording medium, computer, and information processing system
CN110012111B (zh) 一种数据服务集群系统及数据处理方法
KR101601877B1 (ko) 분산 파일시스템에서 클라이언트가 데이터 저장에 참여하는 장치 및 방법
CN109587185B (zh) 云存储系统和云存储系统中的对象处理方法
JP6990055B2 (ja) 分散コンピューティングシステムにおけるデータをリカバリする方法およびシステム
CN106951443B (zh) 基于分布式系统的副本同步的方法、设备和系统
CN112631994A (zh) 数据迁移方法及系统
US20090133010A1 (en) Virtualized blade flash with management module

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: TOSHIBA K.K.

Free format text: FORMER OWNER: MAWIER INTERNATIONAL TRADE CO., LTD.

Effective date: 20140618

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20140618

Address after: Tokyo, Japan

Applicant after: Toshiba Corp.

Address before: Babado J San Mega Le

Applicant before: MARVELL WORLD TRADE Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180502

Address after: Tokyo, Japan

Patentee after: TOSHIBA MEMORY Corp.

Address before: Tokyo, Japan

Patentee before: Toshiba Corp.

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: 20160203