CN113032099A - 云计算节点、文件管理方法及装置 - Google Patents
云计算节点、文件管理方法及装置 Download PDFInfo
- Publication number
- CN113032099A CN113032099A CN202110328619.5A CN202110328619A CN113032099A CN 113032099 A CN113032099 A CN 113032099A CN 202110328619 A CN202110328619 A CN 202110328619A CN 113032099 A CN113032099 A CN 113032099A
- Authority
- CN
- China
- Prior art keywords
- file
- expansion board
- deployed
- file management
- storage
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 291
- 238000003860 storage Methods 0.000 claims abstract description 299
- 238000000034 method Methods 0.000 claims abstract description 119
- 230000008569 process Effects 0.000 claims abstract description 50
- 238000012545 processing Methods 0.000 claims description 75
- 230000003993 interaction Effects 0.000 description 23
- 230000006870 function Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 8
- 101100226364 Arabidopsis thaliana EXT1 gene Proteins 0.000 description 6
- 230000009471 action Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 101150053844 APP1 gene Proteins 0.000 description 4
- 101100189105 Homo sapiens PABPC4 gene Proteins 0.000 description 4
- 102100039424 Polyadenylate-binding protein 4 Human genes 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 102100029074 Exostosin-2 Human genes 0.000 description 1
- 101000918275 Homo sapiens Exostosin-2 Proteins 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000011895 specific detection Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书一个或多个实施例提供一种云计算节点、文件管理方法及装置。该云计算节点包括:主机设备和装配于所述主机设备上的扩展板卡,其中:所述主机设备上运行的虚拟机中部署有前端驱动,且所述主机设备用于在接收到用户发出的文件管理指令的情况下,通过所述前端驱动向扩展板卡发送针对目标文件的文件管理请求;所述扩展板卡上部署有存储客户端,该存储客户端用于将上述文件管理请求发送至部署于扩展板卡或其可访问的远程存储设备处的存储服务端,以由存储服务端中部署的文件系统对文件管理请求进行处理,实现对目标文件的读/写操作。
Description
技术领域
本说明书一个或多个实施例涉及云计算技术领域,尤其涉及一种云计算节点、文件管理方法及装置。
背景技术
无论是公有云、私有云或者混合云等各类型的云计算网络,均由若干分布式的云计算节点(Compute Node,即CN)构成,各个云计算节点分别由主机设备(或称Host主机)中运行的节点实例实现。云计算节点通常具有文件保存和管理功能,如使用文件系统(FS,File System)对于本地保存的文件进行管理。
在相关技术中,通常在云计算节点的主机设备中部署EXT4(Fourth Extendedfilesy stem,第四代扩展文件系统)、XFS等通用形式的文件系统,或者NFS(Network FileSystem,网络文件系统)等基于虚拟机网络的文件系统,以便用户通过文件系统实现对文件命名、查询或删除等管理操作。
然而,上述通用形式的文件系统基于本地存储空间进行设计,并依赖于Linux内核厚重的I/O(Input/Output,输入输出)协议栈(如通用块层、JBD2日志层、I/O调度层等)所以在该部署方式下,主机设备往往难以实现较高的I/O性能。而上述基于虚拟机网络的文件系统往往依赖于Linux内核的TCP/IP协议栈,所以不仅会增加文件的操作延时从而降低主机设备的I/O性能,而且文件系统也会受限于虚拟机的网络带宽的限制,导致主机设备实现的云计算节点难以发挥其高效的存储性能。另外,因为主机设备还用于实现除文件管理之外的其他功能,而相应的应用程序通常会与文件系统集中部署在主机设备的虚拟机中,所以该方式不仅会因为这部分应用程序与文件系统争夺计算资源而影响文件系统的运行稳定性,而且不便于对文件系统的监控和维护。
发明内容
有鉴于此,本说明书一个或多个实施例提供一种云计算节点、文件管理方法及装置。
为实现上述目的,本说明书一个或多个实施例提供技术方案如下:
根据本说明书一个或多个实施例的第一方面,提出了一种云计算节点,包括:主机设备和装配于所述主机设备上的扩展板卡,其中:
所述主机设备上运行的虚拟机中部署有前端驱动,且所述主机设备用于在接收到用户发出的文件管理指令的情况下,通过所述前端驱动向扩展板卡发送针对目标文件的文件管理请求;
所述扩展板卡上部署有存储客户端,所述存储客户端用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
根据本说明书一个或多个实施例的第二方面,提出了一种文件管理方法,应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述方法包括:
接收用户通过所述虚拟机发出的文件管理指令;
通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,以由所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
根据本说明书一个或多个实施例的第三方面,提出了一种文件管理方法,应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述方法包括:
接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求;
将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
根据本说明书一个或多个实施例的第四方面,提出了一种文件管理装置,应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述装置包括:
指令接收单元,用于接收用户通过所述虚拟机发出的文件管理指令;
请求发送单元,用于通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,以由所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,并由所述存储服务端中部署的文件管理请求进行处理,实现对所述目标文件的读/写操作。
根据本说明书一个或多个实施例的第五方面,提出了一种文件管理装置,应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述装置包括:
请求接收单元,用于接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求;
文件处理单元,用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
根据本说明书一个或多个实施例的第六方面,提出了一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如第二方面或第三方面中任一所述的方法。
根据本说明书一个或多个实施例的第七方面,提出了一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现如第二方面或第三方面中任一所述方法的步骤。
附图说明
图1是一示例性实施例提供的一种文件管理系统的架构示意图。
图2是一示例性实施例提供的一种云计算节点的结构示意图。
图3是一示例性实施例提供的一种文件管理方法的交互流程图。
图4是一示例性实施例提供的另一种云计算节点的结构示意图。
图5是一示例性实施例提供的另一种文件管理方法的交互流程图。
图6是一示例性实施例提供的一种文件管理方法的流程图。
图7是一示例性实施例提供的另一种文件管理方法的流程图。
图8是一示例性实施例提供的一种设备的结构示意图。
图9是一示例性实施例提供的一种文件管理装置的框图。
图10是一示例性实施例提供的另一种文件管理装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
本说明书提出一种云计算节点以及基于该云计算节点实现的文件管理方案,以解决相关技术中的上述问题。本方案基于云计算节点的主机设备通常具有的板卡扩展功能,充分利用主机设备和扩展板卡构成的主从式网路架构,将文件系统部署在扩展板卡中,通过主机设备与扩展板卡之间的交互过程实现文件管理,从而将处理逻辑复杂且对资源要求较高的文件管理工作交由扩展板卡完成,即对于主机设备实现了文件管理功能的卸载,从而有效解决上述问题。
下面结合附图对该方案进行详细说明。
图1是一示例性实施例提供的一种基于云计算网络的文件管理系统的架构示意图,本说明书所述的文件管理方案即应用于该系统。如图1所示,该系统可以包括网络10、云计算网络11、若干电子设备,比如手机12、手机13和手机14等。
其中,云计算网络11可以由若干云计算节点构成,如云计算节点111、云计算节点112和云计算节点113等,任一云计算节点中可以运行文件管理系统的节点侧程序,用于管理本地存储的文件;或者,云计算网络11中的至少一个云计算节点也可以连接至远程存储设备,如云计算节点111可以通过网络连接至数据库,从而实现对数据库中所存储文件的管理。上述各个云计算节点可以以节点实例的方式分别实现在独立的物理设备中,也可以将多个云计算节点实现在主机集群承载的虚拟服务器中,本说明书并不对此进行限制。
在本说明书一个或多个实施例的技术方案中,用户可通过手机12-14(用户设备)上运行的客户端或浏览器,以远程登录的方式登录至云计算网络11中的任一云计算节点,以便通过手机12-14与该云计算节点进行配合,实现对该云计算节点中保存的文件的远程管理。当然,云计算网络11中的云计算节点的数量可以为一个或多个,同一物理设备可以实现为至少一个数据节点和/或至少一个云计算节点,对于云计算网络11中云计算节点的数量,本说明书并不对此进行限制。
在本实施例中,该文件管理系统不仅可以实现文件管理功能,还可以作为诸多其他功能的集成化功能平台,比如对于扩展板卡的识别、虚拟机的远程登录、文件管理指令的收发、文件管理请求的生成、发送及响应、文件处理指令的生成与转换、读/写操作的实现等,本说明书一个或多个实施例并不对此进行限制。
手机12-14只是用户可以使用的一种类型的电子设备。实际上,用户显然还可以使用诸如下述类型的电子设备:平板设备、笔记本电脑、掌上电脑(PDAs,Personal DigitalAssistants)、可穿戴设备(如智能眼镜、智能手表等)等,本说明书一个或多个实施例并不对此进行限制。在运行过程中,该电子设备可以运行某一应用的客户端侧的程序,以实现该应用的相关功能。比如当该电子设备运行文件管理系统的程序时,可以实现为该文件管理系统的账号登录客户端,以便用户通过该账号登录客户端登录文件管理系统;当该电子设备运行浏览器的程序时,用户可以通过该浏览器登录文件管理系统。
需要指出的是:上述客户端的应用程序可以被预先安装在电子设备上,使得该客户端可以在该电子设备上被启动并运行;当然,当采用诸如HTML5技术的在线“客户端”时,无需在电子设备上安装相应的应用程序,即可获得并运行该客户端。
而对于手机12-14与云计算网络11之间进行交互的网络10,可以包括多种类型的有线或无线网络。
本说明书所述的云计算节点,可以为上述云计算网络11中的任一云计算节点,相应的文件管理方法可以应用于该云计算节点。其中,云计算网络11中的任一云计算节点可以由主机设备和装配于该主机设备上的扩展板卡构成。
扩展板卡中部署有至少一个存储客户端,其中任一客户端对应的存储服务端可以部署于扩展板卡或者扩展板卡可访问的远程存储设备中。根据存储服务端部署位置的不同,相应的文件管理过程也不相同,下面分别结合图2所示的存储服务端部署在扩展板卡中的实施例,以及图4所示的将存储服务端部署在远程存储设备中的实施例进行详细说明。
图2是一示例性实施例提供的一种云计算节点的结构示意图。如图2所示,该云计算节点包括主机设备201和扩展板卡202,其中,主机设备201上可以采用可拆卸方式(如插装、扣接等)和/或固定装配方式(如焊接等)装配至少一个扩展板卡,如除图2所示的扩展板卡202之外,还可以装配扩展板卡203、扩展板卡204(图中未示出)等。本说明书对于任一主机设备中装配的扩展板卡的类型、数量及具体装配方式等并不进行限制。
主机设备201中可以运行至少一个虚拟机(VM,Virtual Manufacturing),虚拟机中部署有前端驱动,主机设备201可以通过任一虚拟机中部署的前端驱动识别出本地装配的扩展板卡202,然后通过前端驱动与相应扩展板卡202实现交互。
虚拟机中可以部署至少一个应用程序(APP,Application),如虚拟机VM1中可以部署APP1……APPn等,虚拟机VMi中可以部署APP1……APPm等,不同虚拟机内可以部署相同或不同的应用程序,例如部署在VM1中的APP1与部署在VMi中的APP1,可以为相同的应用程序,也可以为不同的应用程序;另外其中,上述应用程序个数n、m和虚拟机等的个数i可以为任意正整数,本说明书并不对此进行限制。虚拟机中还可以部署对应于各个前端驱动的虚拟文件系统,用于为用户提供虚拟机所对应的部署在扩展板卡202中的文件系统的相关信息,并用于连接各个应用程序和底层的前端驱动,以实现应用程序与前端驱动之间的数据传输与交互。用户可以通过任一虚拟机中的应用程序管理该虚拟机所对应存储服务端保存的文件,或者在虚拟机处于文件系统共享状态的情况下,用户可以通过任一虚拟机中的应用程序管理与该虚拟机存在共享关系的其他虚拟机所对应存储服务端保存的文件,即实现共享文件系统。
在主机设备201中的任一虚拟机处于运行状态时,用户可以通过用户终端远程登录该虚拟机,并通过该虚拟机中部署的应用程序实现对目标文件的管理,例如,可以通过应用程序查看目标文件、发出针对目标文件的新建、修改、存储、删除等文件管理指令等。其中,主机设备在接收到任一虚拟机中的应用程序发送的上述文件管理指令后,可以通过自身的操作系统或者该虚拟机中的虚拟文件系统生成对应于该指令的文件管理请求,并通过前端驱动将该请求发送至扩展板卡202,以由后者进行相应的处理,具体过程可以参见下述实施例的记载,此处暂不赘述。
如图2所示,扩展板卡202中部署有与各个存储服务端一一对应的存储客户端,如对应于存储服务端1的存储客户端1……对应于存储服务端i的存储客户端i等。另外,扩展板卡202中的任一存储服务端中可以部署一个文件系统,例如存储服务端1中可以部署文件系统1,存储服务端i中可以部署文件系统i等。其中,任一存储服务端FS Server中部署的文件系统FS,可以用于管理该存储服务端FS Server中存储的文件。
本说明书对于任一存储服务端中部署的任一文件系统的具体类型并不进行限制。如图2所示,文件系统1可以为EXT4、文件系统2可以为XFS……文件系统i可以为NFS等。当然,任一文件系统还可以为FAT(File Allocation Table,文件配置表)、NTFS(NewTechnology File System,新技术文件系统)、ExtFAT(Extended File Allocation TableFile System,扩展文件配置表)、EXT2(Second extended File System,第二代扩展文件系统)等。
另外,为实现主机设备201和扩展板卡202之间的数据传输,可以在扩展板卡202中设置至少一个后端接口模块,如图2所示的后端接口模块1……后端接口模块i等,其中任一后端接口模块用于向主机设备201提供扩展板卡202实现文件管理所需的相关资源(如计算资源、存储资源、网络资源等)。
另外,为保证主机设备201和扩展板卡202之间的数据传输速度,二者之间的数据传输通道可以为PCIe(Peripheral Component Interconnect express,高速串行扩展总线)通道,相应的,扩展板卡202中设置的后端接口模块可以遵循PCIe标准,从而将扩展板卡202实现为装配在主机设备201上的PCIe设备。值得说明的是,上述后端接口模块为扩展板卡202中实现的逻辑接口,在一实施例中,多个逻辑接口可以依赖于一个或多个物理接口实现(即扩展板卡202通过一个或多个物理接口连接与主机设备通信),本说明书并不对此进行限制。
同一主机设备上可以装配多个扩展板卡,因此主机设备可以通过本地部署的前端驱动,检测并识别出已装配的扩展板卡。在识别出扩展板卡后,主机设备201中的任一前端驱动均对应于扩展板卡202中的一个后端接口模块,而任一后端接口模块可以对应于一个存储客户端及该存储客户端对应的存储服务端),换言之,扩展板卡中的后端接口模块、存储客户端和存储服务端之间可以一一对应。其中,任一前端驱动FS Driver对应于任一存储服务端FS Server,即表明该前端驱动FS Driver可以向该存储服务端FS Server发送文件管理请求,且该请求能够被该存储服务端FS Server中的文件系统FS正常响应,实现对该存储服务端FS Server所保存文件的读/写操作。相应的,在前端驱动与文件系统之间的不同对应关系下,文件管理请求的发送方式也有所不同,具体方式可以参见下述实施的记载,此处暂不赘述。
另外,本说明书所述的文件与文件系统,即为相关技术中的一般性概念。例如,本说明书所述的“文件”,可以为进程创建的逻辑信息单元,其具有持久性,即不会因进程的创建和终止而受影响,并且只有当用户明确删除某一文件时,还文件才会被删除而消失。任一文件可以被视为一个独立的地址空间,针对任一文件的读/写操作,即为针对该地址空间中所保存数据的读/写操作。相应的,本说明书所述的“文件系统”,即为针对文件的构造、命名、访问、使用、保护、实现等进行管理的一套文件处理逻辑及其对应的逻辑处理代码。
由前所述,主机设备201中部署有前端驱动,扩展板卡202中部署有文件系统,所以主机设备201可以用于在接收到用户发出的文件管理指令的情况下,通过本地部署的前端驱动向扩展板卡202发送针对目标文件的文件管理请求;而扩展板卡202可以用于将该文件管理请求发送至自身部署的存储服务端,以由该存储服务端中部署的文件系统对文件管理请求进行处理,实现对目标文件的读/写操作。
在一实施例中,根据扩展板卡202的形式,扩展板卡202中的文件系统可以采用相应的部署方式。作为一示例性实施例,扩展板卡202可以为系统级芯片(或称SoC,System onChip,片上系统),例如为硬件卸载卡或硬件加速卡等。上述系统级芯片可以为自带CPU和ROM/RAM的物理板卡设备,该设备可以部署能够运行独立的操作系统,通过该操作系统能够管理该设备的物理资源,进而控制该设备上的行为。同时,该设备也可以通过系统总线连接至其他物理服务器,为其提供I/O请求的处理和转发等服务。
当然,系统级芯片上除了运行操作系统外,还可以运行其他进程,例如可以运行文件管理的相关进程,以通过该系统级芯片响应文件管理请求,从而实现对目标文件的管理。此时文件系统可以被部署在扩展板卡202的存储介质中,从而该文件系统可以被扩展板卡202从该存储介质加载至内存中,并由该扩展板卡202的处理器读取并执行,此时的文件系统可以为内核态文件系统或用户态文件系统。其中,上述存储介质可以部署在扩展板卡本地,如可以为扩展板卡本地装配的HDD(Hard Disk Drive,硬盘驱动器,或称机械硬盘)、SSD(Solid State Disk,固态硬盘)或其他具有存储功能的芯片等;或者也可以为挂载在扩展板卡202中的云硬盘等远端存储设备。通过该方式,可以以软件模拟的方式将文件系统部署在扩展板卡202中,有助于灵活高效的实现更丰富的文件处理操作。
作为另一示例性实施例,上述扩展板卡202可以为可编程硬件单元,例如可以为FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(ApplicationSpecific Integrated Circuit,专用集成电路)、CPLD(Complex Programmable LogicDevice,复杂可编程逻辑器件)等。相应的,扩展板卡202可以加载文件系统的电路逻辑配置文件,以在上述可编程硬件单元的存储服务端中形成文件系统。由于电路逻辑配置文件的内容可以被预先查看与检验,并且可编程硬件单元完全基于电路逻辑配置文件中记载的逻辑处理程序而配置运行,因而通过该方式能够确保所部署的文件系统稳定、高效地运行。
在一实施例中,同一主机设备上可以装配多个扩展板卡,其中任意两个扩展板卡之间可以采用相同或不同方式部署文件系统。例如,文件系统1和文件系统2可以均采用软件方式部署文件系统,也可以均采用硬件方式部署文件系统,还可以文件系统1采用软件方式部署文件系统、文件系统2采用硬件方式部署文件系统等,本说明书对此并不进行限制。其中,对应于前述实施例,采用软件部署方式部署某文件系统,即为将该文件系统的逻辑处理程序(对应于文件处理逻辑)部署在扩展板卡的存储介质中(软件实现),从而上述逻辑处理程序可以被加载至扩展板卡的内存中,并由扩展板卡的CPU在内存中读取该逻辑处理程序,执行相应的读/写操作以实现文件管理。但是在该方式下,CPU的不同逻辑单元之间需要共享内存进行通信,从而可能需要较高的性能开销。
而采用硬件部署方式部署某文件系统,即将文件系统的逻辑处理程序部署在可编程硬件单元中(硬件实现),从而扩展板卡可以直接通过可编程硬件单元执行指令,无需对相应指令进行存储、译码等繁琐操作,也不需要在不同逻辑单元之间通信,性能开销更低,所以能够实现更稳定、快速的文件处理过程。例如,可以分别在扩展板卡202和扩展板卡203(图中未示出)的存储介质中部署EXT4文件系统;也可以在扩展板卡202的存储介质中部署EXT4文件系统,并在扩展板卡203的FPGA芯片中部署NFS文件系统等,不再赘述。同一主机设备采用不同方式部署文件系统,能够在任一扩展板卡(如当前使用的文件系统所在的扩展板卡)发生故障或性能较低的情况下,及时更换其他扩展板卡实现文件管理,以确保云计算节点在文件管理过程中的稳定性。
在一实施例中,用户可以在上述应用程序中,针对目标文件实施文件管理操作,从而发出针对目标文件的新建、修改、存储、删除等文件管理指令。可以理解的是,因为用户处于远程登录状态,所以上述文件管理指令也可以由用户终端根据用户实施的管理行为生成,并通过上述应用程序发送至用户所登录的虚拟机,本说明书并不对此进行限制。
相应的,主机设备201可以在接收到任一虚拟机发送的文件管理指令后,先根据该文件处理指令生成针对目标文件的文件管理请求,然后通过该虚拟机中部署的前端驱动将该请求发送至该虚拟机对应的存储客户端。例如,在接收到上述文件管理指令后,主机设备201中运行的虚拟机的操作系统、上述应用程序或者虚拟机中部署的虚拟文件系统可以根据该文件管理指令生成文件管理请求。如在该文件管理指令为针对目标文件的修改指令的情况下,可以根据该修改指令生成包含“目标文件名称、当前数据、修改后数据”等必要的处理信息的文件修改请求,以向扩展板卡202告知上述处理信息。或者,在该文件管理指令为针对目标文件的删除指令的情况下,可以根据该删除指令生成包含“目标文件名称、操作类型”等必要的处理信息的文件删除请求,其中,上述操作类型可以为“delete”等用于表征“删除”这一操作的关键字,不再赘述。
进一步的,在生成上述文件管理请求后,主机设备201可以通过前端驱动将该请求发送至虚拟机对应的存储服务端中的文件系统。因为虚拟机与扩展板卡202中的文件系统可能存在多种对应关系,所以可以采用多种方式发送该请求。例如,在该虚拟机处于独立工作模式的情况下,该虚拟机当前仅对应于一个存储服务端中的一个文件系统,此时主机设备201可以通过前端驱动将该请求发送至虚拟机对应的存储客户端,进而存储客户端将该请求(或其对应的自定义文件管理请求)发送至其对应的存储服务端中的该文件系统。而在该虚拟机与其他虚拟机处于共享工作模式的情况下,主机设备201可以将该文件管理请求通过上述方式分别发送至各个虚拟机对应的文件系统,并由接收到该请求的文件系统判断该请求对应的目标文件是否由自身所管理,并在自身管理目标文件的情况下响应该请求,否则丢弃该请求,从而在简化主机设备201处理逻辑的同时,保证文件管理请求的可靠响应,避免发送遗漏等错误导致的响应失败。或者,也可以由接收到上述文件关系指令的虚拟机或其对应的虚拟文件系统确定目标文件对应的文件系统及其所处的存储服务端,并仅将该文件管理请求发送至确定出的对应于目标文件的文件系统,从而有效减少主机设备201与扩展板卡202之间的交互数据量,避免重复发送导致的通道占用,一定程度上提升交互效率。
在一实施例中,上述扩展板卡202可以在接收到的文件管理请求遵循公有的第一文件系统协议的情况下,通过存储客户端将文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,而且,根据该请求生成的自定义文件处理指令被存储客户端对应的存储服务端执行以实现读/写操作。其中,上述第一文件系统协议与扩展板卡202的存储服务端中部署的文件系统相对应,文件系统中可以记录文件管理请求对应的操作与相应函数之间的对应关系。以文件写入为例,在EXT4文件系统中,可以通过函数write()写入文件,而在NFS文件系统中,通过函数NFSPROC_WRITE()函数写入文件。
因为本方案中的文件系统部署在扩展板卡202中,而不同扩展板卡202的软/硬件环境可能有所不同(如芯片型号不同、软件版本不同、可用资源类型不同等),所以实际部署的文件系统可以根据扩展板卡202的实际情况调整具体的文件管理逻辑,从而可以按照调整后的文件管理逻辑部署文件系统;或者按照实际情况对第一文件系统协议进行优化,从而生成第二文件系统协议,如批量处理文件管理请求以减少交互次数、取消非必要的交互过程等。其中,上述第一文件系统协议可以为通用的POSIX(Portable Operating SystemInterface,可移植操作系统接口)协议等,本说明书并不对此进行限制。通过该方式,能够确保扩展板卡中部署的文件系统符合扩展板卡的软/硬件环境,从而保证文件处理效率。
在一实施例中,上述存储服务端用于存储目标文件,并处理上述文件管理请求或自定义文件管理请求,以实现对目标文件的读/写操作。例如,在文件系统接收到后端接口模块发送的文件管理请求(遵循公有的第一文件系统协议)的情况下,可以按照自身的逻辑处理程序生成该请求对应的文件处理指令,并执行该指令实现对目标文件的读/写操作。或者,在文件系统接收到上述存储客户端发送的自定义文件管理请求(遵循自定义的第二文件系统协议)的情况下,可以按照自身的逻辑处理程序生成该请求对应的自定义文件处理指令,并执行该指令实现对目标文件的读/写操作。
存储服务端中可以包括目标文件在内的多个文件,任一文件包含数据(如图2中的Data)以及数据对应的索引数据(或称元数据,如图2中的Meta)。其中,任一文件所包含的数据和索引数据均可以保存在HDD(如图2中的Disk)中(即将该文件保存在HDD中),当然,也可以保存在SSD或其他形式的存储介质中,本说明书并不对此进行限制。其中,对于任一文件,其中包含的数据即为用户的管理对象,用户通过主机设备中的应用程序可以查看并管理这部分数据;而相应的索引数据用于文件系统对数据进行管理(如根据索引数据查找数据等),用户对索引数据可以无感知。
实际上,上述文件的数据及索引数据均处于文件系统中,该文件系统本质上即为用于对文件的数据进行管理的逻辑处理程序,上述数据及其对应的索引数据可以在该逻辑处理程序的控制下被新建、保存、修改、删除等。例如,该逻辑处理程序可以用于实现对文件的读/写操作:存储服务端执行上述文件处理指令的过程,即为按照对应于文件处理指令的操作逻辑针对目标文件的数据执行读/写操作的过程,操作完成后可以得到针对目标文件的操作结果。例如,存储服务端可以根据文件处理指令中包含的文件信息,通过查询上述索引数据确定目标文件中待操作的Data,然后通过控制磁盘对该Data进行读/写操作,从而实现对目标文件的管理。
在一实施例中,虚拟机中还可以部署对应于前端驱动的虚拟文件系统,任一虚拟机中部署的虚拟文件系统即为该虚拟机对应的文件管理资源的“展示窗口”:用于向主机设备201提供其所对应文件系统的系统信息和/或调用接口。例如,虚拟文件系统可以向用户展示(当然,是将相关信息发送至用户终端进行展示)其所对应文件系统的系统参数、可执行操作、文件管理方式等信息。另外,虚拟文件系统还可以用于连接主机设备中处于应用层的应用程序和处于底层的前端驱动,而无需应用程序与前端驱动之间直接通信,提升指令处理效率及主机设备的运行稳定性。
在一实施例中,用户可以还可以在任一时刻通过上述虚拟文件系统对扩展板卡202进行配置,如对文件大小、文件名称、文件结构、文件类型等文件参数进行统一配置,或者针对扩展板卡202的缓存空间大小、文件处理优先级等板卡参数进行配置等。例如,用户可以通过上述虚拟机中的应用程序或者虚拟机按照虚拟文件系统的相关信息为用户提供的配置界面,发出针对目标参数的配置指令,从而主机设备201生成针对该配置指令的配置请求并发送相应的扩展板卡202,相应的,扩展板卡202可以响应于该配置请求实施针对目标参数的配置操作,具体过程不再赘述。通过该方式,用户可以实现对目标参数的灵活配置,以满足用户的个性化文件管理需求。
在上述实施例中,主机设备201和其上装配的扩展板卡202共同构成的云计算节点,可以被部署在公有云网络中,当然,也可以被部署在私有云网络、混合云网络等任一形式的云计算网络中,本说明书对此并不进行限制。
对应于上述实施例,本说明书提出一种文件管理方法,图3是一示例性实施例提供的一种文件管理方法的交互流程图。如图3所示,该交互过程可以包括下述步骤302-318b,其中,下述步骤中的“主机设备”和“扩展板卡”可以分别为图2所示的主机设备201和扩展板卡202。
步骤302,主机设备识别扩展板卡。
主机设备上预设有至少一个板卡接口,用于可拆卸的(如插装、扣接等)装配或者固定装配(如焊接等)扩展板卡。因此主机设备可以在设备开机时通过前端驱动依次扫描板卡接口,或者在运行状态下通过前端驱动周期性扫描板卡接口,又或者在运行状态下通过中断触发等方式检测新装配的扩展板卡。在识别出扩展板卡及其所在的板卡接口后,可以通过上述前端驱动与扩展板卡进行交互,以便后续向扩展板卡发送文件处理指令。具体检测及识别方式可以参见相关技术中的记载,此处不再赘述。
为实现主机设备和扩展板卡之间的数据传输,可以在扩展板卡中设置至少一个后端接口模块,以用于向主机设备提供扩展板卡实现文件管理所需的相关资源(如计算资源、存储资源、网络资源等)。另外,为保证主机设备和扩展板卡之间的数据传输速度,二者之间的数据传输通道可以为PCIe通道,相应的,扩展板卡中设置的上述后端接口模块可以遵循PCIe标准,从而将扩展板卡实现为装配在主机设备上的PCIe设备。值得说明的是,上述后端接口模块为扩展板卡中实现的逻辑接口,在一实施例中,多个逻辑接口可以依赖一个或多个物理接口实现(即扩展板卡通过一个或多个物理接口与主机设备通信)。其中,上述主机设备与扩展板卡通讯的过程,具体可以为主机设备中的前端驱动与扩展板卡中的后端接口模块之间的通信的过程。
步骤304,用户通过用户终端远程登录主机设备中运行的虚拟机。
用户所使用的用户终端中可以运行浏览器或者针对虚拟机的登录客户端,因此用户终端可以通过上述浏览器或登录客户端向用户展示针对虚拟机的登录页面,从而用户可以使用预设的登录信息(如账号、密码、生物识别信息等)登录主机设备中运行的虚拟机。
可以理解的是,上述识别扩展板卡和远程登录之间并不存在必然的先后顺序,即本说明书对于步骤302和步骤304执行的先后顺序并不进行限制。例如,在扩展板卡可拆卸装配的情况下,主机设备的运维人员可以在用户处于登录状态时对扩展板卡进行插拔或更换等处理,从而主机设备可以实时获知上述插拔事件并识别板卡接口中当前装配的扩展板卡;或者,用户也可以在扩展板卡装备及识别完成后进行登录(当然,用户对于扩展板卡的变更是无感知的)。但需要明确的是,因为用户(通过应用程序)发出的文件管理指令对应的文件管理请求需要发送至扩展板卡,并由扩展板卡控制存储服务端执行最终的读/写操作,所以用户在发送针对目标文件的文件管理指令时,用户登录的虚拟机所对应的扩展板卡需要处于正常工作状态,即需要被正确装配并识别。
步骤306,用户终端通过虚拟机中部署的应用程序向主机设备发送文件管理指令。
用户可以在上述应用程序中,针对目标文件实施管理行为,例如,可以发出针对目标文件的新建、修改、存储、删除等文件管理指令。可以理解的是,因为用户处于远程登录状态,所以上述文件管理指令也可以由用户终端根据用户实施的管理行为生成,并发送至用户所登录的虚拟机,本说明书并不对此进行限制。
步骤308,主机设备根据文件管理指令生成文件管理请求。
步骤310,主机设备将文件管理请求发送至虚拟机对应的扩展板卡。
在接收到上述文件管理指令后,主机设备的操作系统、用户登录的虚拟机部署的虚拟文件系统或者上述应用程序可以根据该文件管理指令生成文件管理请求。例如,在该文件管理指令为针对目标文件的修改指令的情况下,可以根据该修改指令生成包含“目标文件名称、当前数据、修改后数据”等必要的处理信息的文件修改请求,以向扩展板卡告知上述处理信息。或者,在该文件管理指令为针对目标文件的删除指令的情况下,可以根据该删除指令生成包含“目标文件名称、操作类型”等必要的处理信息的文件删除请求,其中,上述操作类型可以为“delete”等用于表征“删除”这一操作的关键字,不再一一赘述。
进一步的,扩展板卡可以在生成上述文件管理请求后,通过前端驱动将该请求发送至虚拟机对应的扩展板卡,即发送至该前端驱动对应的部署于扩展板卡上的后端接口模块,并由该后端接口模块将该请求发送至其对应的存储客户端。因为虚拟机与扩展板卡中的文件系统存在多种对应关系,所以可以采用多种方式发送该请求。例如,在该虚拟机处于独立工作模式的情况下,该虚拟机仅对应于一个存储服务端中的一个文件系统,此时主机设备可以通过前端驱动将该请求发送至虚拟机对应的存储客户端,并由存储客户端将该请求(或其对应的自定义文件管理请求)发送至该存储服务端中的该文件系统(下称目标文件系统),以由该文件系统进行响应。而在该虚拟机与其他虚拟机处于共享工作模式的情况下,该虚拟机对应于多个文件系统,此时主机设备可以通过上述方式将该文件管理请求同时发送至各个虚拟机对应的文件系统,并由接收到该请求的文件系统判断该请求对应的目标文件是否由自身所管理,判断为是的文件系统即为目标文件系统,从而目标文件系统可以进一步响应该请求,而其他文件系统可以丢弃该请求,从而在简化主机设备处理逻辑的同时,保证文件管理请求的可靠响应,避免发送遗漏等错误导致的响应失败。或者,还可以由虚拟机或前端驱动确定目标文件所对应的目标文件系统,并仅将该文件管理请求发送至目标文件系统,以有效减少主机设备与扩展板卡之间的交互数据量,避免重复发送导致的通道占用,一定程度上提升交互效率。
步骤312,扩展板卡中的存储客户端将文件管理请求转换为自定义文件管理请求。
因为本方案中的文件系统部署在扩展板卡中,而不同的扩展板卡的软/硬件环境可能有所不同(如芯片型号不同、软件版本不同、可用资源类型不同等),所以实际部署的文件系统可以根据扩展板卡的实际情况调整具体的文件管理逻辑,并按照调整后的文件管理逻辑部署文件系统;或者,也可以按照上述实际情况对第一文件系统协议进行优化,从而生成自定义的第二文件系统协议,如批量处理文件管理请求以减少交互次数、取消非必要的交互过程等。
例如,上述第二文件系统协议可以为添加了批量处理逻辑的协议,因此存储客户端在接收到遵循通用的第一文件系统协议的文件管理请求后,可以将该请求中预设的批量处理标志字段的取值置为预设值。如在上述标志字段为标志位的情况下,可以将该标志位置为1,以表征该文件管理请求需要进行批量处理,从而将标准的文件管理请求转换为自定义文件管理请求。相应的,存储服务端中的文件系统接收到该自定义文件管理请求后,可以将该请求添加至待处理请求队列,并在该队列中的请求数量达到预设数量(如1000条、200条等)时,对该队列中的请求进行批量处理。当然,上述自定义文件系统协议还可以包括其他规则,本说明书并不对此进行限制。
扩展板卡中的后端接口模块在接收到文件管理请求后,可以将该请求发送至存储客户端,进而存储客户端可以将遵循通用的第一标准文件协议的该请求转换为遵循上述自定义文件系统协议的自定义文件管理请求。值得说明的是,该转换或者仅是将请求所遵循的文件系统协议进行转换,而请求中携带的目标文件名称等文件信息以及针对目标文件的管理类型等管理信息并不发生改变,因此将该自定义文件管理请求可视为另一种形式的文件管理请求。
步骤314,扩展板卡中的文件系统根据接收到的请求生成文件处理指令。
步骤316,扩展板卡中的文件系统执行文件处理指令,以实现读/写操作。
可以理解的是,上述步骤312为可选步骤,在不执行上述步骤312的情况下,存储客户端可以将后端接口模块发送来的文件管理请求(遵循通用的第一文件系统协议)直接发送至其所对应存储服务端中的文件系统;而在执行上述步骤312的情况下,存储客户端可以将后端接口模块发送来的文件管理请求转换为自定义文件管理请求(遵循自定义的第一文件系统协议),并将该自定义文件管理请求发送至其所对应存储服务端中的文件系统。此后,文件系统可以根据接收到的上述文件管理请求或自定义文件管理请求,按照自身的逻辑处理程序生成相应的文件处理指令。可以理解的是,根据文件管理请求生成的文件处理指令遵循上述第一文件系统协议(下称标准文件处理指令),而根据自定义文件管理请求生成的自定义文件处理指令遵循上述第二文件系统协议(下称自定义文件处理指令)。需要说明的是,对于用户实施的一次文件管理行为所产生的一条文件管理请求,可以相应的生成一条或多条文件处理指令,本说明书对此并不进行限制。
对于标准文件处理指令,以第一文件系统协议为POSIX协议为例,在文件管理请求为针对目标文件aaa的文件新建请求的情况下,若上述文件系统为EXT4文件系统,则可以生成标准文件处理指令“write(aaa)”用于新建文件aaa;若上述文件系统为NFS文件系统,则可以生成标准文件处理指令“NFSPROC_WRITE(aaa)”用于新建文件aaa。
在生成上述文件处理指令(标准文件处理指令或自定义文件处理指令)后,文件系统可以按照自身的逻辑处理程序执行上述文件处理指令,以实现针对目标文件的读/写操作。存储服务端处理指令以执行读/写操作的具体过程可以参见相关技术中的记载,此处不再赘述。
步骤318a,扩展板卡将操作结果返回至主机设备。
步骤318b,主机设备将操作结果返回至用户终端。
在读/写操作完成后,上述扩展板卡可以将操作结果返回至主机设备,进而主机设备可以将上述操作结果返回至用户终端,以便用户获知该操作结果。例如,在文件管理指令对应于针对目标文件的新建操作的情况下,扩展板卡可以在写入操作完成后,将写入的目标文件的文件地址、写入时刻等相关信息返回至主机设备。或者为减少数据传输量,也可以仅返回用于指示写入成功的标识数据,以告知主机设备写入操作被成功执行,如可以在返回的通知消息中预设标志位,在该标志位为1的情况下,表明写入成功;在该标志位为0的情况下,表明写入失败。
通过本说明书的上述实施例可见,本方案充分利用云计算节点包含主机设备和扩展板卡这一特性,将文件系统部署在扩展板卡中,通过主机设备与扩展板卡之间的交互过程实现文件管理,从而将处理操作复杂且对资源要求较高的文件管理工作交由扩展板卡完成,而主机设备只需要通过本地部署的前端驱动向扩展板卡发送文件管理请求并接收扩展板卡响应于该请求返回的操作结果即可。对于主机设备,该方案实现了文件管理工作的卸载,减轻了主机设备的工作负荷,有效解决了相关技术中存在的上述技术问题。
上述存储服务端还可以部署在扩展板卡可以访问的远程存储设备中,具体可参见图4所示一示例性实施例提供的另一种云计算节点的结构示意图。如图4所示,该云计算节点包括主机设备401和扩展板卡402,二者之间的连接关系与图2所述实施例并不存在本质区别,可参见前述记载,此处不再赘述。
与图2所示的云计算节点不同的是,扩展板卡402中部署的存储客户端所连接的存储服务端被部署在远程存储设备403中,而非部署在扩展板卡402中。其中,任一远程存储设备中可以仅部署一个存储服务端(如远程存储设备j中部署有存储服务端j),也可以同时部署多个存储服务端(如远程存储设备1中部署有存储服务端1和存储服务端2),任一存储服务端存在相应的存储客户端。另外,任一存储服务端中可以部署一个文件系统,例如存储服务端1中部署有文件系统1,存储服务端j中部署有文件系统j。其中,上述应用程序个数p、q和虚拟机等的个数j可以为任意正整数;扩展板卡402中设置的后端接口模块与远程存储设备中部署的存储客户端、存储服务端一一对应。
上述主机设备401中部署有虚拟机,虚拟机中部署有应用程序和前端驱动;扩展板卡402部署有后端接口模块、存储客户端;远程存储设备403中部署有存储服务端,存储服务端中部署有文件系统。主机设备401向扩展板卡402发送文件管理请求的具体过程可参见图2-图3相关实施例的记载,此处不再赘述。
其中,存储客户端中部署有远程过程调用(Remote Procedure Call,RPC)模块,如图4中的RPC,存储客户端通过该模块可以实现与存储服务端之间的远程交互,如发送文件处理指令或接收操作结果等。例如,扩展板卡402可以通过远程过程调用模块将后端接口模块接收到的文件管理请求或者存储客户端根据该文件管理请求生成的自定义文件管理请求发送至远程存储设备403中的存储服务端,以由存储服务端对请求进行处理,实现对远程存储设备403中保存的目标文件进行读/写操作。在文件系统操作完成后,还可以通过远程过程调用模块接收存储服务端返回的操作结果。
如图4所示,任一扩展板卡中可以设置有网卡模块,其所访问的远程存储设备中相应的也设置有网卡模块,扩展板卡与远程存储设备之间的数据交互,实际上是通过两设备中设置的网卡模块相互配合实现的。如扩展板卡向远程存储设备发送文件管理请求的过程,即为扩展板卡通过自身设置的网卡模块向远程存储上设置的网卡模块发送文件管理请求的过程。不同设备的网卡模块之间进行数据交互的具体过程可以参见相关技术中的记载,本说明书对此并不进行限制。
相应的,基于图4所示的云计算节点对存储于远程存储设备403中的文件进行文件管理的具体过程,可以参见下述实施例。图5是一示例性实施例提供的另一种文件管理方法的交互流程图,如图5所示,该处理过程可以包括下述步骤502-520c,其中,下述步骤中的“主机设备”、“扩展板卡”和“远程存储设备”可以分别为图4所示的主机设备401、扩展板卡402和远程存储设备403。
步骤502,主机设备识别扩展板卡。
步骤504,用户通过用户终端远程登录主机设备中运行的虚拟机。
步骤506,用户终端通过虚拟机中部署的应用程序向主机设备发送文件管理指令。
步骤508,主机设备根据文件管理指令生成文件管理请求。
步骤510,主机设备将文件管理请求发送至虚拟机对应的扩展板卡。
步骤512,扩展板卡中的存储客户端将文件管理请求转换为自定义文件管理请求。
上述步骤502-512的具体实施过程,与前述步骤302-312并不存在本质区别,可以参见前述记载,此处不再赘述。
步骤514,扩展板卡通过远程过程调用模块将标准文件管理请求或自定义文件管理请求发送至远程存储设备。
上述存储客户端中还可以部署有远程过程调用模块,相应的,扩展板卡还可以通过远程过程调用模块将上述文件管理请求(标准文件管理请求或自定义文件管理请求)发送至远程存储设备中的存储服务端。此时,扩展板卡可以通过上述远程过程调用模块的成熟技术实现与存储服务端之间的交互,从而助于提升扩展板卡的模块化程度,进而提升扩展板卡的文件处理效率。如前所述,在扩展板卡和远程存储设备中设置有网卡模块的情况下,扩展板卡和远程存储设备可以通过各自的网卡模块实现数据交互,不再赘述。
步骤516,存储服务端中的文件系统执行文件处理指令,以实现读/写操作。
类似的,上述步骤514为可选步骤,在不执行上述步骤514的情况下,存储客户端可以将后端接口模块发送来的文件管理请求(遵循通用的第一文件系统协议)通过远程过程调用模块直接发送至远端存储设备所部署的存储服务端中的文件系统;而在执行上述步骤514的情况下,存储客户端可以将后端接口模块发送来的文件管理请求转换为自定义文件管理请求(遵循自定义的第一文件系统协议),并通过远程过程调用模块将该自定义文件管理请求发送至远端存储设备所部署的存储服务端中的文件系统。从而文件系统可以通过索引数据确定目标文件,并针对目标文件执行上述请求,以实现针对目标文件的读/写操作。存储服务端处理指令以执行读/写操作的具体过程可以参见相关技术中的记载,此处不再赘述。
进一步的,扩展板卡中还可以部署缓存模块(如图4所示的Cache),如可以部署在存储客户端中,或者在扩展板卡自身的内存中划分缓存控件作为缓存模块,以在接收到针对目标文件的文件管理请求满足缓存条件的情况下,可以向远程存储设备中的存储客户端请求获取该目标文件,并在接收到存储客户端从存储服务端处获取并返回的目标文件后,将该目标文件缓存在该缓存模块中,从而在后续再次接收到针对该目标文件的文件管理请求的情况下,可以直接针对缓存模块中缓存的该目标文件进行处理,以减少与存储服务端的交互次数,提升文件处理速度。其中,上述缓存条件可以为预设时长内接收到超出预设数量的针对目标文件的文件管理请求,或者目标文件的文件大小不大于预设值等。
另外,扩展板卡还可以为缓存模块中缓存的目标文件设置删除条件,如预设时长内未接收到针对目标文件的文件管理请求等,并在删除条件满足的情况下将缓存模块中的目标文件删除,以避免非热点文件长时间占用缓存空间。进一步的,扩展板卡还可以在对缓存模块中的目标文件执行读/写操作后、针对目标文件连续执行多次读/写操作后或者在缓存模块中删除目标文件时,将目标文件的当前文件状态(如目标文件中所存储目标数据的当前值)发送至存储服务端,以由后者使用该当前文件状态更新本地保存的目标文件,从而实现对目标文件的存档。
步骤518,远程存储设备中的文件系统处理标准文件处理指令或自定义文件处理指令,以执行读/写操作。
存储服务端中的文件系统执行上述文件处理指令以实现针对目标文件的读/写操作的具体过程,可参见前述实施例以及相关技术中的记载,此处不再赘述。
步骤520a,远程存储设备将操作结果返回至扩展板卡。
步骤520b,扩展板卡将操作结果返回至主机设备。
步骤520c,主机设备将操作结果返回至用户终端。
在读/写操作完成后,上述远程存储设备可以通过上述远程过程调用模块将操作结果返回至扩展板卡,以使扩展板卡将该操作返回至主机设备,进而主机设备可以将上述操作结果返回至用户终端,以便用户获知该操作结果。
通过本说明书的上述实施例可见,本方案充分利用云计算节点包含主机设备和扩展板卡这一特性,将文件系统部署在扩展板卡可访问的远程存储设备中,通过主机设备、扩展板卡与远程存储设备之间的交互过程实现文件管理,从而将处理操作复杂且对资源要求较高的文件管理工作交由扩展板卡和远程存储设备完成,而主机设备只需要通过本地部署的前端驱动向扩展板卡发送文件管理请求并接收扩展板卡返回的操作结果即可,对于主机设备实现了文件管理工作的卸载,减轻了主机设备的工作负荷。
通过上述实施例,一方面,主机设备不再受限于网络带宽的限制,便于充分发挥云计算节点的高效存储性能。另一方面,在文件管理过程中,主机设备只需要对用户执行进行简单处理并接收扩展板卡的操作结果即可,无需在本地进行复杂繁琐的文件管理处理,保证了文件管理工作高效进行的同时也避免了主机设备其他功能可能导致的干扰,提升了文件管理功能的稳定性。而且,主机设备只需要面向用户提供同一的文件系统的相关服务,而无需用户手动维护或熟知系统逻辑,显著降低了文件系统的使用门槛。
可见,上述方案中的文件系统部署方式能够结合云计算节点“主机设备+扩展板卡”的结构特点,实现部署有文件系统的扩展板卡与主机设备(或者文件系统的远程存储设备与扩展板卡和主机设备)之间的交互,从而减轻主机设备的工作负荷,有效提升了文件管理效率,能够充分满足公有云场景下对于高I/O性能、海量数据等的特殊需求。
对应于上述实施例,本说明书提出一种云计算节点。该云计算节点可以包括:主机设备和装配于所述主机设备上的扩展板卡,其中:
所述主机设备上运行的虚拟机中部署有前端驱动,且所述主机设备用于在接收到用户发出的文件管理指令的情况下,通过所述前端驱动向扩展板卡发送针对目标文件的文件管理请求;
所述扩展板卡上部署有存储客户端,所述存储客户端用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
如前所述,所述主机设备中运行有多个虚拟机、所述存储服务端中部署有对应于各个虚拟机的文件系统;所述主机设备还用于:
接收任一虚拟机发送的所述文件管理指令,并通过所述任一虚拟机中部署的前端驱动将所述文件管理请求发送至所述任一虚拟机对应的文件系统。
如前所述,所述主机设备还用于:
通过所述前端驱动接收所述扩展板卡返回的操作结果,并将所述操作结果返回至所述用户。
如前所述,所述扩展板卡还用于:
在所述文件管理请求遵循公有的第一文件系统协议的情况下,通过所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
如前所述,在所述存储服务端部署在所述远程存储设备中的情况下,所述存储客户端中部署有远程过程调用模块,所述扩展板卡还用于:
通过所述远程过程调用模块将所述文件管理请求发送至所述存储服务端;以及,
通过所述远程过程调用模块接收所述存储服务端返回的操作结果。
如前所述,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为可编程硬件单元;所述扩展板卡还用于:
加载所述文件系统的电路逻辑配置文件,以在所述存储服务端中形成所述文件系统。
如前所述,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为系统级芯片,所述文件系统被部署在所述扩展板卡的存储介质中,且所述文件系统被加载到所述扩展板卡的内存中,并由所述扩展板卡上的处理器从所述内存中读取并执行;
其中,所述文件系统为内核态文件系统或用户态文件系统。
如前所述,所述云计算节点被部署于公有云网络中。
对应于前述实施例所述的云计算节点,本说明书还提出一种基于该云计算节点实现的文件管理方法。图6是一示例性实施例提供的一种文件管理方法的流程图。
该方法应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,如图6所示,该方法可以包括:
步骤602,接收用户通过所述虚拟机发出的文件管理指令。
步骤604,通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,使所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,并由所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
如前所述,所述主机设备中运行有多个虚拟机、所述扩展板卡上部署的存储服务端中部署有对应于各个虚拟机的文件系统;所述方法还包括:
接收任一虚拟机发送的所述文件管理指令,并通过所述任一虚拟机中部署的前端驱动将所述文件管理请求发送至所述任一虚拟机对应的文件系统。
如前所述,所述方法还包括:
通过所述前端驱动接收所述扩展板卡返回的操作结果,并将所述操作结果返回至所述用户。
对应于前述实施例所述的云计算节点,本说明书还提出另一种基于该云计算节点实现的文件管理方法。图7是一示例性实施例提供的另一种文件管理方法的流程图。该方法可以应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,如图7所示,该方法可以包括:
步骤702,接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求。
步骤704,将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
如前所述,所述方法还包括:
在所述文件管理请求遵循公有的第一文件系统协议的情况下,将所述文件管理请求发送至所述存储客户端,由所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
如前所述,所述方法还包括:
在所述文件管理请求遵循公有的第一文件系统协议的情况下,通过所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
如前所述,在所述存储服务端部署在所述远程存储设备中的情况下,所述存储客户端中部署有远程过程调用模块,所述方法还包括:
通过所述远程过程调用模块将所述文件管理请求发送至所述存储服务端;以及,
通过所述远程过程调用模块接收所述存储服务端返回的操作结果。
如前所述,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为可编程硬件单元;所述方法还包括:
加载所述文件系统的电路逻辑配置文件,以在所述存储服务端中形成所述文件系统。
如前所述,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为系统级芯片,所述文件系统被部署在所述扩展板卡可访问的存储介质中,且所述文件系统被加载到所述扩展板卡的内存中,并由所述扩展板卡上的处理器从所述内存中读取并执行;
其中,所述文件系统为内核态文件系统或用户态文件系统。
图8是一示例性实施例提供的一种设备的示意结构图。请参考图8,在硬件层面,该设备包括处理器802、内部总线804、网络接口806、内存808以及非易失性存储器810,当然还可能包括其他功能所需要的硬件。处理器802从非易失性存储器810中读取对应的计算机程序到内存808中然后运行,在逻辑层面上形成文件管理装置。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参考图9,在一软件实施方式中,该文件管理装置可以应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有文件系统,该文件管理装置可以包括:
指令接收单元901,用于接收用户通过所述虚拟机发出的文件管理指令;
请求发送单元902,用于通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,以由所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
可选的,所述主机设备中运行有多个虚拟机、所述扩展板卡上部署的存储服务端中部署有对应于各个虚拟机的文件系统;所述方法还包括:
驱动发送单元903,用于接收任一虚拟机发送的所述文件管理指令,并通过所述任一虚拟机中部署的前端驱动将所述文件管理请求发送至所述任一虚拟机对应的文件系统。
可选的,所述装置还包括:
结果接收单元904,用于通过所述前端驱动接收所述扩展板卡返回的操作结果,并将所述操作结果返回至所述用户。
请参考图10,在另一软件实施方式中,该文件管理装置可以应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,该文件管理装置可以包括:
请求接收单元1001,用于接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求;
文件处理单元1002,用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
可选的,所述装置还包括:
请求转换单元1003,用于在所述文件管理请求遵循公有的第一文件系统协议的情况下,将所述文件管理请求发送至所述存储客户端,由所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
可选的,在所述存储服务端部署在所述远程存储设备中的情况下,所述存储客户端中部署有远程过程调用模块,所述方法还包括:
远程请求发送单元1004,用于通过所述远程过程调用模块将所述文件管理请求发送至所述存储服务端;以及,
远程结果接收单元1005,用于通过所述远程过程调用模块接收所述存储服务端返回的操作结果。
可选的,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为可编程硬件单元;所述方法还包括:
配置文件加载单元1006,用于加载所述文件系统的电路逻辑配置文件,以在所述存储服务端中形成所述文件系统。
可选的,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为系统级芯片,所述文件系统被部署在所述扩展板卡可访问的存储介质中,且所述文件系统被加载到所述扩展板卡的内存中,并由所述扩展板卡上的处理器从所述内存中读取并执行;
其中,所述文件系统为内核态文件系统或用户态文件系统。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。
Claims (20)
1.一种云计算节点,其特征在于,包括:主机设备和装配于所述主机设备上的扩展板卡,其中:
所述主机设备上运行的虚拟机中部署有前端驱动,且所述主机设备用于在接收到用户发出的文件管理指令的情况下,通过所述前端驱动向扩展板卡发送针对目标文件的文件管理请求;
所述扩展板卡上部署有存储客户端,所述存储客户端用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
2.根据权利要求1所述的云计算节点,其特征在于,所述主机设备中运行有多个虚拟机、所述存储服务端中部署有对应于各个虚拟机的文件系统;所述主机设备还用于:
接收任一虚拟机发送的所述文件管理指令,并通过所述任一虚拟机中部署的前端驱动将所述文件管理请求发送至所述任一虚拟机对应的文件系统。
3.根据权利要求1所述的云计算节点,其特征在于,所述主机设备还用于:
通过所述前端驱动接收所述扩展板卡返回的操作结果,并将所述操作结果返回至所述用户。
4.根据权利要求1所述的云计算节点,其特征在于,所述扩展板卡还用于:
在所述文件管理请求遵循公有的第一文件系统协议的情况下,通过所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
5.根据权利要求1所述的云计算节点,其特征在于,在所述存储服务端部署在所述远程存储设备中的情况下,所述存储客户端中部署有远程过程调用模块,所述扩展板卡还用于:
通过所述远程过程调用模块将所述文件管理请求发送至所述存储服务端;以及,
通过所述远程过程调用模块接收所述存储服务端返回的操作结果。
6.根据权利要求1所述的云计算节点,其特征在于,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为可编程硬件单元;所述扩展板卡还用于:
加载所述文件系统的电路逻辑配置文件,以在所述存储服务端中形成所述文件系统。
7.根据权利要求1所述的云计算节点,其特征在于,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为系统级芯片,所述文件系统被部署在所述扩展板卡的存储介质中,且所述文件系统被加载到所述扩展板卡的内存中,并由所述扩展板卡上的处理器从所述内存中读取并执行;
其中,所述文件系统为内核态文件系统或用户态文件系统。
8.根据权利要求1-7中任一所述的云计算节点,其特征在于,所述云计算节点被部署于公有云网络中。
9.一种文件管理方法,其特征在于,应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述方法包括:
接收用户通过所述虚拟机发出的文件管理指令;
通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,使所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,并由所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
10.根据权利要求9所述的方法,其特征在于,所述主机设备中运行有多个虚拟机、所述扩展板卡上部署的存储服务端中部署有对应于各个虚拟机的文件系统;所述方法还包括:
接收任一虚拟机发送的所述文件管理指令,并通过所述任一虚拟机中部署的前端驱动将所述文件管理请求发送至所述任一虚拟机对应的文件系统。
11.根据权利要求9所述的方法,其特征在于,所述方法还包括:
通过所述前端驱动接收所述扩展板卡返回的操作结果,并将所述操作结果返回至所述用户。
12.一种文件管理方法,其特征在于,应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述方法包括:
接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求;
将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
在所述文件管理请求遵循公有的第一文件系统协议的情况下,通过所述存储客户端将所述文件管理请求转换为遵循自定义的第二文件系统协议的自定义文件管理请求,且根据所述自定义文件管理请求生成的自定义文件处理指令被所述存储客户端对应的存储服务端执行以实现所述读/写操作。
14.根据权利要求12所述的方法,其特征在于,在所述存储服务端部署在所述远程存储设备中的情况下,所述存储客户端中部署有远程过程调用模块,所述方法还包括:
通过所述远程过程调用模块将所述文件管理请求发送至所述存储服务端;以及,
通过所述远程过程调用模块接收所述存储服务端返回的操作结果。
15.根据权利要求12所述的方法,其特征在于,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为可编程硬件单元;所述方法还包括:
加载所述文件系统的电路逻辑配置文件,以在所述存储服务端中形成所述文件系统。
16.根据权利要求12所述的方法,其特征在于,在所述存储服务端部署在所述扩展板卡中的情况下,所述扩展板卡为系统级芯片,所述文件系统被部署在所述扩展板卡可访问的存储介质中,且所述文件系统被加载到所述扩展板卡的内存中,并由所述扩展板卡上的处理器从所述内存中读取并执行;
其中,所述文件系统为内核态文件系统或用户态文件系统。
17.一种文件管理装置,其特征在于,应用于装配有扩展板卡的主机设备,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述装置包括:
指令接收单元,用于接收用户通过所述虚拟机发出的文件管理指令;
请求发送单元,用于通过所述前端驱动向所述扩展板卡发送针对目标文件的文件管理请求,以由所述存储客户端将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,并由所述存储服务端中部署的文件管理请求进行处理,实现对所述目标文件的读/写操作。
18.一种文件管理装置,其特征在于,应用于装配于主机设备上的扩展板卡,所述主机设备和所述扩展板卡构成被部署于云计算网络中的云计算节点,所述主机设备上运行的虚拟机中部署有前端驱动,所述扩展板卡中部署有存储客户端,所述装置包括:
请求接收单元,用于接收所述主机设备通过所述前端驱动发送的针对目标文件的文件管理请求;
文件处理单元,用于将所述文件管理请求发送至部署于所述扩展板卡或所述扩展板卡可访问的远程存储设备处的存储服务端,使所述存储服务端中部署的文件系统对所述文件管理请求进行处理,以实现对所述目标文件的读/写操作。
19.一种电子设备,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器通过运行所述可执行指令以实现如权利要求9-16中任一所述的方法。
20.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该指令被处理器执行时实现如权利要求9-16中任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110328619.5A CN113032099B (zh) | 2021-03-26 | 2021-03-26 | 云计算节点、文件管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110328619.5A CN113032099B (zh) | 2021-03-26 | 2021-03-26 | 云计算节点、文件管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113032099A true CN113032099A (zh) | 2021-06-25 |
CN113032099B CN113032099B (zh) | 2023-10-03 |
Family
ID=76472684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110328619.5A Active CN113032099B (zh) | 2021-03-26 | 2021-03-26 | 云计算节点、文件管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113032099B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312182A (zh) * | 2021-07-27 | 2021-08-27 | 阿里云计算有限公司 | 一种云计算节点、文件处理方法及装置 |
CN113836236A (zh) * | 2021-09-29 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 交易执行方法、区块链节点及其计算设备和主机 |
CN114338385A (zh) * | 2021-12-31 | 2022-04-12 | 上海商汤智能科技有限公司 | 网络配置方法及系统、电子设备和存储介质 |
WO2023035510A1 (zh) * | 2021-09-09 | 2023-03-16 | 三六零科技集团有限公司 | 虚拟机安全加固方法、装置及存储介质 |
CN116881049A (zh) * | 2023-07-21 | 2023-10-13 | 无锡隆云数字技术有限公司 | 一种云构架下基于终端和云主机的分布式数据备份方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143215A (zh) * | 2011-01-20 | 2011-08-03 | 中国人民解放军理工大学 | 一种基于网络的pb级云存储系统及其处理方法 |
CN103942063A (zh) * | 2013-11-08 | 2014-07-23 | 国家电网公司 | 一种针对Java Web应用的集中配置和远程部署方法 |
US20160048400A1 (en) * | 2014-08-12 | 2016-02-18 | Vmware, Inc. | Deployment of web client plugins in a virtualized computing environment |
-
2021
- 2021-03-26 CN CN202110328619.5A patent/CN113032099B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102143215A (zh) * | 2011-01-20 | 2011-08-03 | 中国人民解放军理工大学 | 一种基于网络的pb级云存储系统及其处理方法 |
CN103942063A (zh) * | 2013-11-08 | 2014-07-23 | 国家电网公司 | 一种针对Java Web应用的集中配置和远程部署方法 |
US20160048400A1 (en) * | 2014-08-12 | 2016-02-18 | Vmware, Inc. | Deployment of web client plugins in a virtualized computing environment |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113312182A (zh) * | 2021-07-27 | 2021-08-27 | 阿里云计算有限公司 | 一种云计算节点、文件处理方法及装置 |
WO2023035510A1 (zh) * | 2021-09-09 | 2023-03-16 | 三六零科技集团有限公司 | 虚拟机安全加固方法、装置及存储介质 |
CN113836236A (zh) * | 2021-09-29 | 2021-12-24 | 支付宝(杭州)信息技术有限公司 | 交易执行方法、区块链节点及其计算设备和主机 |
CN114338385A (zh) * | 2021-12-31 | 2022-04-12 | 上海商汤智能科技有限公司 | 网络配置方法及系统、电子设备和存储介质 |
CN114338385B (zh) * | 2021-12-31 | 2024-05-17 | 上海商汤智能科技有限公司 | 网络配置方法及系统、电子设备和存储介质 |
CN116881049A (zh) * | 2023-07-21 | 2023-10-13 | 无锡隆云数字技术有限公司 | 一种云构架下基于终端和云主机的分布式数据备份方法 |
CN116881049B (zh) * | 2023-07-21 | 2024-01-30 | 无锡隆云数字技术有限公司 | 一种云构架下基于终端和云主机的分布式数据备份方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113032099B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113032099B (zh) | 云计算节点、文件管理方法及装置 | |
CN111309732B (zh) | 数据处理方法、装置、介质和计算设备 | |
US8775755B2 (en) | Peer-to-peer transcendent memory | |
CN111787036B (zh) | 一种前端私有云部署的解决方法、装置、存储介质及设备 | |
WO2017095820A1 (en) | Methods and devices for acquiring data using virtual machine and host machine | |
CN113806300B (zh) | 数据存储方法、系统、装置、设备及存储介质 | |
CN102255866A (zh) | 一种数据下载方法及装置 | |
CN111694639B (zh) | 进程容器地址的更新方法、装置和电子设备 | |
CN111400350B (zh) | 配置数据读取方法、系统、电子设备和存储介质 | |
KR20210040864A (ko) | 파일 디렉터리 순회 방법, 장치, 기기, 매체 및 컴퓨터 프로그램 | |
CN110781159B (zh) | Ceph目录文件信息读取方法、装置、服务器及存储介质 | |
CN111767169A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN117193936B (zh) | 超融合架构下的虚拟机管理方法、装置及设备 | |
US8621260B1 (en) | Site-level sub-cluster dependencies | |
CN107329798B (zh) | 数据复制的方法、装置和虚拟化系统 | |
JP6418419B2 (ja) | ハードディスクがアプリケーションコードを実行するための方法および装置 | |
CN117914675A (zh) | 一种分布式缓存系统的构建的方法及装置 | |
CN115774701B (zh) | 数据共享方法、装置、电子设备及存储介质 | |
US9256648B2 (en) | Data handling in a cloud computing environment | |
CN115586872A (zh) | 一种容器镜像管理方法、装置、设备及存储介质 | |
CN114817160A (zh) | 文件解压方法、装置、电子设备及计算机可读存储介质 | |
CN114661420A (zh) | 基于Kubernetes容器平台的应用保护方法、装置及系统 | |
CN114637969A (zh) | 目标对象的鉴权方法及装置 | |
CN114490540A (zh) | 数据存储方法、介质、装置和计算设备 | |
CN115729693A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240302 Address after: # 03-06, Lai Zan Da Building 1, 51 Belarusian Road, Singapore Patentee after: Alibaba Innovation Co. Country or region after: Singapore Address before: Room 01, 45th Floor, AXA Building, 8 Shanton Road Patentee before: Alibaba Singapore Holdings Ltd. Country or region before: Singapore |