一种镜像文件的传输方法及装置与流程

文档序号:16149710发布日期:2018-12-05 17:19阅读:358来源:国知局

本发明涉及云计算领域,尤其涉及一种镜像文件的传输方法及装置。

背景技术

云计算迅速发展,现在企业都在搭建自己的私有云服务,一般情况下,私有云服务都是通过虚拟化平台创建虚拟机集群实现,比如华为虚拟化、vmware虚拟化等。现在虚拟化平台已经集成了openstack平台,而在集成openstack平台过程中,涉及到了镜像文件上传的功能,而openstack提供的镜像文件上传接口不能实现分片上传,因此,如何实现分片上传镜像文件到openstack平台是亟待解决的技术问题。



技术实现要素:

本发明的主要目的在于提供一种镜像文件的传输方法及装置,可以实现分片上传镜像文件到openstack平台。

为了解决上述技术问题,本发明提供了一种镜像文件的传输方法,包括:

虚拟化管理平台从浏览器端接收第一镜像文件的分片;

将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件;

将合并成的所述第一镜像文件传输到openstack中。

进一步地,所述将合并成的所述第一镜像文件传输到openstack中之后,删除本地存储的并已传输到所述openstack中的第一镜像文件。

进一步地,所述第一镜像文件的分片是指,对所述第一镜像文件进行分片操作所获得的数据包;所述第一镜像文件的分片为两个或两个以上。

进一步地,所述将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件,包括:

将所接收的所述第一镜像文件的多个分片按照每个分片的索引存储于本地;

当所述第一镜像文件的多个分片均存储于本地后,合并为第一镜像文件。

进一步地,所述将合并成的所述第一镜像文件传输到openstack中,包括:

调用所述openstack镜像文件的传输接口;

通过所述传输接口将合并成的所述第一镜像文件传输到openstack中。

为了解决上述问题,本发明还提供了一种镜像文件的传输装置,包括:存储器和处理器;

该存储器,用于保存用于管理镜像文件的传输的程序;

该处理器,用于读取执行该用于管理镜像文件的传输的程序,并执行如下操作:

虚拟化管理平台从浏览器端接收第一镜像文件的分片;

将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件;

将合并成的所述第一镜像文件传输到openstack中。

进一步地,所述处理器读取执行所述用于管理镜像文件的传输的程序,还执行如下操作:

所述将合并成的所述第一镜像文件传输到openstack中之后,删除本地存储的并已传输到所述openstack中的第一镜像文件。

进一步地,所述第一镜像文件的分片是指,对所述第一镜像文件进行分片操作所获得的数据包;所述第一镜像文件的分片为两个或两个以上。

进一步地,所述将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件,包括:

将所接收的所述第一镜像文件的多个分片按照每个分片的索引存储于本地;

当所述第一镜像文件的多个分片均存储于本地后,合并为第一镜像文件。

进一步地,将合并成的所述第一镜像文件传输到openstack中,包括:

调用所述openstack镜像文件的传输接口;

通过所述传输接口将合并成的所述第一镜像文件传输到openstack中。

本发明提出了一种镜像文件的传输方法,包括:虚拟化管理平台从浏览器端接收第一镜像文件的分片;将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件;将合并成的所述第一镜像文件传输到openstack中。通过本发明的方案,解决了无法实现分片上传镜像文件到openstack平台等问题。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例的镜像文件的传输方法的流程图;

图2为本发明实施例的镜像文件的传输装置的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是本发明实施例的镜像文件的传输方法的流程图,根据该流程图,本实施例的镜像文件的传输方法,包括:

步骤100:虚拟化管理平台从浏览器端接收第一镜像文件的分片。

本实施例中,第一镜像文件可以是任一个浏览器端待发送到openstack的镜像文件。

在本实施例中,用户的第一镜像文件从浏览器端上传到虚拟化管理平台中,可选地,可采用分片上传的方式从浏览器端传输到虚拟化管理平台。

在本实施例的一些可选的实现方式中,所述第一镜像文件的分片是指,对所述第一镜像文件进行分片操作所获得的数据包;所述第一镜像文件的分片为两个或两个以上。

一个示例中,步骤100实现过程可以为:浏览器端对所述第一镜像文件执行分片操作。

在其它实现方式中,分片不限于采用数据包的封装形式;当第一镜像文件较小时,也不排除只有一个分片的情况。

可选地,对第一镜像文件按照预设值的固定大小切割(即进行分片操作)获得多个数据包,例如:按照4mb进行切割,如果第一镜像文件大小为398mb,按照4mb进行切割,该第一镜像文件可以切割为100个数据包;除了最后一个分片只包含2mb的数据以外,其它分片中均包含4mb数据。

可选地,根据第一镜像文件的大小,根据存储空间的大小或者是其他因素按需进行切割,设置每个分片的大小值。

在切割后,还可以为每个数据包增加数据包头,以携带分片的相关信息;比如,第一镜像文件的每个分片的数据包头中可以但不限于包括分片的大小和分片的索引值。

步骤101:将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件。

在本实施例的一些可选的实现方式中,将所接收的第一镜像文件的多个分片按照每个分片的索引存储于本地;当所述第一镜像文件的多个分片均存储于本地后,合并为第一镜像文件。

其它实现方式中,也可以采用切割以外的方式获得分片,比如将第一镜像文件中,奇数位的数据作为一个分片,偶数位的数据作为一个分片,这样在合并时,需要将两个分片中的数据依次交叉组合,合并得到第一镜像文件。除了以上列举的分片、合并方式以外,只要在分片时和合并时采用相应的规则,就可以通过第一镜像文件获得分片,并将分片合并成第一镜像文件。

一种示例中,步骤101的实现过程可以为:

第一步,确定浏览器端上传的第一镜像文件的分片的总数量大小,例如:接收的第一镜像文件的分片有100个;根据每个分片的大小(如4mb),计算该第一镜像文件的所有分片中的数据累加在一起的总数量大小即400mb。

第二步,根据计算获得的数据量的大小以及本地可用的存储空间的大小,确定本地待存储的第一镜像文件的分片位置。

第三步,当确定本地待存储的位置后,将该第一镜像文件的多个分片按照每个分片的索引的顺序存储于本地中。

第四步,当将第一镜像文件的多个分片均存储于本地后,合并为第一镜像文件。

步骤102:将合并成的所述第一镜像文件传输到openstack中。

在本实施例中,虚拟化管理平台将合并成的第一镜像文件传输到openstack中。

在本实施例的一些可选的实现方式中,调用所述openstack镜像文件的传输接口;通过所述传输接口将合并成的所述第一镜像文件传输到openstack中。其中,所述openstack镜像文件的传输接口不支持分片上传,因此,虚拟化管理平台在将第一镜像文件的分片均存储在本地后,将存储的多个分片合并为第一镜像文件,第一镜像文件可以通过openstack镜像文件的传输接口传输到openstack中。

在本实施例的一些可选的实现方式中,所述将合并成的所述第一镜像文件传输到openstack中之后,删除本地存储的并已传输到所述openstack中的第一镜像文件,也就是说,当将合并成的第一镜像文件传输到openstack中之后,对在本地存储的该第一镜像文件进行删除,释放了本地存储空间。

需要说明的是,上述内容仅是本发明的示例性实施例,与上述实施例相同或相似的实施例,以及上述实施例的变体都在本发明的保护范围之内。

另外,本申请提供了一种镜像文件的传输装置的一个实施例,该装置实施例与图1所示的方法实施例对应,该装置具体可以应用于各种电子设备中。

如图2所示,本实施例的镜像文件的传输装置,包括:存储器和处理器;

该存储器,用于保存用于管理镜像文件的传输的程序;

该处理器,用于读取执行该用于管理镜像文件的传输的程序,并执行如下操作:

虚拟化管理平台从浏览器端接收第一镜像文件的分片;

将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件;

将合并成的所述第一镜像文件传输到openstack中。

可选地,所述处理器读取执行所述用于管理镜像文件的传输的程序,还执行如下操作:

所述将合并成的所述第一镜像文件传输到openstack中之后,删除本地存储的并已传输到所述openstack中的第一镜像文件。

可选地,所述第一镜像文件的分片是指,对所述第一镜像文件进行分片操作所获得的数据包;所述第一镜像文件的分片为两个或两个以上。

可选地,将所述第一镜像文件的分片存储于本地,并将第一镜像文件的分片合并成第一镜像文件,包括:

将所接收的所述第一镜像文件的多个分片按照每个分片的索引存储于本地;

当所述第一镜像文件的多个分片均存储于本地后,合并为第一镜像文件。

可选地,所述将合并成的所述第一镜像文件传输到openstack中,包括:

调用所述openstack镜像文件的传输接口;

通过所述传输接口将合并成的所述第一镜像文件传输到openstack中。

装置实施例的其它实现细节可参见上文方法实施例。

本实施例的一个具体示例的实施过程如下:

步骤1.浏览器端对第一镜像文件执行分片操作,并将第一镜像文件的分片上传给虚拟化管理平台;

步骤2.虚拟化管理平台接收第一镜像文件的分片;

步骤3.虚拟化管理平台将接收的第一镜像文件的多个分片按照每个分片的索引存储于本地;并将第一镜像文件的多个分片合并成第一镜像文件。

步骤4.通过调用openstack镜像文件的传输接口,通过所述传输接口将合并成的第一镜像文件传输到openstack中。

步骤5.删除本地存储的并已传输到所述openstack中的第一镜像文件。

基于本实施例的一个具体示例,实现了一种镜像文件的传输方法,解决了无法实现分片上传镜像文件到openstack平台的问题。当第一镜像文件传输到openstack平台后,删除本地存储的第一镜像文件,释放了本地的存储空间。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。任何与本发明设计思路相同或相似的方案,以及与本发明实施例相同或相似的方案和本发明实施例的变体都在本发明的保护范围之内。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1