CN114238236A - 共享文件的访问方法、电子设备及计算机可读存储介质 - Google Patents
共享文件的访问方法、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114238236A CN114238236A CN202111564826.7A CN202111564826A CN114238236A CN 114238236 A CN114238236 A CN 114238236A CN 202111564826 A CN202111564826 A CN 202111564826A CN 114238236 A CN114238236 A CN 114238236A
- Authority
- CN
- China
- Prior art keywords
- file
- virtual
- file system
- operation request
- data
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种共享文件的访问方法、电子设备及计算机可读存储介质,属于计算机技术领域。该方法应用于宿主机,宿主机中挂载有指定虚拟机的虚拟文件系统,宿主机与分布式存储系统的文件服务接口通信,文件服务接口用于读取存储于分布式存储系统中的数据,该数据为挂载虚拟文件系统时指定虚拟机的虚拟磁盘中存储的数据。方法包括宿主机接收针对虚拟文件系统的读操作请求,若虚拟文件系统挂载后没有文件修改时,宿主机通过文件服务接口从分布式存储系统读取与读操作请求相关的数据。该方法可以绕过虚拟机直接读取分布式存储数据,降低了虚拟机被攻击的风险,同时,不会消耗虚拟机的内存资源,提高了数据读取的性能。
Description
技术领域
本申请属于计算机技术领域,具体涉及一种共享文件的访问方法、电子设备及计算机可读存储介质。
背景技术
硬件辅助虚拟化技术是指在一台物理宿主机上开一个进程模拟计算机硬件,从而虚拟化出多个虚拟机(Virtual Machine,VM)。虚拟机(VM)是一种创建于物理硬件系统,充当虚拟计算机系统的虚拟环境。各个虚拟机之间相互隔离,拥有各自的操作系统(Operating System,OS),各自独立运行业务。虚拟机的隔离性带来了独立和安全的优点,但也使虚拟机之间或虚拟机与宿主机之间的数据共享带来了难度和额外的资源开销。
目前虚拟机共享文件,基本都是在虚拟机里面启动共享文件系统程序,其他虚拟机或物理机通过网络来挂载该共享文件系统,访问该共享文件系统的所有访问请求均会通过网络转发给虚拟机,再由虚拟机进行最终的文件操作。例如,宿主机在接收到用户针对虚拟文件系统的文件读取请求时,会将该文件读取请求通过网络发给虚拟机,虚拟机在接收到该文件读取请求后,读取相应的数据,之后通过网络返回给宿主机。
发明内容
鉴于此,本申请的目的在于提供一种共享文件的访问方法、电子设备及计算机可读存储介质,以缩短读路径,降低CPU(Central Process Unit,中央处理器)消耗,提高读性能。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供了一种共享文件的访问方法,应用于宿主机,所述宿主机中挂载有指定虚拟机的虚拟文件系统,所述指定虚拟机的文件被共享到所述虚拟文件系统中,所述宿主机还用于与分布式存储系统的文件服务接口通信,所述文件服务接口用于读取存储于所述分布式存储系统中的数据,该数据为挂载所述虚拟文件系统时所述指定虚拟机的数据,所述方法包括:接收针对所述虚拟文件系统的文件操作请求;若所述文件操作请求为读操作请求,判断所述虚拟文件系统挂载后是否有文件修改;若所述虚拟文件系统挂载后没有文件修改时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。本申请实施例中,通过在分布式存储系统中增设用于读取存储于分布式存储系统中的数据(该数据为挂载虚拟文件系统时指定虚拟机的数据)的文件服务接口,使得在读取虚拟机的文件数据时,若虚拟文件系统挂载后没有文件修改,则可以绕过虚拟机直接读取分布式存储数据,降低了虚拟机被攻击的风险,同时,由于读数据时不需要经过虚拟机,不会消耗虚拟机的内存资源,大大提高了数据读取的性能。
结合第一方面实施例的一种可能的实施方式,所述方法还包括:若在所述虚拟文件系统挂载后有文件修改时,判断修改涉及的文件是否与所述读操作请求读取的数据无关;若修改涉及的文件与所述读操作请求读取的数据无关时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。本申请实施例中,若虚拟文件系统挂载后有文件修改,还可以进一步判断修改涉及的文件是否与读操作请求读取的数据无关,容修改涉及的文件与读操作请求读取的数据无关时,则通过文件服务接口从分布式存储系统读取与读操作请求相关的数据,以提高数据读取的性能。
结合第一方面实施例的一种可能的实施方式,所述方法还包括:若修改涉及的文件与所述读操作请求读取的数据相关时,将所述读操作请求通过网络发送给所述指定虚拟机,以使所述指定虚拟机从所述分布式存储系统中读取与所述读操作请求相关的数据。本申请实施例中,只有在涉及的文件与读操作请求读取的数据相关时,才通过指定虚拟机从分布式存储系统中读取与读操作请求相关的数据,降低了与虚拟机交互的频率。
结合第一方面实施例的一种可能的实施方式,所述方法还包括:若在所述虚拟文件系统挂载后有文件修改时,将所述读操作请求通过网络发送给所述指定虚拟机,以使所述指定虚拟机从所述分布式存储系统中读取与所述读操作请求相关的数据。本申请实施例中,只有在虚拟文件系统挂载后有文件修改时,才通过指定虚拟机从分布式存储系统中读取与读操作请求相关的数据,降低了与虚拟机交互的频率。
结合第一方面实施例的一种可能的实施方式,在挂载所述虚拟文件系统时,在所述分布式存储系统上给所述指定虚拟机的虚拟磁盘创建数据快照,并创建用于读取该数据快照的所述文件服务接口。本申请实施例中,通过在挂载虚拟文件系统时,在分布式存储系统上给指定虚拟机的虚拟磁盘创建数据快照,并创建用于读取该数据快照的文件服务接口,使得后续可以基于该文件服务接口快速实现虚拟机的文件的读访问。
第二方面,本申请实施例还提供了一种电子设备,所述电子设备中部署有虚拟机、虚拟文件系统客户端,所述虚拟机中部署有虚拟文件系统服务端,所述虚拟文件系统客户端与所述虚拟文件系统服务端通过网络通信,所述虚拟文件系统客户端还与分布式存储系统的文件服务接口通信,所述文件服务接口用于读取存储于所述分布式存储系统中的数据,该数据为在所述虚拟文件系统客户端挂载所述虚拟机的虚拟文件系统时该虚拟机的数据;所述虚拟文件系统客户端,用于接收针对所述虚拟文件系统的文件操作请求;若所述文件操作请求为读操作请求,所述虚拟文件系统客户端,还用于判断所述虚拟文件系统挂载后是否有文件修改;若所述虚拟文件系统挂载后没有文件修改时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
结合第二方面实施例的一种可能的实施方式,若在所述虚拟文件系统挂载后有文件修改时,所述虚拟文件系统客户端,还用于判断修改涉及的文件是否与所述读操作请求读取的数据无关,若修改涉及的文件与所述读操作请求读取的数据无关时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
结合第二方面实施例的一种可能的实施方式,若在所述虚拟文件系统挂载后有文件修改时,所述虚拟文件系统客户端,还用于将所述读操作请求通过网络发送给所述虚拟文件系统服务端,以使所述虚拟文件系统服务端从所述分布式存储系统读取与所述读操作请求相关的数据。
第三方面,本申请实施例还提供了一种电子设备,包括:存储器和处理器,所述处理器与所述存储器连接;所述存储器,用于存储程序;所述处理器,用于调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时,执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出了本申请实施例提供的一种共享文件的访问方法的原理示意图。
图2示出了本申请实施例提供的一种共享文件的访问方法的流程示意图。
图3示出了本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
为了改善现有文件共享方法存在的缺陷,本申请实施例提供了一种共享文件的访问方法,为了能安全的访问虚拟机的文件系统,本申请实施例中,通过在分布式存储系统中增设用于读取存储于分布式存储系统中的数据(该数据为挂载虚拟文件系统时指定虚拟机的数据)的文件服务接口,使得在读取虚拟机的文件数据时,宿主机可以不通过访问虚拟机,而是直接从分布式存储系统读取分布式存储数据,降低了虚拟机被攻击的风险,同时,由于读数据时不需要经过虚拟机,不会消耗虚拟机的内存资源,大大提高了数据读取的性能。
为了能高效的访问虚拟机的文件系统,本申请实施例中,宿主机还用于与分布式存储系统的文件服务接口通信,文件服务接口用于读取存储于分布式存储系统中的指定时刻的虚拟机数据,该数据为挂载虚拟文件系统时指定虚拟机的数据,这样使得在满足特定条件时,可以不用通过虚拟机从分布式存储系统中读取数据,而是直接从分布式存储系统中获取数据,缩短了读路径,降低CPU(Central Process Unit,中央处理器)消耗,提高读性能。
为了便于理解,下面结合图1对本申请实施例提供的共享文件的访问方法的原理进行说明。为了能安全高效的访问虚拟机的文件系统,本申请实施例提供了一种电子设备,该电子设备中部署有虚拟机(可以部署多个)、虚拟文件系统客户端,其中,虚拟机中进一步部署有虚拟文件系统服务端。虚拟文件系统客户端与虚拟文件系统服务端通过网络通信,虚拟机与分布式存储系统通信,如虚拟机中的虚拟文件系统服务端通过分布式存储系统的接入点1向分布式存储系统写入数据,或读取之前写入的数据。虚拟文件系统客户端还与分布式存储系统的文件服务接口(如接入点2)通信,如虚拟文件系统客户端通过接入点2从分布式存储系统读取指定时刻的数据。
为了能进一步提高读效率,本申请中还通过在分布式存储系统中新增一文件服务接口(接入点2),用于读取存储于分布式存储系统中的数据,该数据为指定时刻的虚拟机的数据,如为在虚拟文件系统客户端挂载指定虚拟机的虚拟文件系统时指定虚拟机的数据。通过该文件服务接口便可读取指定时刻的虚拟机的数据。其中,在挂载虚拟文件系统时,在分布式存储系统上给指定虚拟机的虚拟磁盘创建数据快照(创建数据快照是为了保证接入点2读取的是某个时刻虚拟机完整的数据,不会受到虚拟写请求的影响),并创建用于读取该快照的文件服务接口,使得后续可以基于该文件服务接口去读取数据快照。
其中,虚拟文件系统客户端用于挂载指定虚拟机的虚拟文件系统,指定虚拟机的文件被共享到该虚拟文件系统中。需要说明的是,在电子设备中可以部署多个虚拟机,例如部署有虚拟机1、虚拟机2、虚拟机3,可以根据需要在虚拟文件系统客户端中挂载指定虚拟机(如虚拟机2)的虚拟文件系统。通过在宿主机上挂载指定虚拟机的虚拟文件系统,使得可以直接在宿主机上访问指定虚拟机上的文件系统,所有针对该虚拟文件系统的文件操作请求,如创建文件、打开文件、删除文件、读/写文件等操作请求,均会通过该网络转发到虚拟机,由虚拟机来完成最终的文件操作。
虚拟文件系统客户端,用于接收针对虚拟文件系统的文件操作请求,若文件操作请求为读操作文件请求,则虚拟文件系统客户端判断虚拟文件系统挂载后是否有文件修改,若虚拟文件系统挂载后没有文件修改时,则虚拟文件系统客户端通过文件服务接口从分布式存储系统读取与读操作请求相关的数据。若文件操作请求为除读操作文件请求外的其他操作请求,则虚拟文件系统客户端直接通过网络将其发送给虚拟机,由虚拟机来完成最终的文件操作。
需要说明的是,虚拟机在对文件进行修改后,可以通知虚拟文件系统客户端文件有修改,或者,虚拟文件系统客户端对发送给虚拟机的会引起虚拟机文件修改的操作请求进行记录,这样后续虚拟文件系统客户端便可判断虚拟文件系统挂载后是否有文件修改。
若虚拟文件系统挂载后有文件修改时,一种实施方式下,虚拟文件系统客户端,还用于读操作请求通过网络发送给虚拟机中的虚拟文件系统服务端,以使虚拟机中的虚拟文件系统服务端从分布式存储系统读取与读操作请求相关的数据。在该种实施方式下,只要挂载虚拟文件系统后,若虚拟机中的文件有修改(如新增、内容修改等),则通过虚拟机去从分布式存储系统读取与读操作请求相关的数据。需要说明的是,正常的虚拟磁盘读写,虚拟机在接收到读写请求后,会把读写请求通过接入点1发送给分布式存储系统,以完成相应数据的读写操作。
若虚拟文件系统挂载后有文件修改时,又一种实施方式下,虚拟文件系统客户端,还用于判断修改涉及的文件是否与读操作请求读取的数据无关(或有关),若修改涉及的文件与读操作请求读取的数据无关时,则仍然可以通过文件服务接口从分布式存储系统读取与读操作请求相关的数据,只有在修改涉及的文件与读操作请求读取的数据相关时,虚拟文件系统服务端才将读操作请求通过网络发送给虚拟机中的虚拟文件系统服务端,以使虚拟机中的虚拟文件系统服务端从分布式存储系统中读取与读操作请求相关的数据。在该种实施方式下,在虚拟文件系统挂载后,若是对虚拟机中的文件进行修改(如新增、内容修改等),则虚拟机还需要将修改的文件内容告知虚拟文件系统客户端,则虚拟文件系统客户端还需要将虚拟机修改的文件内容进行保存,以便于后续判断修改涉及的文件是否与读操作请求读取的数据无关。
为了更好的理解,为什么在新增文件服务接口后可以提高共享文件的读效率,下面结合图1进行说明。在没有新增文件服务接口时,其共享文件的读路径为:虚拟文件系统客户端-->虚拟文件系统服务端-->虚拟磁盘-->分布式存储系统-->虚拟磁盘-->虚拟文件系统服务端-虚拟文件系统客户端,在新增文件服务接口后,共享文件的读路径为:虚拟文件系统客户端-->分布式存储系统-->虚拟文件系统客户端,直接绕过了虚拟机(通过虚拟机读取数据时,需要虚拟机内核和驱动程序来读取和传输数据),相比于通过虚拟机读取虚拟磁盘的方法,减少了宿主机和虚拟机之间网络的通信,减少了虚拟机驱动程序的数据转发,也避免了虚拟磁盘导致的性能下降。整个数据读过程不需要虚拟机参与,所以即使进行大量的数据传输也不会消耗一点虚拟机CPU和内存资源,并且缩短了IO路径,读性能也大大提升。
本发明提供的共享文件的访问方法,可以降低与虚拟机的交互频率,从而降低了虚拟机被攻击的风险,同时,可以以较低的开销和较快的性能进行虚拟机共享文件系统的读操作。例如,在需要对虚拟机进行病毒扫描等操作,需要对虚拟机进行全盘扫描,这时需要对文件系统上面的全部的文件进行读取,并且只有发现病毒的时候才需要删除病毒文件,此时才会触发文件系统的写操作,如果所有的数据读取都需要虚拟机驱动程序参与和通过网络通信,那么会消耗虚拟机大量的CPU资源,导致数据读取性能差和虚拟机卡顿。在这种读多写少的应用场景,采用本申请的共享文件的访问方法,可以绕过虚拟机直接读取分布式存储数据,直接绕过了虚拟机,这样不会消耗虚拟机的CPU和内存资源,所以无需对虚拟文件系统进行速度限制,大大提高了病毒扫描的性能。
在介绍完本申请的实现原理后,下面将结合图2,对本申请实施例提供的应用于宿主机的共享文件的访问方法的流程进行说明。其中,该宿主机挂载有指定虚拟机的虚拟文件系统,指定虚拟机的文件被共享到该虚拟文件系统中。
S1:接收针对所述虚拟文件系统的文件操作请求。
宿主机中部署有指定虚拟机、虚拟文件系统客户端,虚拟机中部署有虚拟文件系统服务端。虚拟文件系统挂载在虚拟文件系统客户端中,宿主机中的虚拟文件系统客户端接收用户针对虚拟文件系统的文件操作请求。
S2:若所述文件操作请求为读操作请求,判断所述虚拟文件系统挂载后是否有文件修改。
若文件操作请求为读操作请求,则宿主机中的虚拟文件系统客户端断虚拟文件系统挂载后是否有文件修改,若虚拟文件系统挂载后没有文件修改时,执行S3,若虚拟文件系统挂载后有文件修改时,一种实施方式下,执行S4,又一种实施方式下,宿主机中的虚拟文件系统客户端将读操作请求通过网络发送给指定虚拟机中的虚拟文件系统服务端,以使指定虚拟机中的虚拟文件系统服务端,从分布式存储系统中读取与读操作请求相关的数据。
若文件操作请求为除读操作请求外的其他操作请求,则虚拟文件系统客户端会通过网络将其发送给虚拟机。
S3:通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
若虚拟文件系统挂载后没有文件修改时,宿主机中的虚拟文件系统客户端通过文件服务接口(如接入点2)从分布式存储系统读取与读操作请求相关的数据。其中,在挂载虚拟文件系统时,会在分布式存储系统上给指定虚拟机的虚拟磁盘创建数据快照(创建数据快照是为了保证接入点2读取的是某个时刻虚拟机完整的数据,不会受到虚拟写请求的影响),并创建用于读取该快照的文件服务接口,使得后续可以基于该文件服务接口去读取数据快照。
S4:判断修改涉及的文件是否与所述读操作请求读取的数据无关。
一种实施方式下,若虚拟文件系统挂载后有文件修改时,宿主机中的虚拟文件系统客户端进一步判断修改涉及的文件是否与读操作请求读取的数据无关,若修改涉及的文件与读操作请求读取的数据相关时,执行S5。若修改涉及的文件与读操作请求读取的数据无关时,执行S3。
S5:将所述读操作请求通过网络发送给所述指定虚拟机。
若修改涉及的文件与读操作请求读取的数据相关时,宿主机中的虚拟文件系统客户端将读操作请求通过网络发送给指定虚拟机中的虚拟文件系统服务端,以使指定虚拟机中的虚拟文件系统服务端,从分布式存储系统中读取与读操作请求相关的数据。
如图3所示,图3示出了本申请实施例提供的一种电子设备200的结构框图。所述电子设备200包括:收发器210、存储器220、通讯总线230以及处理器240。
其中,该电子设备部署虚拟机(可以部署多个)、虚拟文件系统客户端,虚拟机中部署有虚拟文件系统服务端。虚拟文件系统客户端与虚拟文件系统服务端通过网络通信,虚拟机中的虚拟文件系统服务端还与分布式存储系统通信,如虚拟机中的虚拟文件系统服务端通过分布式存储系统的接入点1向分布式存储系统写入数据,或读取之前写入的数据。虚拟文件系统客户端还与分布式存储系统的文件服务接口(如接入点2)通信,如虚拟文件系统客户端通过接入点2从分布式存储系统读取指定时刻的数据。虚拟机、虚拟文件系统客户端可以部署在处理器240中。
所述收发器210、所述存储器220、处理器240各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线230或信号线实现电性连接。其中,收发器210用于收发数据。存储器220用于存储计算机程序,如存储有执行上述方法的软件功能模块,包括至少一个可以软件或固件(Firmware)的形式存储于所述存储器220中或固化在所述电子设备200的操作系统(Operating System,OS)中的软件功能模块。所述处理器240,用于执行存储器220中存储的可执行模块,例如环形网络配置装置100包括的软件功能模块或计算机程序。例如,处理器240,用于接收针对所述虚拟文件系统的文件操作请求;若所述文件操作请求为读操作请求,判断所述虚拟文件系统挂载后是否有文件修改;若所述虚拟文件系统挂载后没有文件修改时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
其中,存储器220可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器240可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器240也可以是任何常规的处理器等。
其中,上述的电子设备200,包括但不限于电脑、服务器等。
本申请实施例还提供了一种非易失性的计算机可读取存储介质(以下简称存储介质),该存储介质上存储有计算机程序,该计算机程序被计算机如上述的电子设备200运行时,执行上述所示的共享文件的访问方法。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露方法,也可以通过其它的方式实现。例如,附图中的流程图和框图显示了根据本申请的多个实施例的方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者电子设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的计算机可读存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种共享文件的访问方法,其特征在于,应用于宿主机,所述宿主机中挂载有指定虚拟机的虚拟文件系统,所述指定虚拟机的文件被共享到所述虚拟文件系统中,所述宿主机还用于与分布式存储系统的文件服务接口通信,所述文件服务接口用于读取存储于所述分布式存储系统中的数据,该数据为挂载所述虚拟文件系统时所述指定虚拟机的数据,所述方法包括:
接收针对所述虚拟文件系统的文件操作请求;
若所述文件操作请求为读操作请求,判断所述虚拟文件系统挂载后是否有文件修改;
若所述虚拟文件系统挂载后没有文件修改时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在所述虚拟文件系统挂载后有文件修改时,判断修改涉及的文件是否与所述读操作请求读取的数据无关;
若修改涉及的文件与所述读操作请求读取的数据无关时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若修改涉及的文件与所述读操作请求读取的数据相关时,将所述读操作请求通过网络发送给所述指定虚拟机,以使所述指定虚拟机从所述分布式存储系统中读取与所述读操作请求相关的数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若在所述虚拟文件系统挂载后有文件修改时,将所述读操作请求通过网络发送给所述指定虚拟机,以使所述指定虚拟机从所述分布式存储系统中读取与所述读操作请求相关的数据。
5.根据权利要求1所述的方法,其特征在于,在挂载所述虚拟文件系统时,在所述分布式存储系统上给所述指定虚拟机的虚拟磁盘创建数据快照,并创建用于读取该数据快照的所述文件服务接口。
6.一种电子设备,其特征在于,所述电子设备中部署有虚拟机、虚拟文件系统客户端,所述虚拟机中部署有虚拟文件系统服务端,所述虚拟文件系统客户端与所述虚拟文件系统服务端通过网络通信,所述虚拟文件系统客户端还与分布式存储系统的文件服务接口通信,所述文件服务接口用于读取存储于所述分布式存储系统中的数据,该数据为在所述虚拟文件系统客户端挂载所述虚拟机的虚拟文件系统时该虚拟机的数据;
所述虚拟文件系统客户端,用于接收针对所述虚拟文件系统的文件操作请求;
若所述文件操作请求为读操作请求,所述虚拟文件系统客户端,还用于判断所述虚拟文件系统挂载后是否有文件修改;若所述虚拟文件系统挂载后没有文件修改时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
7.根据权利要求6所述的电子设备,其特征在于,若在所述虚拟文件系统挂载后有文件修改时,所述虚拟文件系统客户端,还用于判断修改涉及的文件是否与所述读操作请求读取的数据无关,若修改涉及的文件与所述读操作请求读取的数据无关时,通过所述文件服务接口从所述分布式存储系统读取与所述读操作请求相关的数据。
8.根据权利要求6所述的电子设备,其特征在于,若在所述虚拟文件系统挂载后有文件修改时,所述虚拟文件系统客户端,还用于将所述读操作请求通过网络发送给所述虚拟文件系统服务端,以使所述虚拟文件系统服务端从所述分布式存储系统读取与所述读操作请求相关的数据。
9.一种电子设备,其特征在于,包括:
存储器和处理器,所述处理器与所述存储器连接;
所述存储器,用于存储程序;
所述处理器,用于调用存储于所述存储器中的程序,以执行如权利要求1-5中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器运行时,执行如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111564826.7A CN114238236A (zh) | 2021-12-20 | 2021-12-20 | 共享文件的访问方法、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111564826.7A CN114238236A (zh) | 2021-12-20 | 2021-12-20 | 共享文件的访问方法、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114238236A true CN114238236A (zh) | 2022-03-25 |
Family
ID=80759643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111564826.7A Pending CN114238236A (zh) | 2021-12-20 | 2021-12-20 | 共享文件的访问方法、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114238236A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115774701A (zh) * | 2022-12-01 | 2023-03-10 | 北京首都在线科技股份有限公司 | 数据共享方法、装置、电子设备及存储介质 |
CN116070201A (zh) * | 2022-12-22 | 2023-05-05 | 北京握奇数据股份有限公司 | 数据管理的方法、系统、电子设备及介质 |
-
2021
- 2021-12-20 CN CN202111564826.7A patent/CN114238236A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115774701A (zh) * | 2022-12-01 | 2023-03-10 | 北京首都在线科技股份有限公司 | 数据共享方法、装置、电子设备及存储介质 |
CN115774701B (zh) * | 2022-12-01 | 2023-11-28 | 北京首都在线科技股份有限公司 | 数据共享方法、装置、电子设备及存储介质 |
CN116070201A (zh) * | 2022-12-22 | 2023-05-05 | 北京握奇数据股份有限公司 | 数据管理的方法、系统、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8448165B1 (en) | System and method for logging operations of virtual machines | |
US8826269B2 (en) | Annotating virtual application processes | |
US9262194B2 (en) | Virtual machine communications | |
CN101650660B (zh) | 从中央存储装置引导计算机系统 | |
US8370613B1 (en) | Method and apparatus for automatically optimizing a startup sequence to improve system boot time | |
JP2017515225A (ja) | 仮想化のためのコヒーレント・アクセラレータ機能分離方法、システムおよびコンピュータ・プログラム | |
CN114238236A (zh) | 共享文件的访问方法、电子设备及计算机可读存储介质 | |
CN110753084B (zh) | 上链数据读取方法、缓存服务器及计算机可读存储介质 | |
JPH04263349A (ja) | コンピュータにbiosをロードする装置及び方法 | |
MX2008014548A (es) | Inicio de hipervisor bajo sistema operativo en funcionamiento. | |
CN111290827A (zh) | 数据处理的方法、装置和服务器 | |
US9417886B2 (en) | System and method for dynamically changing system behavior by modifying boot configuration data and registry entries | |
US9904565B2 (en) | Subsequent operation input reduction systems and methods for virtual machines | |
US8813071B2 (en) | Storage reclamation systems and methods | |
US20190065300A1 (en) | Method of retrieving debugging data in uefi and computer system thereof | |
JP2004258840A (ja) | 仮想化されたi/oデバイスをもつ計算機システム | |
CN116028455A (zh) | 一种数据处理方法、装置、存储介质及电子设备 | |
CN114499945A (zh) | 一种虚拟机的入侵检测方法及装置 | |
US9805038B2 (en) | Efficient conflict resolution among stateless processes | |
US8583852B1 (en) | Adaptive tap for full virtual machine protection | |
CN116450046A (zh) | 云盘实现方法、装置、智能网卡、服务器及存储介质 | |
CN113986858B (zh) | Linux兼容安卓系统的共享文件操作方法和装置 | |
CN114840307A (zh) | 容器的加载方法、装置、设备和存储介质 | |
CN110050272B (zh) | 外部介质的安全挂载 | |
Hes et al. | The Capture-HPC client architecture |
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 |