一种分发方法、设备和存储介质技术

技术编号:30707361 阅读:26 留言:0更新日期:2021-11-10 10:58
本申请提出一种分发方法、设备和存储介质。该方法包括:将待分发镜像文件分发到对应的分发主机;向分发主机发送推送信息,所述推送信息用于触发分发主机将所述待分发镜像文件分发至其它分发主机以及本分区的所有待推送主机。本实施例通过先将待分发镜像文件分发至对应分发主机,再由分发主机分发至其它分发主机以及本分区的所有待推送主机,实现了待分发镜像文件的二级分发,提升了镜像文件的分发速度,以及有效提升了镜像文件的分发效率。以及有效提升了镜像文件的分发效率。以及有效提升了镜像文件的分发效率。

【技术实现步骤摘要】
一种分发方法、设备和存储介质


[0001]本申请涉及通信,具体涉及一种分发方法、设备和存储介质。

技术介绍

[0002]虚拟机、容器或者裸机作为云计算技术中提供计算能力的载体,都需要基于镜像文件来启动和运行。在启动时,需要先下载镜像文件到本地,然后再运行。镜像文件包含操作系统程序以及应用程序,视应用场景不同大小各异。
[0003]虚拟机/裸机的镜像文件需要包含运行环境所有的应用,所以较大,通常在5GB以上,大的甚至达到10GB以上。容器镜像文件以单一应用为主,通常在300MB左右,为了完成某个场景功能,通常需要下载十几个甚至数十个容器镜像文件,一次文件下载大小同虚拟机/裸机也差不多。
[0004]当前主流云计算平台管理网络带宽通常为1Gb,满带宽时下载镜像文件需要时间为分钟级别,随着部署规模的增加,镜像文件下载所耗费时间也在成倍的增长。这种级别的时间消耗在某些时间敏感的应用中是无法忍受的,比如在突发业务高峰需要短时间内部署大量的虚拟化实体以提供足够的计算能力时,一般会要求将镜像文件的下载时间控制在秒级。
[0005]常用的提升镜像文件下载速度的方式存在下述三种:方式一:缓存,即提前下载好,缓存在本地。需要在主机节点本地长期占用一定的存储空间,当镜像变化时,无法提前缓存。方式二:使用点对点(P2P)技术提升下载速度。P2P技术一般应用在开放的Internet上,在相对来说较封闭的云计算平台上应用有一定的局限性,比如P2P技术需要tracker服务器以跟踪文件所在节点,造成了单点性能瓶颈和以及增加了等待时延。方式三:快照,基于某些分布式存储的快照技术直接创建,需要额外的分布式存储,从而占用了设备的存储空间,且快照的写时复制(CopyOnWrite,COW)技术对性能有一定的影响。

技术实现思路

[0006]本申请实施例提供一种分发方法、设备和存储介质,提升了镜像文件的分发速度,以及有效提升了镜像文件的分发效率。
[0007]本申请实施例提供一种分发方法,应用于镜像控制器,包括:
[0008]将待分发镜像文件分发到对应的分发主机;
[0009]向所述分发主机发送推送信息,所述推送信息用于触发分发主机将所述待分发镜像文件分发至其它分发主机以及本分区的所有待推送主机。
[0010]本申请实施例提供一种分发方法,应用于分发主机,包括:
[0011]接收镜像控制器发送的待分发镜像文件以及推送信息;
[0012]按照所述推送信息将所述待分发镜像文件推送至其它分发主机和本分区的所有待推送主机。
[0013]本申请实施例提供一种分发装置,应用于镜像控制器,包括:
[0014]分发器,配置为将待分发镜像文件分发到对应的分发主机;
[0015]发送器,配置为向所述分发主机发送推送信息,所述推送信息用于触发分发主机将所述待分发镜像文件分发至其它分发主机和本分区的所有待推送主机。
[0016]本申请实施例提供一种分发装置,应用于分发主机,包括:
[0017]第一接收器,配置为接收镜像控制器发送待分发镜像文件以及推送信息;
[0018]第一推送器,配置为按照所述推送信息将所述待分发镜像文件推送至其它分发主机和本分区的所有待推送主机。
[0019]本申请实施例提供一种设备,包括:通信模块,存储器,以及一个或多个处理器;
[0020]通信模块,配置为在镜像控制器和分发主机之间进行通信交互;
[0021]所述存储器,配置为存储一个或多个程序;
[0022]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一实施例所述的方法。
[0023]本申请实施例提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一实施例所述的方法。
[0024]本申请实施例通过先将待分发镜像文件分发至对应的分发主机,并向分发主机发送推送信息,以使分发主机自发式地将待分发镜像文件分发至其它分发主机以及本分区的所有待推送主机,缩短了推送的等待时间,提升了待分发镜像文件的分发速度,以及有效提升了待分发镜像文件的分发效率。
附图说明
[0025]图1是本申请实施例提供的一种分发方法的流程图;
[0026]图2是本申请实施例提供的另一种分发方法的流程图;
[0027]图3是本申请实施例提供的一种分发主机采用一致性Hash算法的示意图;
[0028]图4是本申请实施例提供的一种虚拟机或裸机场景下分发过程的流程图;
[0029]图5是本申请实施例提供的一种容器场景下分发过程的流程图;
[0030]图6是本申请实施例提供的一种分发装置的结构框图;
[0031]图7是本申请实施例提供的另一种分发装置的结构框图;
[0032]图8是本申请实施例提供的一种设备的结构示意图。
具体实施方式
[0033]下文中将结合附图对本申请的实施例进行说明。
[0034]图1是本申请实施例提供的一种分发方法的流程图。本实施例应用于镜像控制器。如图1所示,本实施例包括:S110-S120。
[0035]S110、将待分发镜像文件分发到对应的分发主机。
[0036]在实施例中,镜像文件指的是包含操作系统程序以及应用程序的文件。在实施例中,待分发镜像文件指的是待下载的镜像文件。也就是说,需要从镜像仓库中下载的镜像文件。其中,镜像仓库是一种用于提供镜像文件存储和下载的服务器。在一实施例中,镜像仓库和镜像控制器可以为同一个服务器,也可以为不同的服务器,对此并不进行限定,可根据实际应用场景进行调整。
[0037]在实施例中,在对待分发镜像文件进行分发之前,镜像控制器可以接收待分发镜像文件上传,然后采用本实施例中的分发策略,对接收到的待分发镜像文件进行分发。
[0038]在一实施例中,可按照待分发镜像文件的应用场景或者占用存储空间,对待分发镜像文件进行分发。在实施例中,应用场景包括下述之一:虚拟机或裸机场景;容器场景。在实施例中,待分发镜像文件的应用场景与占用存储空间是相对应的,即在虚拟机或裸机场景下的待分发镜像文件,对应的占用存储空间一般在5G以上,并且为单一镜像,即镜像文件数为一个;在容器场景下的待分发镜像文件,对应的占用存储空间一般在300兆(M)左右,并且为多镜像,即镜像文件数为多个。
[0039]在一实施例中,在待分发镜像文件为单一镜像,且镜像大小在5G以上的情况下,适用于虚拟机或裸机场景。为了便于对待分发镜像文件的分发,可在待分发镜像文件的占用存储空间超过预设阈值的情况下,将待分发镜像文件分片,得到多个待分发镜像子文件,并从主机全集列表中选取与待分发镜像子文件数量相等的分发主机,将所有待分发镜像子文件推送至对应的分发主机。
[0040]在一实施例中,在待分发镜像文件为多镜像,且镜像大小在300M左右的情况下,适用于容器场景。在该容器场景下,镜像控制器可从主机全集本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分发方法,其特征在于,应用于镜像控制器,包括:将待分发镜像文件分发到对应的分发主机;向所述分发主机发送推送信息,所述推送信息用于触发分发主机将所述待分发镜像文件分发至其它分发主机和本分区的所有待推送主机。2.根据权利要求1所述的方法,其特征在于,在应用场景为虚拟机或裸机场景的情况下,所述将待分发镜像文件分发到对应的分发主机,包括:对所述待分发镜像文件分片,得到至少两个待分发镜像子文件;从待推送主机列表中选取与所述待分发镜像子文件数量相同的分发主机;将所述待分发镜像子文件分发至对应的分发主机。3.根据权利要求2所述的方法,其特征在于,在将所述待分发镜像子文件分发至对应的分发主机之前,还包括:为每个待分发镜像子文件分配唯一的待分发镜像子文件编号;为每个分发主机分配一个与所述待分发镜像子文件编号存在映射关系的分发主机编号。4.根据权利要求3所述的方法,其特征在于,所述将所述待分发镜像子文件分发至对应的分发主机,包括:获取每个所述待分发镜像子文件的编号以及每个所述分发主机的编号;根据所述分发主机的编号和所述待分发镜像子文件的编号之间的映射关系,将所述待分发镜像子文件分配至与对应的分发主机,其中,所述待分发镜像子文件与所述分发主机一一对应。5.根据权利要求2-4任一项所述的方法,其特征在于,在所述应用场景为虚拟机或裸机场景的情况下,所述推送信息包括:镜像元数据文件;分发主机编号;主机全集列表。6.根据权利要求1所述的方法,其特征在于,在应用场景为容器场景的情况下,所述将所述待分发镜像文件分发到对应的分发主机,包括:从待推送主机列表中选取与待分发镜像文件数量相同的分发主机;将所述待分发镜像文件分发至对应的分发主机。7.根据权利要求6所述的方法,其特征在于,在将所述待分发镜像文件分发至对应的分发主机之前,还包括:为每个待分发镜像文件分配一个待分发镜像文件编号;为每个分发主机分配一个与待分发镜像文件编号存在映射关系的分发主机编号。8.根据权利要求1、6或7中任...

【专利技术属性】
技术研发人员:颜伟
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1