CN108352995B - 一种smb业务故障处理方法和存储设备 - Google Patents

一种smb业务故障处理方法和存储设备 Download PDF

Info

Publication number
CN108352995B
CN108352995B CN201680003334.1A CN201680003334A CN108352995B CN 108352995 B CN108352995 B CN 108352995B CN 201680003334 A CN201680003334 A CN 201680003334A CN 108352995 B CN108352995 B CN 108352995B
Authority
CN
China
Prior art keywords
file
storage device
handle
lock
backup
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.)
Active
Application number
CN201680003334.1A
Other languages
English (en)
Other versions
CN108352995A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN108352995A publication Critical patent/CN108352995A/zh
Application granted granted Critical
Publication of CN108352995B publication Critical patent/CN108352995B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • 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/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • GPHYSICS
    • G06COMPUTING; 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/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • 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
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种SMB业务故障处理方法,包括:第一存储设备根据主机发送的第一打开文件指令生成文件句柄,将文件句柄发送给第二存储设备,第二存储设备将文件句柄保存为备份句柄。第二存储设备根据第一存储设备发送的故障信息激活第一存储设备的IP地址,与主机建立通信连接。第二存储设备根据主机发送的第二打开文件指令中的句柄标识,确定句柄标识对应的文件句柄,根据文件句柄打开文件,将操作结果发送给主机。本发明还提供能够实现上述方法的主机和存储阵列。本发明可以在处理SMB业务的存储设备发生故障时,由备用存储设备接管SMB业务,使得SMB业务不中断地执行。

Description

一种SMB业务故障处理方法和存储设备
技术领域
本发明涉及通信领域,尤其涉及一种SMB业务故障处理方法和存储设备。
背景技术
服务器信息块(Server Message Block,简称SMB)协议是一种在计算机问共享文件、打印机或串口的协议。客户端通过SMB协议可以在各种网络环境下读/写服务器上的文件,也可以对服务器提出服务请求。在传输控制协议/互联网协议(Transmission ControlProtocol/Internet Protocol,简称TCP/IP)环境下,客户机与服务器建立连接之后,客户机可发送SMB命令到服务器上,对文件系统进行操作,例如访问共享目录、打开文件、读写文件等。
在对文件执行输入/输出端口(Input/Output,简称I/O)操作过程中,要从一个文件读取数据,应用程序要调用文件操作函数并传送文件名,还要选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应用程序需要调用读文件函数,并将文件句柄和指定字节数传送给操作系统。
在现有技术中,主机访问第一存储设备的文件时,第一存储设备的文件系统会根据主机发送的打开文件指令生成文件句柄,利用文件句柄打开文件。在第一存储设备发生故障的情况下,从第一存储设备切换到第二存储设备时,由于第二存储设备没有文件句柄,第二存储设备的文件系统无法响应主机重新发送的打开文件指令,造成主机无法访问文件,导致SMB业务中断。
发明内容
本申请提供了一种SMB业务故障处理方法和存储设备,能够在处理SMB业务的存储设备发生故障时,由备用存储设备接管SMB业务保证SMB业务不中断地执行。
本申请的第一方面提供了一种SMB业务故障处理方法,该方法可以应用于业务处理系统,业务处理系统包括主机和至少两个存储设备。该方法包括:第一存储设备接收主机发送的第一打开文件指令,根据第一打开文件指令生成文件句柄,将文件句柄发送给第二存储设备,以及将该文件句柄的句柄标识发送给主机。第二存储设备将文件句柄保存为备份句柄。当第一存储设备发生故障时,主机与第二存储设备建立通信连接。第二存储设备根据主机发送的第二打开文件指令中的句柄标识,确定句柄标识对应的文件句柄,根据该文件句柄打开文件,将操作结果发送给主机。第一存储设备为服务设备,第二存储设备为备用设备。依此实施,第一存储设备将文件句柄备份到第二存储设备后,当第一存储设备发生故障时,第二存储设备可以根据文件句柄恢复SMB业务,从而保证SMB业务不中断。
在第一方面的一个可能实现方式中,第一存储设备根据第一打开文件指令包括的获取持久句柄子命令生成文件句柄;检查文件句柄是否为持久句柄,若是,则将文件句柄发送给第二存储设备。依此实施,第二存储设备仅备份持久句柄。
在第一方面的另一个可能实现方式中,第二打开文件指令包括句柄恢复子命令,句柄标识由句柄恢复子命令携带。
在第一方面的另一个可能实现方式中,当第一存储设备、第二存储设备与分布式锁服务器属于同一存储阵列时,在将文件句柄发送给第二存储设备之前,第一存储设备接收主机发送的加锁指令,根据加锁指令将文件锁请求发送给分布式锁服务器,分布式锁服务器根据文件锁请求对文件句柄对应的文件设置文件锁,然后第一存储设备将文件锁发送给第二存储设备,第二存储设备将文件锁保存为备份文件锁。其中,第一存储设备还可以建立文件锁和文件句柄的对应关系。依此实施,备用存储设备除了备份文件句柄以外,还可以备份文件锁。
进一步的,在第一方面的另一个可能实现方式中,第二存储设备将文件句柄保存为备份句柄之后,向分布式锁服务器发送静默请求,静默请求携带的文件信息对应于上述备份句柄,分布式锁服务器根据该文件信息,将第二存储设备中备份句柄对应的文件进行静默设置。依此实施,对文件进行静默设置之后,分布式锁服务器再收到其他对该文件的锁请求时,不会为该文件再分配文件锁。
进一步的,在第一方面的另一个可能实现方式中,在确定句柄标识对应的文件句柄之后,第二存储设备确定文件句柄对应的备份文件锁,将备份文件锁的信息发送给分布式锁服务器;分布式锁服务器根据备份文件锁的信息,对上述文件加锁。
在第一方面的另一个可能实现方式中,当第一存储设备与第一分布式锁服务器属于同一存储阵列,第一存储设备与第二存储设备属于不同存储阵列时,在将文件句柄发送给第二存储设备之前,第一存储设备接收主机发送的加锁指令;根据加锁指令,将文件锁请求发送给第一分布式锁服务器,第一分布式锁服务器根据文件锁请求,对文件句柄对应的文件设置文件锁。第一存储设备将该文件锁发送给第二存储设备,第二存储设备将文件锁保存为备份文件锁。依此实施,备用存储设备除了备份文件句柄以外,还可以备份文件锁。
进一步的,在第一方面的另一个可能实现方式中,第二分布式锁服务器与第二存储设备属于同一存储阵列。第二存储设备将文件句柄保存为备份句柄后,向第二分布式锁服务器发送静默请求,该静默请求携带的文件信息对应于备份句柄,第二分布式锁服务器根据该文件信息,将第二存储设备中备份句柄对应的文件进行静默设置。依此实施,在第一存储设备和第二存储设备属于不同存储阵列时,对备份文件进行静默设置后,第二存储阵列的分布式锁服务器再收到其他对该文件的锁请求时,不会为该备份文件再分配文件锁。
进一步的,在第一方面的一个可能实现方式中,在获取句柄标识对应的文件句柄之后,第二存储设备确定文件句柄对应的备份文件锁,将备份文件锁的信息发送给第二分布式锁服务器,第二分布式锁服务器根据备份文件锁的信息对上述文件加锁。依此实施,备用存储设备除了可以恢复文件句柄以外,还可以为文件恢复文件锁,从而保证SMB业务的完整性。
进一步的,在第一方面的另一个可能的实现方式中,第二存储设备从第一存储设备发生故障开始计时;当计时时长达到预设时长时,第二存储设备删除文件句柄,或设置文件句柄无效。以此实现方式,当服务设备设有多个备用存储设备时,备用存储设备可以设置老化时长。当超过老化时长时,备用存储设备可以清除文件句柄,从而节省存储资源。
第二方面提供一种SMB业务故障处理方法,包括:主机向第一存储设备发送第一打开文件指令,第一打开文件指令包括持久句柄请求;当第一存储设备发生故障且第一存储设备的IP地址在第二存储设备激活时,主机向第二存储设备发送第二打开文件指令,第二打开文件指令包括句柄标识,句柄标识用于指示第二存储设备获取文件的文件句柄;主机接收第二存储设备返回的操作结果。由此可见,当服务设备发生故障时,主机可以在备份设备上执行SMB业务,备份设备可以根据文件句柄对SMB业务文件进行读写,从而保证SMB业务不中断。
在第二方面的一个可能实现方式中,第一打开文件指令包括获取持久句柄子命令,获取持久句柄子命令用于指示第一存储设备生成持久句柄。
在第二方面的另一个可能实现方式中,第二打开文件指令包括句柄恢复子命令,句柄恢复子命令携带有句柄标识。
在第二方面的另一个可能实现方式中,主机向第一存储设备发送加锁指令,该加锁指令用于对文件句柄对应的文件设置文件锁。
第三方面提供一种存储系统,包括:第一存储设备以及第二存储设备。第一存储设备可以实现第一方面提供的SMB业务故障处理方法中第一存储设备的功能。第二存储设备可以实现第一方面提供的SMB业务故障处理方法中第二存储设备的功能。存储设备的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。
第四方面提供一种主机,可以实现第二方面提供的SMB业务故障处理方法中主机的功能。主机的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。
第五方面提供一种业务处理系统,包括:第四方面提供的主机以及第三方面提供的存储系统。
从本发明实施例可以看出,第一存储设备根据主机发送的第一打开文件指令生成文件句柄之后,将文件句柄发送给第二存储设备,第二存储设备将文件句柄保存为备份句柄。当第一存储设备发生故障时,第二存储设备与主机建立通信连接,接收主机发送的第二打开文件指令,根据第二打开文件指令中的句柄标识,确定句柄标识对应的文件句柄,根据文件句柄打开文件,将操作结果发送给主机。本发明实施例可以在不同存储阵列或同一存储阵列的不同存储设备备份文件句柄,当服务设备(即第一存储设备)发生故障时,备份设备(即第二存储设备)可以接管SMB业务,从而保证SMB业务不中断。
附图说明
图1为本发明实施例中业务处理系统的一个架构图;
图2为本发明实施例中存储设备的一个结构示意图;
图3为本发明实施例中SMB业务故障处理方法的一个示意图;
图4为本发明实施例中SMB业务故障处理方法的另一个示意图;
图5为本发明实施例中SMB业务故障处理方法的另一个示意图;
图6为本发明实施例中SMB业务故障处理方法的另一个示意图;
图7为本发明实施例中业务处理系统的一个结构示意图;
图8为本发明实施例中业务处理系统的另一个结构示意图;
图9为本发明实施例中业务处理系统的另一个结构示意图;
图10为本发明实施例中主机的一个结构示意图。
具体实施方式
本发明提供了一种SMB业务故障处理方法,该方法应用于一种业务处理系统。请参阅图1,图1为本发明实施例中业务处理系统的架构示意图。
业务处理系统包括主机11和若干存储阵列12。
主机11是指有计算能力的计算设备,能够完成各种数据处理工作。主机可以是个人电脑(personal computer,简称PC)、手机、平板电脑、车载电脑、可穿戴电子设备或个人数字助理(personal digital assistant,简称PDA)等。
存储阵列12包括一个或多个存储设备13。存储设备13具有一个或多个备份设备,这些备份设备可以与存储设备13位于同一个存储阵列,也可以与存储设备13位于不同的存储阵列。举例来说,在第一存储阵列内,存储设备B为存储设备A的备用设备。在第二存储阵列中,存储设备A′可以作为存储设备A的备用设备,存储设备B′可以作为存储设备B的备用设备。在主机访问一个存储设备(如存储设备A)的情况下,当存储设备A发生故障时,主机可以从存储设备B、存储设备A′或存储设备B′恢复数据。第一存储阵列和第二存储阵列均可以通过存储阵列12实现,存储设备A、B、A′和B′均可以通过存储设备13实现。
请参阅图2,存储设备13包括控制器131和一个或多个硬盘132。控制器131包括:通讯接口1311、处理器1312、存储器1313以及总线1314。通讯接口1311、处理器1312和存储器1313之间通过总线1314相互连接。存储器1313用于存储数据以及操作指令,其中,通过调用存储器1313存储的操作指令,处理器1312可以执行图3~图6所示SMB业务故障处理方法。
其中,处理器1312可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)。存储器1313可以是随机存取存储器(Random Access Memory,简称RAM)。
本发明提供的SMB业务故障处理方法可以基于以上业务处理系统实现。首先对SMB业务故障处理方法应用在不同存储阵列进行介绍。请参阅图3,本发明提供的SMB业务故障处理方法的一个实施例包括:
步骤301、第一存储设备接收主机11发送的第一打开文件指令。
本实施例中,第一存储阵列用于处理主机11的文件访问请求。第一存储设备可以是在第一存储阵列中处理SMB业务的任意一个存储设备。
第一打开文件指令用于访问第一存储设备上的文件。当主机11向第一存储设备发送第一打开文件指令时,第一存储设备根据第一打开文件指令生成文件句柄,并将该文件句柄的句柄标识返回给主机11。该文件句柄包括句柄期望权限,该句柄期望权限规定了对文件的访问权限、排他权限或范围锁。访问权限是指读文件、写文件或删除文件的权限。排他权限是指其他主机不能对文件执行读、写或删除的操作。范围锁用来保护在文件中某个范围内的数据,该范围内的数据可读、可写或独占。第一存储设备生成文件句柄后,可以根据文件句柄获取文件权限或范围锁等信息,便于句柄恢复。
其中,第一打开文件指令包括获取持久句柄子命令,第一存储设备根据获取持久句柄子命令生成持久类型的文件句柄。具体的,在主机11使用持久类型的文件句柄对文件进行访问的情况下,当存储设备发生故障,主机11可以等待一段时间,在此期间主机11可以重新连接正常的存储设备,发送携带句柄恢复子命令的打开文件指令,以恢复业务。例如,获取持久句柄子命令可以是DH2Q子命令或DHnQ子命令,句柄恢复子命令为Dh2C子命令或DhnC子命令。
步骤302、第一存储设备根据第一打开文件指令生成文件句柄,将文件句柄发送给第二存储设备。
第二存储设备是在第二存储阵列中的任意一个存储设备,其作为备用设备,用于当第一存储设备发送故障时处理SMB业务。一种可能的方式中,在第二存储阵列中部署有一个存储设备,其文件系统为第一存储设备的文件系统的镜像,该存储设备作为第二存储设备。第二存储设备收到文件句柄备份信息之后,存储该文件句柄备份信息。
此外在第二存储阵列上还可以再选择一个存储设备进行备份。一种可能的实现方式中,将文件句柄的句柄标识进行哈希运算,计算出存储设备标识,该存储设备标识对应的存储设备用来保存文件句柄备份信息。另一种可能的方式中,将文件句柄的句柄标识进行取模运算,得到的余数为存储设备标识,该存储设备标识对应的存储设备用来保存文件句柄备份信息。
当第一存储设备执行不同类型的业务时,第一存储设备可以生成普通的文件句柄和持久类型的文件句柄。第一存储设备生成文件句柄之后,检查文件句柄是否为持久句柄,若是持久句柄,则执行步骤303。若不是持久句柄,第一存储设备可以不发送文件句柄给第二存储设备。
需要说明的是,第一存储设备将文件句柄发送给第二存储设备的句柄同步过程使用版本号机制,文件以及文件句柄均可以配置版本号。版本号用于区分不同时间段内备份的文件句柄。第二存储设备可以将最新版本号作为判断依据,如果接收的文件句柄的版本号不是最新版本号,那么第二存储设备可以丢弃该文件句柄或设置该文件句柄无效。
此外主机11还可以向第一存储设备发送加锁指令,用来设置上述文件句柄对应文件的文件锁。文件锁是范围锁,其对应的文件部分属于可读或可写信息。当设置文件锁之后,生成文件锁备份信息,建立文件锁备份信息与句柄信息的对应关系。将文件句柄备份信息和文件锁备份信息同步至第二存储设备时,第二存储设备可以获得上述文件锁备份信息与文件句柄备份信息的对应关系。
以上可以看出,先对第一存储设备的文件执行加锁操作,然后执行第一存储设备将文件锁同步至第二存储设备的步骤。如果文件锁同步失败,则对加锁操作进行解锁回退。在解锁过程中,先进行文件锁备份信息同步,然后再向第一存储阵列的分布式锁服务器请求解锁,如果文件锁同步失败,那么不进行解锁,直接返回失败。分布式锁服务器可以是部署了分布式锁管理应用程序的任意一个存储设备,也可以是单独部署在存储阵列中用于管理分布式锁的电子设备。
步骤303、第二存储设备将文件句柄保存为备份句柄。
需要说明的是,在第一存储阵列将文件句柄或文件锁同步给第二存储阵列的过程中,如果出现同步错误,例如第二存储阵列返回同步错误,或者第一存储阵列无法发送文件句柄和/或文件锁,那么第一存储阵列置为无法切换业务状态,然后对备份信息进行再同步修复。修复完成后,所有备份信息都同步完成,设置第一存储阵列为可切换业务状态。
步骤304、第一存储设备将文件句柄的句柄标识发送给主机11。
步骤305、当第一存储设备发生故障时,第二存储设备与主机11建立通信连接。
当第一存储阵列发生故障时,第二存储阵列收到故障信息之后,从备用阵列升级为主服务阵列,并将该事件广播到第二存储阵列的各存储设备。在第二存储阵列中选择任意一个运行正常的存储设备,在该运行正常的存储设备上激活故障设备的IP地址。激活IP地址后,主机11与第二存储阵列的备份设备建立通信连接。第二存储设备获取升级事件信息时,可知第一存储设备发生故障。
步骤306、第二存储设备接收主机11发送的第二打开文件指令。具体的,主机11收到第一存储设备发送的句柄标识后,生成携带该句柄标识的第二打开文件指令。第二打开文件指令和第一打开文件指令所指定的文件相同。在一个可选实施例中,第二打开文件指令包括句柄恢复子命令,句柄恢复子命令携带有上述句柄标识。
步骤307、第二存储设备根据第二打开文件指令中的句柄标识,确定句柄标识对应的备份句柄信息,根据备份句柄信息重新打开文件。
步骤308、第二存储设备将操作结果发送给主机11。
本实施例中,第一存储阵列和第二存储阵列均可通过存储阵列12来实现,第一存储设备和第二存储设备均可通过存储设备13来实现。在主机11和第一存储设备断开连接的情况下,由于第二存储设备使用第一存储设备的IP地址,因此主机11可以向第二存储设备发送打开文件指令,第二存储设备可以响应打开文件指令,获取文件句柄,然后根据备份句柄信息重新打开文件,然后返回操作结果。当打开文件成功时,操作结果可为1,表示打开文件成功。如果备份句柄有对应的范围锁信息,根据备份句柄信息上的范围锁信息通过分布式锁服务器恢复范围锁,最后将恢复结果返回给主机11。
基于图3所示实施例,在一个可选实施例中,上述方法还包括:在接收故障信息之后,第二存储设备向第二存储阵列的分布式锁服务器发送静默请求,该静默请求携带需要静默的文件信息,分布式锁服务器将第二存储设备的备份句柄对应的文件进行静默设置。
本实施例中,当第一存储阵列发生故障时,第二存储阵列收到故障信息后,将故障信息广播到第二存储阵列的各存储设备。第二存储阵列的各个存储设备可以遍历其管理的所有备份句柄,选择为第一存储设备保存的备份句柄以及备份文件锁,根据选取的备份句柄,确定需要静默的文件信息,文件信息是指文件标识(如文件名)。然后将文件信息发送给分布式锁服务器,分布式锁服务器为该备份句柄对应的文件设置静默标识。举例来说,将备份句柄1对应的文件text1,通过分布式锁服务器设置静默标识之后,当收到其他对于text1的文件锁请求时,分布式锁服务器不授予文件锁,从而可以避免该文件被抢占造成的句柄恢复失败。
当服务设备发生故障时,如果服务设备不执行文件恢复流程,那么备份句柄会占用备用设备的存储资源,造成存储资源的浪费。为了解决该问题,在本发明的另一个可选实施例中,该方法还包括:第二存储设备从接收第一存储设备发送的故障信息开始计时;当计时时长达到预设时长时,第二存储设备删除文件备份句柄,或设置文件备份句柄无效。
本实施例中,备用存储设备可以设置老化时长,当备用存储设备计时到达预设的老化时长时,备用存储设备可以清除备份句柄,从而节省存储资源。
需要说明的是,当收到故障信息之后,第二存储设备对文件句柄设置静默标识和设置老化时长的过程可以一并执行。
下面对SMB业务故障处理方法应用在同一存储阵列进行介绍。请参阅图4,本发明提供的SMB业务故障处理方法的另一个实施例包括:
步骤401、第一存储设备接收主机11发送的第一打开文件指令。
本实施例中,第一存储设备和第二存储设备属于同一存储阵列,第一存储设备为服务设备,用于处理SMB业务。第二存储设备为存储阵列中的任意一个存储设备,其作为备用设备,用于在第一存储设备发生故障时处理SMB业务。
步骤402、第一存储设备根据第一打开文件指令生成文件句柄,将文件句柄发送给第二存储设备。
步骤403、第二存储设备将文件句柄保存为备份句柄。
举例来说,请参阅图5,当主机访问存储设备A上的文件file_1时,存储设备A收到第一打开文件指令时,可以生成file_1的文件句柄1,将文件句柄1同步给存储设备B,存储设备B保存文件句柄1。存储设备A还可以对file_1设置文件锁(如范围锁1和范围锁2),然后将范围锁1和范围锁2同步至存储设备B。
步骤404、第一存储设备将文件句柄的句柄标识发送给主机11。
步骤405、当第一存储设备发生故障时,第二存储设备与主机11建立通信连接。
当第一存储设备发生故障时,第一存储设备可以在存储阵列内广播故障信息,同一存储阵列中的第二存储设备可以监听到故障信息。主机11可以在存储阵列中的任一正常设备上激活第一存储设备的IP地址,然后与第二存储设备建立通信连接。
步骤406、第二存储设备接收主机11发送的第二打开文件指令。
步骤407、第二存储设备根据第二打开文件指令中的句柄标识,确定句柄标识对应的文件句柄,根据备份句柄信息重新打开文件。
步骤408、第二存储设备将操作结果发送给主机11。
举例来说,请参阅图5,在主机访问file_1的过程中,在主机和存储设备A断开连接的情况下,由于存储设备B使用存储设备A的IP地址,因此主机可以向存储设备B发送第二打开文件指令,存储设备B可以响应第二打开文件指令,获取文件句柄1,然后根据文件句柄1重新打开文件。存储设备B可以根据文件句柄1获取范围锁1和范围锁2,分布式锁服务器恢复文件的范围锁(即范围锁1和范围锁2),最后将恢复结果返回给主机。需要说明的是,当存储设备B升级为主服务设备后,可以将存储设备C作为备用设备,当存储设备C升级为主服务设备且存储设备A恢复正常后,可以将存储设备A作为备用设备,形成环形备用关系,以保证业务处理系统的可靠性。
基于图4所示实施例,在一个可选实施例中,在步骤403之后,上述方法还包括:所有存储设备收到第一存储设备的故障信息;遍历所有为第一存储设备产生的备份句柄,通过分布式锁服务器对上述备份句柄对应的文件进行静默设置。本实施例中,分布式锁服务器对备份句柄对应的文件进行静默设置的过程,与图3所示可选实施例中分布式锁服务器对备份句柄对应的文件进行静默设置的过程相似,此处不再赘述。
在一个可选实施例中,在步骤403之后,该方法还包括:所有存储设备收到第一存储设备的故障信息开始计时;当计时时长达到预设时长时,所有存储设备删除其管理的为第一存储设备产生的备份句柄,或设置备份句柄无效。
本实施例中,备用存储设备可以设置老化时长,当计时到达预设的老化时长,备用存储设备可以清除备份句柄,从而节省存储资源。
为便于理解,下面以一个具体应用场景对本发明实施例中的SMB业务故障处理方法进行详细介绍:
请参阅图6,下面以存储设备A属于存储阵列1,存储设备A′属于存储阵列2,存储阵列2为存储阵列1的备用阵列,存储设备A′为存储设备A的备用设备,存储设备B′为存储设备A′的备用设备,存储阵列1中的分布式锁服务器为分布式锁服务器1,存储阵列2中的分布式锁服务器为分布式锁服务器2,存储设备A的IP地址为x.x.x.2。
当主机访问存储设备A上的文件file_1时,主机向存储设备A发送第一打开文件指令,存储设备A的文件系统响应于第一打开文件指令对文件进行访问。存储设备A根据第一打开文件指令,产生file_1的文件句柄1,将文件句柄1同步至存储设备A′,以及,将文件句柄1的句柄标识返回给主机。存储设备A还可以根据其他打开文件指令生成file_2对应的文件句柄2,将文件句柄2同步至存储设备A′。
主机还可以向存储设备A发起对file_1的加锁指令,存储设备A根据加锁指令向分布式锁服务器1发起加锁请求,分布式锁服务器1对file_1设置范围锁1和范围锁2。加锁成功后,存储设备A将范围锁1和范围锁2同步至存储设备A′。
当存储阵列1发生故障时,存储阵列2收到故障信息后,存储阵列2中的存储设备A′可以遍历所有备份句柄,选择存储设备A对应的备份句柄(即文件句柄1)和备份文件锁(即范围锁1和范围锁2),分布式锁服务器2将file_1设置静默标识。存储设备A′收到故障信息时,还可以为file_1的文件句柄1设置老化时长。然后,可以将存储设备A′的IP地址设置为x.x.x.2,主机与存储设备A′建立连接。
当文件句柄为持久句柄时,主机会等待一段时间后,向x.x.x.2发送第二打开文件指令。
在file_1没有文件锁的情况下,存储设备A′可以根据第二打开文件指令的文件句柄1的句柄标识获取文件句柄1,根据文件句柄1对file_1进行访问。
在file_1设置有范围锁1和范围锁2的情况下,存储设备A′可以根据第二打开文件指令的文件句柄1的句柄标识,获取文件句柄1以及范围锁1和范围锁2,然后分布式锁服务器2恢复file_1的范围锁(即范围锁1和范围锁2),将恢复结果返回给主机。
存储设备A的其他文件(如file_2)的处理方法与file_1相似,存储阵列1中其他存储设备(如存储设备B、C或D)中文件的处理方法与存储设备A相似,此处不再赘述。
以上对本发明实施例中的SMB业务故障处理方法进行了描述,下面对本发明实施例中提供的业务处理系统700进行具体描述。
业务处理系统包括主机701以及存储系统702,主机701可以实现以上SMB业务故障处理方法中主机的功能,存储系统702至少包括第一存储设备7021以及第二存储设备7022。第一存储设备7021可以实现图3至图6所示实施例中SMB业务故障处理方法中第一存储设备的功能,第二存储设备7022可以实现图3至图6所示实施例中SMB业务故障处理方法中第二存储设备的功能。下面分别对存储系统702以及主机701进行详细介绍。请参阅图7,本发明提供的存储系统702的一个实施例包括:
第一存储设备7021,用于接收主机701发送的第一打开文件指令,根据第一打开文件指令生成文件句柄,将文件句柄发送给第二存储设备;
第二存储设备7022,用于将文件句柄保存为备份句柄;
第二存储设备7022,还用于接收主机701发送的第二打开文件指令,根据第二打开文件指令中的句柄标识,获取句柄标识对应的文件句柄;根据文件句柄打开文件,将操作结果发送给主机701。
本实施例中,当第一存储设备7021发生故障时,第二存储设备7022可以根据备份的文件句柄接管SMB业务,保证SMB业务不中断地执行。
基于图7所示实施例,在一个可选实施例中,第一打开文件指令包括获取持久句柄子命令。第一存储设备7021具体用于根据获取持久句柄子命令生成文件句柄;检查文件句柄是否为持久句柄,若是,则执行将文件句柄发送给第二存储设备7022的步骤。
基于图7所示实施例,在一个可选实施例中,第二打开文件指令包括句柄恢复子命令,句柄标识由句柄恢复子命令携带。
在以上可选实施例中,第二存储设备7022与第一存储设备7021可以属于同一存储阵列,也可以属于不同的存储阵列。
基于图7所示实施例,在本发明的另一个可选实施例中,请参阅图8,存储系统702还包括分布式锁服务器801;
第一存储设备7021还用于在将文件句柄发送给第二存储设备7022之前,接收主机701发送的加锁指令;根据加锁指令将文件锁请求发送给分布式锁服务器801。分布式锁服务器801根据文件锁请求,对文件句柄对应的文件设置文件锁。第一存储设备7021将文件锁发送给第二存储设备7022,第二存储设备7022将文件锁保存为备份文件锁。
基于图7所示实施例,在一个可选实施例中,
第二存储设备7022,还用于在将所述文件句柄保存为备份句柄之后,将静默请求发送给分布式锁服务器701,静默请求携带的文件信息与备份句柄对应;
分布式锁服务器701,还用于根据文件信息将第二存储设备中备份句柄对应的文件进行静默设置。
基于图7所示实施例,在本发明的另一个可选实施例中,
第二存储设备7022,还用于确定文件句柄对应的备份文件锁,将备份文件锁的信息发送给分布式锁服务器701;
分布式锁服务器801,还用于根据备份文件锁的信息,对备份句柄对应的文件加锁。
基于图7所示实施例,在本发明的另一个可选实施例中,第二存储设备7022还用于从第二存储设备7022接收第一存储设备7021发送的故障信息开始计时;当计时时长达到预设时长时,删除文件句柄或设置文件句柄无效。
基于图7所示实施例,在本发明的另一个可选实施例中,
第一存储设备7021还用于在将文件句柄发送给第二存储设备7022之前,接收主机701发送的加锁指令;根据加锁指令将文件锁请求发送给第一分布式锁服务器901。第一分布式锁服务器901根据文件锁请求,对文件句柄对应的文件设置文件锁。第一存储设备7021将文件锁发送给第二存储设备7022,第二存储设备7022将文件锁保存为备份文件锁。其中,第一存储设备与第一分布式锁服务器属于同一存储阵列,第一存储设备与第二存储设备属于不同存储阵列。
基于图7所示实施例,在另一个可选实施例中,
第二存储设备7022,还用于在将所述文件句柄保存为备份句柄之后,将静默请求发送给第二分布式锁服务器,静默请求携带的文件信息与备份句柄对应;
第二分布式锁服务器902,还用于根据文件信息将第二存储设备中备份句柄对应的文件进行静默设置,第二分布式锁服务器902与第二存储设备7022属于同一存储阵列。
进一步的,在另一个可选实施例中,
第二存储设备7022,还用于在第二存储设备7022获取句柄标识对应的文件句柄之后,确定文件句柄对应的备份文件锁,将备份文件锁的信息发送给第二分布式锁服务器902;
第二分布式锁服务器902,还用于根据备份文件锁的信息对文件加锁。
下面对主机701进行介绍,请参阅图10,本发明提供主机701的一个实施例包括:
发送模块7011,用于向第一存储设备7021发送第一打开文件指令,第一打开文件指令包括持久句柄请求;
发送模块7011,还用于当第一存储设备7021发生故障且第一存储设备的IP地址在第二存储设备7022激活时,向第二存储设备7022发送第二打开文件指令,第二打开文件指令包括句柄标识,句柄标识用于指示第二存储设备7022获取文件的文件句柄;
接收模块7012,用于接收第二存储设备7022返回的操作结果。
基于图10所示实施例,在一个可选实施例中,第一打开文件指令包括获取持久句柄子命令,获取持久句柄子命令用于指示第一存储设备生成持久句柄。
基于图10所示实施例,在本发明的另一个可选实施例中,第二打开文件指令包括句柄恢复子命令,句柄标识由句柄恢复子命令携带。
基于图10所示实施例,在本发明的另一个可选实施例中,发送模块7011,还用于向第一存储设备发送加锁指令,该加锁指令用于对文件设置文件锁。
为便于理解,下面以一个具体应用场景对本发明实施例中业务处理系统的各部分进行详细介绍:
当第一存储设备7021属于存储阵列1,第二存储设备7021属于存储阵列2时,存储阵列2为存储阵列1的备用阵列,存储设备A′为存储设备A的备用设备,存储阵列1中的分布式锁服务器为分布式锁服务器901,存储阵列2中的分布式锁服务器为分布式锁服务器902,存储设备A的IP地址为x.x.x.2。
当主机访问第一存储设备7021上的文件file_1时,主机向第一存储设备7021发送第一打开文件指令,第一存储设备7021的文件系统响应于第一打开文件指令对文件进行访问。第一存储设备7021根据第一打开文件指令,产生file_1的文件句柄1,将文件句柄1同步至第二存储设备7021,以及,将文件句柄1的句柄标识返回给主机。第一存储设备7021还可以根据其他打开文件指令生成file_2对应的文件句柄2,将文件句柄2同步至第二存储设备7021。
主机701还可以向第一存储设备7021发起对file_1的加锁指令,第一存储设备7021根据加锁指令向分布式锁服务器901发起加锁请求,分布式锁服务器901对file_1设置获取范围锁1和范围锁2。加锁成功后,第一存储设备7021将范围锁1和范围锁2同步至第二存储设备7022。
当存储阵列1发生故障时,存储阵列2收到故障信息后,存储阵列2中的存储设备A′可以遍历所有备份句柄,选择存储设备A对应的备份句柄(即文件句柄1)和备份文件锁(即范围锁1和范围锁2),将file_1设置静默标识。第二存储设备7022收到故障信息时,还可以为file_1的文件句柄1设置老化时长。然后将第二存储设备7022的IP地址设置为x.x.x.2,主机与第二存储设备7022建立连接。
当文件句柄为持久句柄时,主机会等待一段时间后,向x.x.x.2发送第二打开文件指令。
在file_1没有文件锁的情况下,第二存储设备7022可以根据第二打开文件指令的文件句柄1的句柄标识获取文件句柄1,根据文件句柄1对file_1进行访问。
在file_1设置有范围锁1和范围锁2的情况下,第二存储设备7022可以根据第二打开文件指令的文件句柄1的句柄标识获取文件句柄1以及范围锁1和范围锁2,然后分布式锁服务器2根据范围锁1和范围锁2恢复file_1的范围锁,将恢复结果返回给主机。存储设备A的其他文件(如file_2)的处理方法与file_1相似,存储阵列1中其他存储设备(如存储设备B、C或D)中文件的处理方法与存储设备A相似,此处不再赘述。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (18)

1.一种服务器信息块SMB业务故障处理方法,其特征在于,所述方法应用于业务处理系统,业务处理系统包括主机和至少两个存储设备,所述方法包括:
第一存储设备接收主机发送的第一打开文件指令;
所述第一存储设备根据所述第一打开文件指令生成文件句柄,将所述文件句柄以及所述文件句柄对应的文件锁发送给第二存储设备,以及将所述文件句柄的句柄标识发送给主机,所述第二存储设备保存所述文件句柄以及所述文件句柄对应的文件锁;
所述第二存储设备接收主机发送的第二打开文件指令,根据所述第二打开文件指令中的所述句柄标识,确定所述句柄标识对应的文件句柄;
所述第二存储设备根据所述文件句柄打开文件,将操作结果发送给所述主机。
2.根据权利要求1所述的方法,其特征在于,所述第一打开文件指令包括获取持久句柄子命令;
所述第一存储设备根据所述第一打开文件指令生成文件句柄包括:
所述第一存储设备根据所述获取持久句柄子命令生成文件句柄;
所述方法还包括:
所述第一存储设备检查所述文件句柄是否为持久句柄,若是,则执行所述将所述文件句柄发送给第二存储设备的步骤。
3.根据权利要求1所述的方法,其特征在于,所述第二打开文件指令包括句柄恢复子命令,所述句柄标识由所述句柄恢复子命令携带。
4.根据权利要求1所述的方法,其特征在于,在将所述文件句柄发送给第二存储设备之前,所述方法还包括:
所述第一存储设备接收所述主机发送的加锁指令;
所述第一存储设备根据所述加锁指令,将文件锁请求发送给分布式锁服务器;
所述分布式锁服务器根据所述文件锁请求,对所述文件句柄对应的文件设置文件锁;
其中,所述文件锁被所述第二存储设备保存为了备份文件锁,其中,所述第一存储设备、所述第二存储设备与所述分布式锁服务器属于同一存储阵列。
5.根据权利要求4所述的方法,其特征在于,在所述第二存储设备将所述文件句柄保存为备份句柄之后,所述方法还包括:
所述第二存储设备将静默请求发送给所述分布式锁服务器,所述静默请求携带的文件信息与所述备份句柄对应;
所述分布式锁服务器根据所述文件信息,将所述第二存储设备中所述备份句柄对应的文件进行静默设置。
6.根据权利要求5所述的方法,其特征在于,在所述确定所述句柄标识对应的文件句柄之后,所述方法还包括:
所述第二存储设备确定所述文件句柄对应的备份文件锁,将所述备份文件锁的信息发送给所述分布式锁服务器;
所述分布式锁服务器根据所述备份文件锁的信息,对所述文件加锁。
7.根据权利要求1所述的方法,其特征在于,在将所述文件句柄发送给第二存储设备之前,所述方法还包括:
所述第一存储设备接收所述主机发送的加锁指令;
所述第一存储设备根据所述加锁指令,将文件锁请求发送给第一分布式锁服务器;
所述第一分布式锁服务器根据所述文件锁请求,对所述文件句柄对应的文件设置文件锁;
其中,所述文件锁被所述第二存储设备保存为了备份文件锁;
其中,所述第一存储设备与所述第一分布式锁服务器属于同一存储阵列,所述第一存储设备与所述第二存储设备属于不同存储阵列。
8.根据权利要求7所述的方法,其特征在于,在所述第二存储设备将所述文件句柄保存为备份句柄之后,所述方法还包括:所述第二存储设备将静默请求发送给第二分布式锁服务器,所述静默请求携带的文件信息与所述备份句柄对应;
所述第二分布式锁服务器根据所述文件信息,将所述第二存储设备中备份句柄对应的文件进行静默设置,所述第二分布式锁服务器与所述第二存储设备属于同一存储阵列。
9.根据权利要求8所述的方法,其特征在于,在所述确定所述句柄标识对应的文件句柄之后,所述方法还包括:
所述第二存储设备确定所述文件句柄对应的备份文件锁,将所述备份文件锁的信息发送给第二分布式锁服务器;
所述第二分布式锁服务器根据所述备份文件锁的信息,对所述文件加锁。
10.一种存储系统,其特征在于,包括:
第一存储设备,用于接收主机发送的第一打开文件指令,根据所述第一打开文件指令生成文件句柄,将所述文件句柄以及所述文件句柄对应的文件锁发送给第二存储设备;
第二存储设备,用于保存所述文件句柄以及所述文件句柄对应的文件锁;
所述第二存储设备,还用于接收主机发送的第二打开文件指令,根据所述第二打开文件指令中的句柄标识,获取所述句柄标识对应的文件句柄;根据所述文件句柄打开文件,将操作结果发送给主机。
11.根据权利要求10所述的存储系统,其特征在于,所述第一打开文件指令包括获取持久句柄子命令;
所述第一存储设备具体用于根据所述获取持久句柄子命令生成文件句柄;
所述第一存储设备,还用于检查所述文件句柄是否为持久句柄,若是,则执行所述将所述文件句柄发送给第二存储设备的步骤。
12.根据权利要求10所述的存储系统,其特征在于,所述第二打开文件指令包括句柄恢复子命令,所述句柄标识由所述句柄恢复子命令携带。
13.根据权利要求10所述的存储系统,其特征在于,所述存储系统还包括分布式锁服务器;
所述第一存储设备还用于在将所述文件句柄发送给第二存储设备之前,接收主机发送的加锁指令;根据所述加锁指令将文件锁请求发送给分布式锁服务器;
所述分布式锁服务器,用于根据所述文件锁请求,对所述文件句柄对应的文件设置文件锁;
其中,所述文件锁被所述第二存储设备保存为了备份文件锁,其中,所述第一存储设备、所述第二存储设备与所述分布式锁服务器属于同一存储阵列。
14.根据权利要求13所述的存储系统,其特征在于,
所述第二存储设备,还用于在所述第二存储设备将所述文件句柄保存为备份句柄之后,将静默请求发送给所述分布式锁服务器,所述静默请求携带的文件信息与所述备份句柄对应;
所述分布式锁服务器,还用于根据所述文件信息,将所述第二存储设备中所述备份句柄对应的文件进行静默设置。
15.根据权利要求13所述的存储系统,其特征在于,
所述第二存储设备,还用于确定所述文件句柄对应的备份文件锁,将所述备份文件锁的信息发送给所述分布式锁服务器;
所述分布式锁服务器,还用于根据备份文件锁的信息,对所述文件加锁。
16.根据权利要求10所述的存储系统,其特征在于,所述存储系统还包括第一分布式锁服务器,所述第一存储设备与所述第一分布式锁服务器属于同一存储阵列,所述第一存储设备与所述第二存储设备属于不同存储阵列;
所述第一存储设备,还用于在将所述文件句柄发送给第二存储设备之前,接收所述主机发送的加锁指令;根据所述加锁指令,将文件锁请求发送给第一分布式锁服务器;
所述第一分布式锁服务器,用于根据所述文件锁请求,对所述文件句柄对应的文件设置文件锁;
其中,所述文件锁被所述第二存储设备保存为了备份文件锁。
17.根据权利要求16所述的存储系统,其特征在于,所述存储系统还包括第二分布式锁服务器,所述第二分布式锁服务器与所述第二存储设备属于同一存储阵列;
所述第二存储设备,还用于在所述第二存储设备将所述文件句柄保存为备份句柄之后,将静默请求发送给第二分布式锁服务器,所述静默请求携带的文件信息与所述备份句柄对应;
第二分布式锁服务器,用于根据所述文件信息将所述第二存储设备的备份句柄对应的文件进行静默设置。
18.根据权利要求16所述的存储系统,其特征在于,
所述第二存储设备,还用于在所述第二存储设备获取所述句柄标识对应的文件句柄之后,确定所述文件句柄对应的备份文件锁,将所述备份文件锁的信息发送给第二分布式锁服务器;
所述第二分布式锁服务器,还用于根据所述备份文件锁的信息对所述文件加锁。
CN201680003334.1A 2016-11-25 2016-11-25 一种smb业务故障处理方法和存储设备 Active CN108352995B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/107237 WO2018094686A1 (zh) 2016-11-25 2016-11-25 一种smb业务故障处理方法和存储设备

Publications (2)

Publication Number Publication Date
CN108352995A CN108352995A (zh) 2018-07-31
CN108352995B true CN108352995B (zh) 2020-09-08

Family

ID=62194631

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680003334.1A Active CN108352995B (zh) 2016-11-25 2016-11-25 一种smb业务故障处理方法和存储设备

Country Status (4)

Country Link
US (1) US10789138B2 (zh)
EP (1) EP3352415B1 (zh)
CN (1) CN108352995B (zh)
WO (1) WO2018094686A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11669320B2 (en) 2016-02-12 2023-06-06 Nutanix, Inc. Self-healing virtualized file server
US20190034306A1 (en) * 2017-07-31 2019-01-31 Intel Corporation Computer System, Computer System Host, First Storage Device, Second Storage Device, Controllers, Methods, Apparatuses and Computer Programs
CN110058825B (zh) * 2019-05-14 2022-08-02 上海外高桥造船有限公司 手持式印字机应用程序优化方法及系统
CN115242807B (zh) * 2022-06-30 2024-07-05 深圳震有科技股份有限公司 一种5g通信系统中的数据存取方法及相关设备
CN115987975A (zh) * 2022-12-30 2023-04-18 深圳市章江科技有限公司 文件传输方法、系统及计算机可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1826593A (zh) * 2003-10-24 2006-08-30 微软公司 通过网络以事务形式办理文件操作的方法与系统
CN1870642A (zh) * 2005-05-25 2006-11-29 微软公司 数据通信协议
US8122070B1 (en) * 2005-12-29 2012-02-21 United States Automobile Association (USAA) Document management system user interfaces
CN103636165A (zh) * 2011-06-30 2014-03-12 微软公司 透明故障转移

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5881269A (en) * 1996-09-30 1999-03-09 International Business Machines Corporation Simulation of multiple local area network clients on a single workstation
US5987621A (en) * 1997-04-25 1999-11-16 Emc Corporation Hardware and software failover services for a file server
US7103638B1 (en) * 2002-09-04 2006-09-05 Veritas Operating Corporation Mechanism to re-export NFS client mount points from nodes in a cluster
US7627780B2 (en) * 2003-04-23 2009-12-01 Dot Hill Systems Corporation Apparatus and method for deterministically performing active-active failover of redundant servers in a network storage appliance
US7565566B2 (en) * 2003-04-23 2009-07-21 Dot Hill Systems Corporation Network storage appliance with an integrated switch
US7661014B2 (en) * 2003-04-23 2010-02-09 Dot Hill Systems Corporation Network storage appliance with integrated server and redundant storage controllers
US8484365B1 (en) * 2005-10-20 2013-07-09 Netapp, Inc. System and method for providing a unified iSCSI target with a plurality of loosely coupled iSCSI front ends
US9215279B1 (en) * 2009-02-17 2015-12-15 Netapp, Inc. Servicing of storage device software components of nodes of a cluster storage system
US9325790B1 (en) * 2009-02-17 2016-04-26 Netapp, Inc. Servicing of network software components of nodes of a cluster storage system
US8225057B1 (en) * 2009-03-24 2012-07-17 Netapp, Inc. Single-system configuration for backing-up and restoring a clustered storage system
US8631277B2 (en) 2010-12-10 2014-01-14 Microsoft Corporation Providing transparent failover in a file system
EP3059932B1 (en) * 2014-11-12 2018-09-19 Huawei Technologies Co., Ltd. Lock server malfunction processing method and system thereof in distribution system
EP3244322A4 (en) * 2015-02-03 2017-11-22 Huawei Technologies Co. Ltd. Method and device for processing i/o request in network file system
US9836367B2 (en) * 2015-08-28 2017-12-05 Netapp, Inc. Trust relationship migration for data mirroring
US10009428B2 (en) * 2015-12-07 2018-06-26 Dell Products L.P. Method and system for reconnecting server message block (SMB) clients to persistent file handles
US11669320B2 (en) * 2016-02-12 2023-06-06 Nutanix, Inc. Self-healing virtualized file server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1826593A (zh) * 2003-10-24 2006-08-30 微软公司 通过网络以事务形式办理文件操作的方法与系统
CN1870642A (zh) * 2005-05-25 2006-11-29 微软公司 数据通信协议
US8122070B1 (en) * 2005-12-29 2012-02-21 United States Automobile Association (USAA) Document management system user interfaces
CN103636165A (zh) * 2011-06-30 2014-03-12 微软公司 透明故障转移

Also Published As

Publication number Publication date
EP3352415A1 (en) 2018-07-25
US20180225183A1 (en) 2018-08-09
WO2018094686A1 (zh) 2018-05-31
CN108352995A (zh) 2018-07-31
US10789138B2 (en) 2020-09-29
EP3352415A4 (en) 2018-09-12
EP3352415B1 (en) 2021-05-19

Similar Documents

Publication Publication Date Title
CN108352995B (zh) 一种smb业务故障处理方法和存储设备
CN106843749B (zh) 写入请求处理方法、装置及设备
US10303666B2 (en) File transfer system using file backup times
US11210178B2 (en) Synchronization storage solution after an offline event
WO2000026782A1 (en) File server system
US8533525B2 (en) Data management apparatus, monitoring apparatus, replica apparatus, cluster system, control method and computer-readable medium
CN112035062B (zh) 云计算的本地存储的迁移方法、计算机设备及存储介质
WO2024120227A1 (zh) 容器数据保护系统、方法、装置、设备及可读存储介质
CN110990190A (zh) 一种分布式文件锁故障处理方法、系统、终端及存储介质
CN116560904A (zh) Nas数据备份容灾方法、系统、终端及存储介质
EP3896571B1 (en) Data backup method, apparatus and system
CN110879760B (zh) 一种统一存储系统及方法、电子设备
US11907083B1 (en) Transparent snapshot-based file system consistent virtual machine protection
CN114281600A (zh) 一种容灾备份和容灾恢复方法、装置、设备及存储介质
US10642788B1 (en) Sand timer algorithm for tracking in-flight data storage requests for data replication
CN111563010B (zh) 一种基于双机冗余系统的数据同步方法、系统及存储介质
JP3216618B2 (ja) ビデオサーバ装置のデータ障害復旧方法及びデータ障害復旧プログラムを記録した媒体
US20210248108A1 (en) Asynchronous data synchronization and reconciliation
KR100793446B1 (ko) 이중화 통신 시스템의 페일 오버 및 원복 처리 방법
US20240320104A1 (en) Providing status notifications of file-copy operations to backup clients
US20240126584A1 (en) Achieving application consistent snapshots in absence of network connectivity between in-guest agent and virtual machine management center
US20240126583A1 (en) Intelligent application writer type-based extension for copy service timeout
US10754662B2 (en) System and method for distributed system discovery in a clustered environment
CN116055300A (zh) 一种云主机的容灾恢复方法及相关装置
CN113761056A (zh) 一种分布式业务的处理方法、装置及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant