CN106170788B - 网络文件系统中处理i/o请求的方法及设备 - Google Patents

网络文件系统中处理i/o请求的方法及设备 Download PDF

Info

Publication number
CN106170788B
CN106170788B CN201580001166.8A CN201580001166A CN106170788B CN 106170788 B CN106170788 B CN 106170788B CN 201580001166 A CN201580001166 A CN 201580001166A CN 106170788 B CN106170788 B CN 106170788B
Authority
CN
China
Prior art keywords
nfs
file system
network file
request
system server
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
CN201580001166.8A
Other languages
English (en)
Other versions
CN106170788A (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 CN106170788A publication Critical patent/CN106170788A/zh
Application granted granted Critical
Publication of CN106170788B publication Critical patent/CN106170788B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/183Provision of network file services by network file servers, e.g. by using NFS, CIFS
    • 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/061Improving I/O performance
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种网络文件系统中处理I/O请求的方法及设备。该方法包括:当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求(201);网络文件系统服务器接收集中控制器根据解析请求发送的不能识别的NFS FH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的(202);网络文件系统服务器根据文件标识,处理I/O请求(203)。上述方法及设备能够实现虚拟机的无感知迁移。

Description

网络文件系统中处理I/O请求的方法及设备
技术领域
本发明实施例涉及计算机领域,并且更具体地,涉及一种网络文件系统中处理输入/输出(input/output,I/O)请求的方法及设备。
背景技术
在云计算、大数据时代,我们对存储性能的要求越来越高,软件定义存储(Software Defined Storage,SDS)的发展和应用成为必然趋势。SDS技术的核心是将存储相关的控制工作放在相对于物理存储硬件的外部软件中。作为操作系统(OS)或管理程序(hypervisor)的一部分,该软件运行在网络文件系统服务器上。SDS技术将软件从硬件存储中抽象出来,形成一个不受物理系统限制的共享池,进而能够更加灵活地控制存储访问。
虚拟化平台使用的SDS技术有:块级的光纤通道(Fibre Channel,FC)技术和网络小型计算机系统接口(Internet Small Computer System Interface,iSCSI)存储,或者文件级的网络文件系统(Network File System,NFS)存储。用户可以根据生产、测试环境的不同,以及性能和可靠性等需求来选择合适的存储协议。
在NFS存储系统中,客户机需要通过网络文件系统服务器的分层结构来识别文件以便进行后续操作。一般情况下,网络文件系统服务器为每个文件分配一个唯一的文件句柄(file handle),以此作为标识符。然而,该文件句柄并不是全局性的,每一个网络文件系统服务器都会维护自己的网络文件系统文件句柄、挂载(mount)列表以及网络文件系统文件句柄与后端的文件系统句柄的映射关系。
当虚拟机(Virtual Machine,VM)发生迁移时,该虚拟机上的业务并没有关闭。因此,与新的网络文件系统服务器进行数据通信的时候,仍然会使用旧的上下文,这样新的网络文件系统服务器无法识别这些上下文,进而造成业务的中断。或者,如果虚拟机先断开与之前网络文件系统服务器建立的连接再迁移,接着与新的网络文件系统服务器建立连接。这个过程会比较费时,不符合虚拟机迁移时对业务无感知的需求,同时也会造成业务的中断。
发明内容
本发明实施例提供了一种网络文件系统中处理I/O请求的方法及设备,能够实现虚拟机的无感知迁移。
第一方面,本发明实施例提供了一种网络文件系统中处理I/O请求的方法,包括:
当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求;
网络文件系统服务器接收集中控制器根据解析请求发送的不能识别的NFS FH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的;
网络文件系统服务器根据文件标识,处理I/O请求。
结合第一方面,在第一方面的第一种实现方式中,网络文件系统服务器根据文件标识,处理I/O请求,包括:
网络文件系统服务器确定文件标识在网络文件系统服务器中的新分配的NFS FH;
网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH;
网络文件系统服务器根据FSH,处理I/O请求。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,该方法还包括:
网络文件系统服务器在本地或后端存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
结合第一方面及其上述实现方式,在第一方面的第三种实现方式中,在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,该方法还包括:
网络文件系统服务器向集中控制器发送文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
结合第一方面及其上述实现方式,在第一方面的第四种实现方式中,在网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求之前,该方法还包括:
网络文件系统服务器接收虚拟机发送的I/O请求;
当本地缓存中没有I/O请求中的NFS FH时,网络文件系统服务器确定不能识别I/O请求中的NFS FH。
第二方面,本发明实施例提供了一种网络文件系统中处理I/O请求的方法,包括:
集中控制器接收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求;
集中控制器根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFS FH对应的文件标识;
集中控制器向网络文件系统服务器发送文件标识,以便于网络文件系统服务器根据文件标识处理I/O请求。
结合第二方面,在第二方面的第一种实现方式中,在集中控制器向网络文件系统服务器发送NFS FH对应的文件标识之后,该方法还包括:
集中控制器接收并存储网络文件系统服务器发送的文件标识、不能识别的NFSFH、新分配的NFS FH和FSH的对应关系,其中新分配的NFS FH和FSH为网络文件系统服务器根据文件标识确定的。
第三方面,本发明实施例提供了一种网络文件系统服务器,包括:
发送单元,当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,用于向集中控制器发送对不能识别的NFS FH的解析请求;
接收单元,用于接收集中控制器根据解析请求发送的不能识别的NFS FH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的;
处理单元,用于根据文件标识,处理I/O请求。
结合第三方面,在第三方面的第一种实现方式中,处理单元具体用于,
确定文件标识在网络文件系统服务器中的新分配的NFS FH;
根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH;
根据FSH,处理I/O请求。
结合第三方面及其上述实现方式,在第三方面的第二种实现方式中,处理单元还用于,在本地或后端存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
结合第三方面及其上述实现方式,在第三方面的第三种实现方式中,发送单元还用于,向集中控制器发送文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
结合第三方面及其上述实现方式,在第三方面的第四种实现方式中,接收单元还用于,接收虚拟机发送的I/O请求;
处理单元还用于,当本地缓存中没有I/O请求中的NFS FH时,确定不能识别I/O请求中的NFS FH。
第四方面,本发明实施例提供了一种集中控制器,包括:
接收单元,用于接于收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求;
处理单元,用于根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFS FH对应的文件标识;
发送单元,用于向网络文件系统服务器发送文件标识,以便于网络文件系统服务器根据文件标识处理I/O请求。
结合第四方面,在第四方面的第一种实现方式中,接收单元还用于,接收并存储网络文件系统服务器发送的文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,其中新分配的NFS FH和FSH为网络文件系统服务器根据文件标识确定的。
第五方面,本发明实施例提供了一种计算机设备,包括:处理器、存储器和总线;
存储器用于存储计算机执行的指令,处理器与存储器通过总线连接,当计算机设备运行时,处理器读取存储器存储的指令,以执行前述任一方面及实现方式的方法。
第六方面,本发明实施例提供了一种网络文件系统,包括:
前述任一方面及实现方式的网络文件系统服务器;
前述任一方面及实现方式的集中控制器。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的网络文件系统的数据中心的架构图。
图2是本发明一个实施例的网络文件系统中处理I/O请求的方法的示意性流程图。
图3是本发明另一实施例的网络文件系统中处理I/O请求的方法的示意性流程图。
图4是本发明另一实施例的网络文件系统中处理I/O请求的方法的示意性流程图。
图5是本发明实施例的网络文件系统服务器的示意性框图。
图6是本发明实施例的集中控制器的示意性框图。
图7是本发明实施例的计算机设备的硬件结构示意图。
图8是本发明实施例的网络文件系统的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
图1是本发明实施例的网络文件系统的数据中心的架构图。如图1所示,网络文件系统包括集中控制器101、主机102(主机1,主机2...主机n)和磁盘103。应理解,本发明实施例对主机的数量不做限定。在本发明实施例中,集中控制器101分别与各个主机中的控制器虚拟机CVM(Controller Virtual Machine)连接,用于对各个主机(主机1,主机2...主机n)的数据通信进行协调管理。
下面以主机1为例对本发明实施例的网络文件系统进行描述。主机1上运行有多个虚拟机(VM1,VM2...VMn)。主机1中的CVM1上运行有网络文件系统服务器(NFS Server)。各个虚拟机通过网络文件系统客户机(NFS Client)与NFS Server进行数据通信的交互。NFSServer可以根据虚拟机(VM1,VM2...VMn)通过NFS Client发送的I/O的请求,处理数据的读写操作。虚拟机管理器(hypervisor)用以实现监控虚拟机的功能。物理NIC(NetworkInterface Card)用于提供网络连接。存储器以及外部的磁盘103用于提供存储媒介。
虚拟机都是以镜像文件的形式存储在网络文件系统服务器上,或者备份存储在外部的磁盘上。如,存储在主机的硬盘驱动器(Hard Disk Drive,HDD)/固态硬盘(SolidState Drives,SSD)/存储区域网络(Storage Area Network,SAN)/网络连接存储(NetworkAttached Storage,NAS)中,并且在后端的存储系统中备份。在NFS中,对虚拟机的操作都会转化为通过网络文件系统客户机(NFS Client)来访问存储在本机或者远端磁盘的镜像文件。具体地,NFS client可以设置在虚拟机管理器中,也可以设置在虚拟机中,本发明实施例对此不作限定。
NFS服务器为每一个文件分配一个唯一的网络文件系统句柄(Network FileSystem File Handle,NFS FH),以此作为文件的标识符。从客户机角度看,NFS FH是一个64字节的字符串(不同的NFS版本,长度不一样)。从网络文件系统服务器角度看,文件句柄是一个唯一地标识某个文件的任意的字节的集合。
使用文件句柄对文件进行数据的读写操作,可以使得客户机和网络文件系统服务器的路径名语法隔离开来,并允许不同结构的客户机存取具有分层结构的文件。这样,当客户机发起I/O请求对某个文件进行操作时,不用全路径名指明该文件,而使用预先得到一个用于引用该文件的文件句柄。
在本发明实施例中,客户机与网络文件系统服务器之间使用网络文件系统文件句柄(Network File System File Handle,NFS FH)进行文件的读写操作。客户机通过NFS协议与网络文件系统服务器建立连接(也即NFS连接),通过虚拟化存储进行数据的读写操作。每个网络文件系统服务器都会维护自己的NFS FH与主机的文件系统句柄(File SystemHandle,FSH)之间的映射关系。也就是说,NFS FH并不是全局性的。在接收到I/O请求时,网络文件系统服务器根据I/O请求中的NFS FH确定FSH,然后根据FSH对存储的文件进行读写操作。
在本发明实施例提供的种网络文件系统中,当发生迁移时,虚拟机仍然可以使用旧的NFS FH完成数据的读写操作。例如,集中控制器中可以存储各个主机的网络文件系统服务器分配的NFS FH与文件标识的映射关系表。从主机1迁移到主机2时,虚拟机依旧可以使用主机1(运行在CVM1上的NFS Server)为其分配的NFS FH向位于主机2中的网络文件系统服务器发起I/O请求。主机2(运行在CVM2上的NFS Server)可以向集中控制器发起对该I/O请求的解析请求,进而完成数据的读写操作。
本发明实施例提供的技术方案能够实现虚拟机的无感知迁移。虚拟机不需要先断开与主机1(运行在CVM1上的NFS Server)的NFS连接,再建立与主机2(运行在CVM2上的NFSServer)的连接,就可以使用主机1为其分配的旧的NFS FH向主机2发起I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
下面结合具体实施例对本发明实施例进行更加详细的描述。
图2是本发明一个实施例的网络文件系统中处理I/O请求的方法的示意性流程图。图2所示的方法由网络文件系统服务器执行,如图1中示出的CVM1、CVM2或CVMn中运行的网络文件系统服务器。
201,当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求。
例如,当主机出现故障时,虚拟机发生迁移,迁移过程中业务并没有关闭。迁移到新的主机时,虚拟机仍旧使用上一个主机的网络文件系统服务器为其分配的NFS FH发起I/O请求。新的网络文件系统服务器不能识别该NFS FH时,可以向集中控制器发送该不能识别的NFS FH的解析请求。
202,网络文件系统服务器接收集中控制器根据解析请求发送的不能识别的NFSFH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的。
例如,集中控制器中存储有NFS FH对应的文件标识,如镜像文件的标识。这样,集中控制器可以将NFS FH对应的文件标识发送给网络文件系统服务器,以便于网络文件系统服务器根据文件标识处理I/O请求。
203,网络文件系统服务器根据文件标识,处理I/O请求。
例如,网络文件系统服务器获取到文件标识之后,可以对本地或后端存储中相应的文件进行读写操作处理。当虚拟机的镜像文件是作为一个整体时,网络文件系统服务器可以根据文件标识和偏移量两部分来完成数据的读写操作。当虚拟机的镜像文件并不是作为一个整体时,网络文件系统服务器只需要根据文件标识便可以完成读写操作。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,根据文件标识,处理I/O请求时,网络文件系统服务器可以先确定文件标识在网络文件系统服务器中的新分配的NFS FH。然后,网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH。最后,网络文件系统服务器根据FSH,处理I/O请求。
可选地,作为另一实施例,在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,网络文件系统服务器在本地或后端存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
这样,在虚拟机再次发起该I/O请求时,网络文件系统服务器不需要再向集中控制器发起解析请求,就可以完成本次数据读写的操作,进而提高了系统效率。
可选地,作为另一实施例,在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,网络文件系统服务器向集中控制器发送文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
这样,集中控制器可以获取并更新存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,以便于虚拟机再次发生迁移时网络文件系统服务器发起解析请求。
可选地,作为另一实施例,在网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求之前,网络文件系统服务器接收虚拟机发送的I/O请求。当本地缓存中没有I/O请求中的NFS FH时,网络文件系统服务器确定不能识别I/O请求中的NFS FH。
例如,网络文件系统服务器接收到虚拟机发送的I/O请求后,根据I/O请求中的NFSFH匹配本地存储的映射表。如果缓存中没有匹配到该NFS FH,也即缓存中没有存储该NFSFH对应的映射表时,网络文件系统服务器可以确定不能识别I/O请求中的NFS FH。这样,网络文件系统服务器需要向集中控制器发起NFS FH的解析请求。
图3是本发明另一实施例的网络文件系统中处理I/O请求的方法的示意性流程图。图3所示的方法由集中控制器执行,如图1中示出的集中控制器101。具体地,该集中控制器可以为软件定义存储控制器(Software Defined Storage Controller)或其它可以实现的形式,本发明实施例对此不作限定。
301,集中控制器接收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求。
例如,当主机出现故障时,虚拟机发生迁移,迁移过程中业务并没有关闭。迁移到新的主机时,虚拟机仍旧使用上一个主机的网络文件系统服务器为其分配的NFS FH发起I/O请求。新的网络文件系统服务器不能识别该NFS FH时,可以向集中控制器发送NFS FH的解析请求。
302,集中控制器根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFS FH对应的文件标识。
303,集中控制器向网络文件系统服务器发送文件标识,以便于网络文件系统服务器根据文件标识处理I/O请求。
例如,集中控制器中存储有NFS FH对应的文件标识,如镜像文件的标识。这样,集中控制器可以将NFS FH对应的文件标识发送给网络文件系统服务器,以便于网络文件系统服务器根据文件标识处理I/O请求。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的主机上的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,在根据解析请求,向网络文件系统服务器发送NFS FH对应的文件标识之后,集中控制器接收并存储网络文件系统服务器发送的文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,其中新分配的NFS FH和FSH为网络文件系统服务器根据文件标识确定的。
这样,集中控制器可以获取并更新存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,以便于虚拟机再次发生迁移时网络文件系统服务器发起解析请求。
下面将结合具体的例子详细描述本发明实施例。应注意,这些例子只是为了帮助本领域技术人员更好地理解本发明实施例,而非限制本发明实施例的范围。图4是本发明另一实施例的网络文件系统中处理I/O请求的方法的示意性流程图。
S401,虚拟机通过客户机与主机1(Host1)中的网络文件系统NFS服务器1(运行在CVM1上的NFS Server)建立NFS连接。可选地,网络文件系统服务器可以预先为每一个文件分配一个唯一的NFS FH。
S402,虚拟机通过客户机向NFS服务器1发起I/O请求,该I/O请求携带待处理的文件对应的NFS FH。
S403,NFS服务器根据I/O请求中的NFS FH生成一个本地映射表1和一个全局映射表1。可选地,NFS服务器1在本地存储本地映射表1,以便于下一次处理该I/O请求。
本地映射表1
全局映射表1
S404,NFS服务器1向集中控制器上报全局映射表1。这样,虚拟机发生迁移时,集中控制器可以完成新的主机上的NFS服务器发起的NFS FH的解析请求。
S405,NFS服务器1根据本地映射表,处理I/O请求。
例如,NFS服务器1中的根据本地映射表中的FSH对本地或后端存储中相应的文件进行读写操作处理。
S406,虚拟机迁移到主机2(Host2)上时,不断开与NFS服务器1的NFS连接,也不关闭业务,直接使用NFS服务器1为其分配的旧NFS FH向NFS服务器2发起I/O请求。
S407,NFS服务器2在根据I/O请求,在本地检索旧NFS FH匹配的映射表(本地映射表和全局映射表)。
S408,当没有检索到旧NFS FH匹配的映射表时,NFS服务器2向集中控制器发送解析请求。
S409,集中控制器根据解析请求检索旧NFS FH匹配的全局映射表1。
S410,集中控制器向NFS服务器2下发全局映射表1或者全局映射表中旧NFS FH对应的文件标识。
S411,NFS服务器根据文件标识生成本地映射表2和全局映射表2。可选地,NFS服务器2在本地存储本地映射表2,以便于下一次处理该I/O请求。
本地映射表2
全局映射表2
S412,NFS服务器2根据本地映射表2中的FSH,处理I/O请求。
S413,NFS服务器2向虚拟机发送对应的填充应答包。
S414,NFS服务器2向集中控制器上报全局映射表2,以便于虚拟机发生迁移时,迁移后的NFS服务器可以发起NFS FH的解析请求。
S415,集中控制器存储并更新全局映射表。
S416,集中控制器向NFS服务器1发送关闭通知,通知NFS服务器关闭相关的文件操作,断开NFS连接,删除虚拟机的挂载信息等。
图5是本发明实施例的网络文件系统服务器的示意性框图。如图5所示,NFS服务器50包括发送单元501、接收单元502和处理单元503。
发送单元501,当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,用于向集中控制器发送对不能识别的NFS FH的解析请求。
例如,当主机出现故障时,虚拟机发生迁移,迁移过程中业务并没有关闭。迁移到新的主机时,虚拟机仍旧使用上一个主机的网络文件系统服务器为其分配的NFS FH发起I/O请求。新的网络文件系统服务器不能识别该NFS FH时,可以向集中控制器发送对该不能识别的NFS FH的解析请求。
接收单元502,用于接收集中控制器根据解析请求发送的不能识别的NFS FH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的。
例如,集中控制器中存储有NFS FH对应的文件标识,如镜像文件的标识。这样,集中控制器可以将NFS FH对应的文件标识发送给网络文件系统服务器,以便于网络文件系统服务器根据文件标识处理I/O请求。
处理单元503,用于根据文件标识,处理I/O请求。
例如,网络文件系统服务器获取到文件标识之后,可以对本地或后端存储中相应的文件进行读写操作处理。当虚拟机的镜像文件是作为一个整体时,网络文件系统服务器可以根据文件标识和偏移量两部分来完成数据的读写操作。当虚拟机的镜像文件并不是作为一个整体时,网络文件系统服务器只需要根据文件标识便可以完成读写操作。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,处理单元503具体用于,确定文件标识在网络文件系统服务器中的新分配的NFS FH。然后,根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH。最后,根据FSH,处理I/O请求。
可选地,作为另一实施例,处理单元503还用于,在本地或后端存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
这样,在虚拟机再次发起该I/O请求时,网络文件系统服务器不需要再向集中控制器发起解析请求,就可以完成本次数据读写的操作,进而提高了系统效率。
可选地,作为另一实施例,发送单元501还用于,向集中控制器发送文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
这样,集中控制器可以获取并更新存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,以便于虚拟机再次发生迁移时网络文件系统服务器发起解析请求。
可选地,作为另一实施例,接收单元502还用于,接收虚拟机发送的I/O请求。处理单元503还用于,当本地缓存中没有I/O请求中的NFS FH时,确定不能识别I/O请求中的NFSFH。
例如,网络文件系统服务器接收到虚拟机发送的I/O请求后,根据I/O请求中的NFSFH匹配本地存储的映射表。如果缓存中没有匹配到该NFS FH,也即缓存中没有存储该NFSFH对应的映射表时,网络文件系统服务器可以确定不能识别I/O请求中的NFS FH。这样,网络文件系统服务器需要向集中控制器发起NFS FH的解析请求。
图6是本发明实施例的集中控制器的示意性框图。如图6所示,集中控制器60包括接收单元601、处理单元602和发送单元603。
接收单元601,用于接于收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求。
例如,当主机出现故障时,虚拟机发生迁移,迁移过程中业务并没有关闭。迁移到新的主机时,虚拟机仍旧使用上一个主机的网络文件系统服务器为其分配的NFS FH发起I/O请求。新的网络文件系统服务器不能识别该NFS FH时,可以向集中控制器发送NFS FH的解析请求。
处理单元602,用于根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFS FH对应的文件标识。
发送单元603,用于向网络文件系统服务器发送文件标识,以便于网络文件系统服务器根据文件标识处理I/O请求。
例如,集中控制器中存储有NFS FH对应的文件标识,如镜像文件的标识。这样,集中控制器可以将NFS FH对应的文件标识发送给网络文件系统服务器,以便于网络文件系统服务器根据文件标识处理I/O请求。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的主机上的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,接收单元601还用于,接收并存储网络文件系统服务器发送的文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,其中新分配的NFSFH和FSH为网络文件系统服务器根据文件标识确定的。
这样,集中控制器可以获取并更新存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,以便于虚拟机再次发生迁移时网络文件系统服务器发起解析请求。
图7是本发明实施例的计算机设备的硬件结构示意图。如图7所示,计算机设备70包括处理器702、存储器704、输入/输出接口706、通信接口708和总线710。其中,处理器702、存储器704、输入/输出接口706和通信接口708通过总线710实现彼此之间的通信连接。
处理器702可以采用通用的中央处理器(Central Processing Unit,CPU),微处理器,应用专用集成电路(Application Specific Integrated Circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本发明实施例所提供的技术方案。
存储器704可以是只读存储器(Read Only Memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(Random Access Memory,RAM)。存储器704可以存储操作系统和其他应用程序。在通过软件或者固件来实现本发明实施例提供的技术方案时,用于实现本发明实施例提供的技术方案的程序代码保存在存储器704中,并由处理器702来执行。
输入/输出接口706用于接收输入的数据和信息,输出操作结果等数据。
通信接口708使用例如但不限于收发器一类的收发装置,来实现计算设备700与其他设备或通信网络之间的通信。
总线710可包括一通路,在计算设备700各个部件(例如处理器702、存储器704、输入/输出接口706和通信接口708)之间传送信息。
应注意,尽管图7所示的计算机设备70仅仅示出了处理器702、存储器704、输入/输出接口706、通信接口708以及总线710,但是在具体实现过程中,本领域的技术人员应当明白,计算设备700还包含实现正常运行所必须的其他器件。同时,根据具体需要,本领域的技术人员应当明白,计算设备700还可包含实现其他附加功能的硬件器件。此外,本领域的技术人员应当明白,计算设备700也可仅仅包含实现本发明实施例所必须的器件,而不必包含图7中所示的全部器件。
图7所示的硬件结构以及上述描述适用于本发明实施例所提供的各种网络文件系统中处理I/O请求的设备及系统,适用于执行本发明实施例所提供的各种网络文件系统中处理I/O请求的方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
具体地,存储器704可存储执行以下过程的指令,以实现网络文件系统服务器的功能:
当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求;
网络文件系统服务器接收集中控制器根据解析请求发送的不能识别的NFS FH对应的文件标识,文件标识为集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的;
网络文件系统服务器根据文件标识,处理I/O请求。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,存储器704还可存储执行以下过程的指令:
网络文件系统服务器根据文件标识,处理I/O请求时,网络文件系统服务器确定文件标识在网络文件系统服务器中的新分配的NFS FH;网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH;网络文件系统服务器根据FSH,处理I/O请求。
可选地,作为另一实施例,存储器704还可存储执行以下过程的指令:
在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,网络文件系统服务器在本地或后端存储文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
可选地,作为另一实施例,存储器704还可存储执行以下过程的指令:
在网络文件系统服务器根据新分配的NFS FH,确定处理I/O请求时使用的文件系统句柄FSH之后,网络文件系统服务器向集中控制器发送文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系。
可选地,作为另一实施例,存储器704还可存储执行以下过程的指令:
在网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求之前,网络文件系统服务器接收虚拟机发送的I/O请求;
当本地缓存中没有I/O请求中的NFS FH时,网络文件系统服务器确定不能识别I/O请求中的NFS FH。
具体地,存储器704可存储执行以下过程的指令,以实现集中控制器的功能:
集中控制器接收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求;
集中控制器根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFS FH对应的文件标识;
集中控制器向网络文件系统服务器发送文件标识,以便于网络文件系统服务器根据文件标识处理I/O请求。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
可选地,作为一个实施例,存储器704还可存储执行以下过程的指令:
在集中控制器向网络文件系统服务器发送NFS FH对应的文件标识之后,集中控制器接收并存储网络文件系统服务器发送的文件标识、不能识别的NFS FH、新分配的NFS FH和FSH的对应关系,其中新分配的NFS FH和FSH为网络文件系统服务器根据文件标识确定的。
图8是本发明实施例的网络文件系统的示意性框图。如图8所示,网络文件系统80包括集中控制器801和网络文件系统服务器802,803...,804。应理解,本发明实施例对网络文件系统服务器的数量不做限定。为了描述的简洁,下面以网络文件系统服务器802为例进行描述。
集中控制器801分别与各个网络文件系统服务器802,803...,804连接。其中,集中控制器801可以为软件定义存储控制器或其它可实现的形式。网络文件系统服务器802可以运行在控制器虚拟机CVM上,用于根据虚拟机发起的I/O请求处理数据的读写操作。
在本发明实施例中,当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器802向集中控制器发送对不能识别的NFS FH的解析请求。集中控制器801接收网络文件系统服务器802发送的不能识别的网络文件系统文件句柄NFS FH的解析请求,然后根据解析请求,在预先存储的NFS FH与文件标识的对应关系中查找不能识别的NFSFH对应的文件标识。
集中控制器801向网络文件系统服务器802发送文件标识。网络文件系统服务器802接收集中控制器801根据解析请求发送的不能识别的NFS FH对应的文件标识,然后根据文件标识,处理I/O请求。
基于上述技术方案,在本发明实施例中,在集中控制器中存储不同的网络文件系统服务器中NFS FH与文件标识的映射关系。这样,当发生迁移时,虚拟机仍然可以使用旧的NFS FH发起I/O请求。迁移后的网络文件系统服务器可以向集中控制器发起旧的NFS FH的解析请求,并根据获取的文件标识处理I/O请求。这样,虚拟机的业务不会中断,也不需要等待先断开NFS连接再建立新的NFS连接的过程,进而实现了虚拟机的无感知迁移。
应理解,集中控制器801和网络文件系统服务器802还可以用于实现前文所述的各种网络文件系统中处理I/O请求的方法,为避免重复,在此不再赘述。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (16)

1.一种网络文件系统中处理I/O请求的方法,其特征在于,包括:
当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求;
所述网络文件系统服务器接收所述集中控制器根据所述解析请求发送的所述不能识别的NFS FH对应的文件标识,所述文件标识为所述集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的;
所述网络文件系统服务器根据所述文件标识,处理所述I/O请求。
2.根据权利要求1所述的方法,其特征在于,所述网络文件系统服务器根据所述文件标识,处理所述I/O请求,包括:
所述网络文件系统服务器确定所述文件标识在所述网络文件系统服务器中的新分配的NFS FH;
所述网络文件系统服务器根据所述新分配的NFS FH,确定处理所述I/O请求时使用的文件系统句柄FSH;
所述网络文件系统服务器根据所述FSH,处理所述I/O请求。
3.根据权利要求2所述的方法,其特征在于,在所述网络文件系统服务器根据所述新分配的NFS FH,确定处理所述I/O请求时使用的文件系统句柄FSH之后,所述方法还包括:
所述网络文件系统服务器在本地或后端存储所述文件标识、所述不能识别的NFS FH、所述新分配的NFS FH和所述FSH的对应关系。
4.根据权利要求2或3所述的方法,其特征在于,在所述网络文件系统服务器根据所述新分配的NFS FH,确定处理所述I/O请求时使用的文件系统句柄FSH之后,所述方法还包括:
所述网络文件系统服务器向所述集中控制器发送所述文件标识、所述不能识别的NFSFH、所述新分配的NFS FH和所述FSH的对应关系。
5.根据权利要求1至3中任一项所述的方法,其特征在于,在所述网络文件系统服务器向集中控制器发送对不能识别的NFS FH的解析请求之前,所述方法还包括:
所述网络文件系统服务器接收虚拟机发送的所述I/O请求;
当本地缓存中没有所述I/O请求中的NFS FH时,所述网络文件系统服务器确定不能识别所述I/O请求中的NFS FH。
6.一种网络文件系统中处理I/O请求的方法,其特征在于,包括:
集中控制器接收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFSFH的解析请求;
所述集中控制器根据所述解析请求,在预先存储的NFS FH与文件标识的对应关系中查找所述不能识别的NFS FH对应的文件标识;
所述集中控制器向所述网络文件系统服务器发送所述文件标识,以便于所述网络文件系统服务器根据所述文件标识处理所述I/O请求。
7.根据权利要求6所述的方法,其特征在于,在所述集中控制器向所述网络文件系统服务器发送所述NFS FH对应的文件标识之后,所述方法还包括:
所述集中控制器接收并存储所述网络文件系统服务器发送的所述文件标识、所述不能识别的NFS FH、新分配的NFS FH和文件系统句柄FSH的对应关系,其中所述新分配的NFS FH和所述FSH为所述网络文件系统服务器根据所述文件标识确定的。
8.一种网络文件系统服务器,其特征在于,包括:
发送单元,当不能识别I/O请求中的网络文件系统文件句柄NFS FH时,用于向集中控制器发送对不能识别的NFS FH的解析请求;
接收单元,用于接收所述集中控制器根据所述解析请求发送的所述不能识别的NFS FH对应的文件标识,所述文件标识为所述集中控制器从预先存储的NFS FH与文件标识的对应关系中确定的;
处理单元,用于根据所述文件标识,处理所述I/O请求。
9.根据权利要求8所述的网络文件系统服务器,其特征在于,所述处理单元具体用于,
确定所述文件标识在所述网络文件系统服务器中的新分配的NFS FH;
根据所述新分配的NFS FH,确定处理所述I/O请求时使用的文件系统句柄FSH;
根据所述FSH,处理所述I/O请求。
10.根据权利要求9所述的网络文件系统服务器,其特征在于,所述处理单元还用于,在本地或后端存储所述文件标识、所述不能识别的NFS FH、所述新分配的NFS FH和所述FSH的对应关系。
11.根据权利要求9或10所述的网络文件系统服务器,其特征在于,所述发送单元还用于,向所述集中控制器发送所述文件标识、所述不能识别的NFS FH、所述新分配的NFS FH和所述FSH的对应关系。
12.根据权利要求8至10中任一项所述网络文件系统服务器,其特征在于,
所述接收单元还用于,接收虚拟机发送的所述I/O请求;
所述处理单元还用于,当本地缓存中没有所述I/O请求中的NFS FH时,确定不能识别所述I/O请求中的NFS FH。
13.一种集中控制器,其特征在于,包括:
接收单元,用于接于收网络文件系统服务器发送的不能识别的网络文件系统文件句柄NFS FH的解析请求;
处理单元,用于根据所述解析请求,在预先存储的NFS FH与文件标识的对应关系中查找所述不能识别的NFS FH对应的文件标识;
发送单元,用于向所述网络文件系统服务器发送所述文件标识,以便于所述网络文件系统服务器根据所述文件标识处理所述I/O请求。
14.根据权利要求13所述的集中控制器,其特征在于,所述接收单元还用于,接收并存储所述网络文件系统服务器发送的所述文件标识、所述不能识别的NFS FH、新分配的NFSFH和文件系统句柄FSH的对应关系,其中所述新分配的NFS FH和所述FSH为所述网络文件系统服务器根据所述文件标识确定的。
15.一种计算机设备,其特征在于,包括:处理器、存储器和总线;
所述存储器用于存储计算机执行的指令,所述处理器与所述存储器通过所述总线连接,当所述计算机设备运行时,所述处理器读取所述存储器存储的所述指令,以执行权利要求1至7中任一项所述的方法。
16.一种网络文件系统,其特征在于,包括:
如权利要求8至12中任一项所述的网络文件系统服务器;
如权利要求13至14中任一项所述的集中控制器。
CN201580001166.8A 2015-02-03 2015-02-03 网络文件系统中处理i/o请求的方法及设备 Active CN106170788B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/072152 WO2016123744A1 (zh) 2015-02-03 2015-02-03 网络文件系统中处理i/o请求的方法及设备

Publications (2)

Publication Number Publication Date
CN106170788A CN106170788A (zh) 2016-11-30
CN106170788B true CN106170788B (zh) 2019-09-20

Family

ID=56563294

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580001166.8A Active CN106170788B (zh) 2015-02-03 2015-02-03 网络文件系统中处理i/o请求的方法及设备

Country Status (5)

Country Link
US (1) US10338849B2 (zh)
EP (1) EP3244322A4 (zh)
JP (1) JP6378847B2 (zh)
CN (1) CN106170788B (zh)
WO (1) WO2016123744A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108352995B (zh) * 2016-11-25 2020-09-08 华为技术有限公司 一种smb业务故障处理方法和存储设备
CN109933384A (zh) * 2019-03-20 2019-06-25 浪潮商用机器有限公司 一种服务器本地化方法和系统

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4154893B2 (ja) 2002-01-23 2008-09-24 株式会社日立製作所 ネットワークストレージ仮想化方法
US7526668B2 (en) * 2006-06-08 2009-04-28 Hitachi, Ltd. Failover method of remotely-mirrored clustered file servers
US20070288535A1 (en) 2006-06-13 2007-12-13 Hitachi, Ltd. Long-term data archiving system and method
US20080027998A1 (en) * 2006-07-27 2008-01-31 Hitachi, Ltd. Method and apparatus of continuous data protection for NAS
US8990270B2 (en) * 2006-08-03 2015-03-24 Hewlett-Packard Development Company, L. P. Protocol virtualization for a network file system
EP1912404B1 (en) * 2006-10-11 2011-06-01 Murata Machinery, Ltd. File transfer server
US8706833B1 (en) * 2006-12-08 2014-04-22 Emc Corporation Data storage server having common replication architecture for multiple storage object types
US8615502B2 (en) * 2008-04-18 2013-12-24 Mcafee, Inc. Method of and system for reverse mapping vnode pointers
US8775544B2 (en) * 2009-02-04 2014-07-08 Citrix Systems, Inc. Methods and systems for dynamically switching between communications protocols
US20110202765A1 (en) * 2010-02-17 2011-08-18 Microsoft Corporation Securely move virtual machines between host servers
CN101883028B (zh) * 2010-06-30 2015-06-24 中兴通讯股份有限公司 网络文件系统服务器的检测方法及装置
CN102761566B (zh) * 2011-04-26 2015-09-23 国际商业机器公司 迁移虚拟机的方法和装置
US8856582B2 (en) 2011-06-30 2014-10-07 Microsoft Corporation Transparent failover
US8601473B1 (en) * 2011-08-10 2013-12-03 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment
US8656389B2 (en) * 2011-08-22 2014-02-18 Vmware, Inc. Virtual port command processing during migration of virtual machine
US8595460B2 (en) * 2011-08-26 2013-11-26 Vmware, Inc. Configuring object storage system for input/output operations
CN103999066B (zh) * 2011-12-16 2018-04-06 英特尔公司 用于通用串行总线物理层中的自动下游到上游模式切换的方法和装置
US9165006B2 (en) * 2012-10-25 2015-10-20 Blackberry Limited Method and system for managing data storage and access on a client device
US8943110B2 (en) * 2012-10-25 2015-01-27 Blackberry Limited Method and system for managing data storage and access on a client device
US20140359612A1 (en) * 2013-06-03 2014-12-04 Microsoft Corporation Sharing a Virtual Hard Disk Across Multiple Virtual Machines
US9715521B2 (en) * 2013-06-19 2017-07-25 Storagecraft Technology Corporation Data scrubbing in cluster-based storage systems
US9870268B2 (en) * 2013-08-05 2018-01-16 Amazon Technologies, Inc. Virtual computing instance migration
CN103561101A (zh) * 2013-11-06 2014-02-05 中国联合网络通信集团有限公司 一种网络文件系统
US9985829B2 (en) * 2013-12-12 2018-05-29 Exablox Corporation Management and provisioning of cloud connected devices
CN104915241B (zh) * 2014-03-12 2018-09-07 华为技术有限公司 一种虚拟机迁移控制方法及装置
US9923767B2 (en) * 2014-04-15 2018-03-20 Splunk Inc. Dynamic configuration of remote capture agents for network data capture

Also Published As

Publication number Publication date
WO2016123744A1 (zh) 2016-08-11
JP6378847B2 (ja) 2018-08-22
EP3244322A1 (en) 2017-11-15
US20170329558A1 (en) 2017-11-16
CN106170788A (zh) 2016-11-30
US10338849B2 (en) 2019-07-02
JP2018503928A (ja) 2018-02-08
EP3244322A4 (en) 2017-11-22

Similar Documents

Publication Publication Date Title
CN106528327B (zh) 一种数据处理方法以及备份服务器
US10977062B2 (en) System for starting virtual machine using mirror image file stored in units of a distributed block storage system mapped to units of a logical volume
CN105426227B (zh) 向云迁移私有构架服务
EP2344953B1 (en) Provisioning virtual resources using name resolution
CN105429776B (zh) 一种虚拟化网络功能管理的方法和系统
US9600199B2 (en) Increasing storage space for processes impacting data storage systems
US9448901B1 (en) Remote direct memory access for high availability nodes using a coherent accelerator processor interface
CN105447203B (zh) 一种共享文件的访问方法、系统及相关设备
EP3598301B1 (en) Cloud management platform, virtual machine management method, system thereof
US10296384B2 (en) Dynamic workload deployment for data integration services
US20160203014A1 (en) Managing virtual machines using globally unique persistent virtual machine identifiers
US11966754B2 (en) Cluster bootstrapping for distributed computing systems
US20200042346A1 (en) Migrating virtual machines
CN106170788B (zh) 网络文件系统中处理i/o请求的方法及设备
CN103019847A (zh) 对虚拟机数据进行迁移的方法及系统
US9696987B2 (en) Complex computer environment installation
US9600180B2 (en) Dynamic hierarchical navigation schemes for storage management systems
US11263183B2 (en) Integrating virtual machine file system into a native file explorer
US10795540B2 (en) Visualizing migration of a resource of a distributed computing environment
US11410082B2 (en) Data loss machine learning model update
US11314700B1 (en) Non-native transactional support for distributed computing environments
CN117827369A (zh) 虚拟机改密方法、装置、电子设备及存储介质
CN117769703A (zh) 无停机安全数据库迁移技术
WO2015097819A1 (ja) 情報処理装置及び方法

Legal Events

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