一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

镜像分发方法、镜像分发装置、电子设备以及存储介质与流程

2022-03-26 13:03:04 来源:中国专利 TAG:


1.本技术涉及云计算技术领域,具体而言,涉及一种镜像分发方法、镜像分发装置、电子设备以及存储介质。


背景技术:

2.现有技术中,启动容器本身速度很快。但是在大部分情况下,启动容器需要先从远程的容器仓库中拉取整个容器镜像并将它写入本地计算机的磁盘。这对计算机资源造成了定浪费。对于小容器,此问题很少被注意到。但是,对于较大的容器,拉取操作很快成为启动容器的最慢部分。相关研究表明,docker(应用容器引擎)镜像拉取所占用的时间,可以占到容器启动总用时的76%,这个问题一直困扰着各类工作负载。虽然有各种方法可以尽量缩小docker镜像的大小,但是仍然无法避免某些场景需要用到大体积的镜像。为了缩短镜像拉取所占用的时间以及节省带宽,某些现有技术在边缘计算场景中部署容器镜像,容器镜像的分发遵循典型的云-边-端三级架构,但这种容器镜像的分发方式具有较大的数据丢失安全隐患。


技术实现要素:

3.为解决上述技术问题,本技术的实施例提供了一种镜像分发方法、镜像分发装置、电子设备以及存储介质,能够降低镜像分发的安全隐患。
4.本技术的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本技术的实践而习得。
5.根据本技术实施例的一个方面,提供了一种镜像分发方法,包括:获取存储于中心镜像仓库中的镜像,镜像包括对应的镜像元数据和镜像文件数据;将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中;根据边缘节点发送的元数据获取请求,将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目标镜像是终端设备向边缘节点请求获取的镜像。
6.根据本技术实施例的一个方面,提供了一种镜像分发方法,包括:接收终端发送的镜像获取请求,镜像获取请求用于请求获取目标镜像;基于镜像获取请求,向中心节点发送元数据获取请求,元数据获取请求用于请求获取中心镜像仓库中存储的目标镜像对应的镜像元数据;接收中心节点返回的目标镜像对应的镜像元数据,并将接收到镜像元数据存储至边缘镜像仓库中;将边缘镜像仓库中存储的目标镜像对应的镜像元数据和镜像文件数据返回至终端设备。
7.根据本技术实施例的一个方面,提供了一种镜像分发装置,包括:获取模块,用于获取存储于中心镜像仓库中的镜像,镜像包括对应的镜像元数据和镜像文件数据;第一发送模块,用于将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中;第二发送模块,用于根据边缘节点发送的元数据获取请求,将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目
标镜像是终端设备向边缘节点请求获取的镜像。
8.根据本技术实施例的一个方面,提供了一种镜像分发装置,包括:第一接收模块,用于接收终端发送的镜像获取请求,镜像获取请求用于请求获取目标镜像;第三发送模块,用于基于镜像获取请求,向中心节点发送元数据获取请求,元数据获取请求用于请求获取中心镜像仓库中存储的目标镜像对应的镜像元数据;第二接收模块,用于接收中心节点返回的目标镜像对应的镜像元数据,并将接收到镜像元数据存储至边缘镜像仓库中;第四发送模块,用于将边缘镜像仓库中存储的目标镜像对应的镜像元数据和镜像文件数据返回至终端设备。
9.根据本技术实施例的一个方面,提供了一种电子设备,包括处理器及存储器,存储器上存储有计算机可读指令,计算机可读指令被处理器执行时实现如上的镜像分发方法。
10.根据本技术实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当计算机可读指令被计算机的处理器执行时,使计算机执行如前提供的镜像分发方法。
11.根据本技术实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的镜像分发方法。
12.在本技术的实施例所提供的技术方案中,一方面,由于镜像传输时延包括镜像元数据传输时延和镜像文件数据传输时延,而镜像文件数据传输时延远小于镜像元数据传输时延,因此,本技术方案事先将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中,进而降低镜像拉取时延;另一方面,由于边缘节点的安全防护能力通常低于中心节点的安全防护能力,因此,本技术方案在接收到边缘节点发送的元数据获取请求之后,才将终端设备向边缘节点请求的目标镜像对应的镜像元数据返回至边缘节点中存储,能够防止镜像元数据事先储存于边缘节点所带来的安全隐患。
13.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。
附图说明
14.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
15.图1是现有技术的一示例性实施例示出的云-边-端三级架构的架构图;
16.图2是现有技术的一示例性实施例示出的镜像分发机制的架构图;
17.图3是本技术的一示例性实施例示出的镜像分发方法的流程图;
18.图4是现有技术的一示例性实施例示出的镜像分发机制的架构图;
19.图5是本技术的一示例性实施例示出的镜像分发方法的流程图;
20.图6是图5所示实施例中的步骤s204在一示例性实施例的流程图;
21.图7是本技术的另一示例性实施例示出的镜像分发方法的流程图;
22.图8是图7所示实施例中的步骤s304在一示例性实施例的流程图;
23.图9是图7所示实施例中的步骤s306在一示例性实施例的流程图;
24.图10是本技术的一示例性实施例示出的镜像分发装置的框图;
25.图11是本技术的另一示例性实施例示出的镜像分发装置的框图。
具体实施方式
26.这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
27.附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
28.附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
29.还需要说明的是:在本技术中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
30.容器作为一种轻量级、可移植、低成本的虚拟化处理方式,已经成为不少公司降低成本和提高效率的一种方式。启动容器需要硬盘中的容器镜像文件。容器镜像是启动容器实例的基础,包含了容器运行所需的所有数据。在启动容器实例之前,完整的容器镜像必须下载到本地。当前广泛使用的容器框架采用了客户端-仓库端模型,客户端负责实际容器生命周期的管理,包括启动、暂停、恢复和销毀,仓库端负责集中存放需要部署的容器镜像,供客户端自由获取需要的镜像。在云原生场景下,当一个作业需要在多个节点上启动同一种容器时,这些节点都会向镜像仓库请求容器镜像文件,但镜像仓库节点出口带宽有限,因此该作业在各节点上的平均准备时间与该节点的部署规模呈线性关系。
31.针对现有集中式的云网络已经无法满足终端侧日渐增高的云资源需求的技术问题,现有技术将中心管控与边缘云节点相结合,在中心管控设备的管控下边缘云节点可以获取所需的镜像,进而可创建云计算服务对应的实例,这为“将云计算放到距离终端更近的边缘云节点中处理”提供了条件,进而可借助边缘云节点中的资源为用户提供云计算服务,有利于降低响应时延,降低带宽成本。
32.在边缘计算场景中部署容器应用,容器镜像的分发一般遵循典型的云-边-端三级架构。参阅图1,图1是现有技术的一示例性实施例示出的云-边-端三级架构的架构图。如图1所示,云-边-端三级架构包括中心云以及与中心云连接的边缘节点1、边缘节点2以及边缘节点3,与边缘节点1连接的设备1、设备2和设备3,与边缘节点2连接的设备4和设备5,与边缘节点3连接的设备6和设备7。
33.其中,中心云包括中心镜像仓库,中心镜像仓库用于存储镜像。边缘节点1包括边
缘仓库1,边缘节点2包括边缘仓库2,边缘节点3包括边缘仓库3,边缘仓库1、边缘仓库2和边缘仓库3用于存储边缘节点1接收的中心云发送的镜像。设备1-3从边缘节点1拉取所需要的镜像,设备4-5从边缘节点2拉取所需要的镜像,设备6-7从边缘节点3拉取所需要的镜像。
34.参阅图2,图2是现有技术的一示例性实施例示出的镜像分发机制的架构图,如图2所示,中心节点将中心镜像仓库中存储的镜像元数据和镜像文件数据同步发送给边缘节点,以使得边缘镜像仓库存储镜像元数据和镜像文件数据,a设备和b设备通过边缘节点从边缘镜像仓库获取镜像元数据和镜像文件数据,以得到可用的目标镜像。
35.当前的镜像分发机制存在边缘节点的镜像数据易泄露的安全隐患,由于在边缘场景中,无人值守的边缘节点通常不具备中心云强大的网络和物理防护能力,镜像数据易被攻击,存在数据泄露风险。为解决此问题,本技术的实施例分别提出了镜像分发方法、镜像分发装置、电子设备以及计算机可读存储介质,以下将对这些实施例进行详细描述。
36.请参阅图3,图3是本技术的一示例性实施例示出的镜像分发方法的流程图,如图3所示,方法包括以下步骤:
37.步骤s101:获取镜像并存储于中心镜像仓库。
38.本实施例提供的方法由中心节点执行,中心节点包括中心镜像仓库。具体来讲,中心节点可以是具有处理能力的设备或者服务器,并且具有比较强大的安全防护能力,能够保证中心镜像仓库中的镜像数据不会轻易被窃取。中心节点可以通过接收外部设备发送的多个镜像的方式获取镜像,或者自行构建所需要的镜像,在此不做具体限定。
39.中心镜像仓库用于存储镜像,每个镜像包括对应的镜像元数据和镜像文件数据。
40.在本实施例中,镜像元数据包括镜像的属性信息,例如镜像的大小、名称、标识或者镜像文件标识等等。镜像文件数据包括镜像中除了镜像元数据以外的数据。镜像元数据和镜像文件数据组成一个可用的镜像。
41.步骤s102:将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中。
42.在本实施例中,边缘节点与中心云或者传统的云计算平台相对应,边缘节点是个相对概念,边缘节点是指相对靠近终端的云计算平台,或者说,与中心云或者传统的云计算平台相区别,中心云或者传统的云计算平台可以包括资源规模化且位置集中的数据中心,而边缘节点覆盖的网络范围更广泛,也因此具备距离终端更近的特性,单个边缘节点的资源规模较小。
43.示例性地,本实施例可以将中心镜像仓库中存储的镜像对应的镜像文件数据发送至多个边缘节点,以使多个边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中。通过这种方式,使得边缘节点覆盖的网络范围更广泛。
44.示例性地,将中心镜像仓库中存储的镜像对应的镜像文件数据同步至边缘节点。具体地,在中心镜像仓库中获取到镜像的镜像文件数据的同时,将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,使得边缘镜像仓库和中心镜像仓库中镜像对应的镜像文件数据同步变化,能够保证终端设备能够随时发送镜像拉取请求。
45.步骤s103:根据边缘节点发送的元数据获取请求,将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目标镜像是终端设备向边缘节点请求获取的镜像。
46.在本实施例中,终端设备在产生拉取镜像的需求时,向与其连接的边缘节点发送
镜像拉取请求,镜像拉取请求用于拉取目标镜像。边缘节点在接收到终端设备发送的镜像拉取请求之后,发送元数据获取请求至中心节点。
47.在本实施例中,可以设置终端设备的镜像拉取策略参数“imagepullpolicy”为“always”,使得终端设备在每次需要使用镜像构建容器时,都通过本实施例提供的镜像分发方法获取对应的镜像,进而保证设备终端使用的镜像同步更新于中心节点的镜像。
48.由于在步骤s102边缘节点已经将镜像文件数据存储至边缘镜像仓库中,因此边缘镜像仓库中包括目标镜像对应的镜像文件数据。另外,在获取到元数据获取请求时,中心节点又将目标镜像对应的镜像元数据发送给边缘节点,此时边缘节点包括目标镜像的对应的元数据和镜像文件数据,此时将目标镜像的对应的元数据和镜像文件数据发送给终端设备,以完成整个镜像分发过程。本实施例的终端设备是指云计算服务的需求端,例如可以是互联网中的终端或者用户端,或者物联网中的终端或用户端。
49.综上,本实施例提供的镜像分发方法,一方面,由于镜像传输时延包括镜像元数据传输时延和镜像文件数据传输时延,而镜像文件数据传输时延远小于镜像元数据传输时延,因此,本实施例事先将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中,进而降低镜像拉取时延。另一方面,由于边缘节点的安全防护能力通常低于中心节点的安全防护能力,因此,在接收到边缘节点发送的元数据获取请求之后,才将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目标镜像是终端设备向边缘节点请求获取的镜像,能够大大缩短镜像对应的镜像元数据储存于边缘节点中的时间,进而能够降低镜像元数据被窃取的可能性,提高镜像分发的安全性。
50.参阅图4,图4是现有技术的一示例性实施例示出的镜像分发机制的架构图,如图4所示,目标镜像对a设备和b设备授权,中心镜像仓库通过步骤1将授权信息即设备令牌同步到边缘镜像仓库,由于同步成功,此时边缘镜像仓库包括a设备和b设备的授权信息即a设备的设备令牌和b设备的设备令牌,a设备和b设备可以分别基于其设备令牌从边缘镜像仓库并获取到目标镜像。当目标镜像取消对用户b设备的授权时,中心镜像仓库通过步骤2将更新后的b设备的设备令牌同步到边缘镜像仓库。由于同步失败,边缘镜像仓库没有获取更新后的b设备的设备令牌,此时b设备仍然可以通过更新前的设备令牌从边缘镜像仓库获取到目标设备。
51.显然,从上述示例可以看出,当前的容器镜像分发机制存在一个较大的安全隐患:中心节点和边缘节点之间的权限控制策略不同步导致的安全风险,即当前镜像分发机制是将认证鉴权信息同步到边缘节点,由边缘节点进行认证和鉴权,但边缘节点存在网络不稳定等问题,当中心节点的安全策略(如访问权限)变更时,在安全策略尚未同步到边缘节点的过程中,会导致不被授权的镜像访问。为解决此问题,本实施例分别提出了一种镜像分发方法,以下将对这些实施例进行详细描述。
52.请参阅图5,图5是本技术的一示例性实施例示出的镜像分发方法的流程图,如图5所示,方法包括以下步骤:
53.步骤s201:获取镜像并存储于中心镜像仓库,镜像包括对应的镜像元数据和镜像文件数据。
54.步骤s202:将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,
以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中。
55.本实施例提供的镜像分发方法的步骤s201、步骤s202以及步骤s206分别与上述实施例提供的镜像分发方法的步骤101-步骤103相似,具体请参照上述实施例,在此不做过多叙述。
56.步骤s203:接收边缘节点发送的认证鉴权请求。
57.在本实施例中,认证鉴权请求中包括认证信息和鉴权信息,分别用于对请求获取镜像的设备进行认证和鉴权,认证信息包括请求获取镜像的设备的设备信息,如设备标识,鉴权信息如设备令牌。
58.步骤s204:根据认证鉴权请求,对请求获取目标镜像的终端设备进行认证和鉴权处理。
59.请参阅图6,图6是图5所示实施例中步骤s204一示例性实施例的流程图,如图6所示,步骤s204包括以下步骤:
60.步骤s2041:基于认证鉴权请求中含有的设备信息,在数据库中查询与目标镜像关联存储的设备信息,若查询到认证鉴权请求中含有的设备信息,则确定终端设备通过身份认证。
61.步骤s2042:在数据库中查询与设备信息关联存储的设备令牌,若查询到的设备令牌与认证鉴权请求中含有的设备令牌相同,则确定终端设备通过鉴权。
62.在本实施例中,中心节点的数据库中事先存储有每个镜像对应的设备名单。设备名单用于表示具有拉取对应镜像权限的设备,每个设备的设备信息包括设备标识和设备令牌,以便于相应设备利用该设备令牌拉取对应镜像,每个镜像对应的设备名单可以实时更新,以控制设备对相应镜像的获取权限。与目标镜像关联存储的设备信息就是目标镜像对应的设备名单中设备的设备信息。
63.在本实施例中,在目标镜像关联存储的设备信息中查找认证鉴权请求中含有的设备标识和设备令牌,若查询到该设备标识,确认请求获取目标镜像的终端设备通过身份验证,若查询到该设备标识对应的设备令牌,确定终端设备通过鉴权。
64.步骤s205:若终端设备通过认证和鉴权,则向边缘节点返回确认消息,以使边缘节点基于确认消息发起元数据获取请求。
65.步骤s206:根据边缘节点发送的元数据获取请求,将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目标镜像是终端设备向边缘节点请求获取的镜像。
66.本实施例提供的镜像分发方法,在步骤s206之前,对请求获取镜像的终端设备进行认证和鉴权,能够提高镜像分发的安全性;另外,不同于现有技术中利用边缘节点对设备进行认证和鉴权,本实施例直接利用中心节点对设备进行认证和鉴权,以防在镜像的设备名单信息发生变化时,无法及时同步到边缘节点,进而导致镜像的误发,提高镜像分发的安全性。
67.请参阅图7,图7是本技术的一示例性实施例示出的镜像分发方法的流程图,本实施例提供的镜像分发方法的执行主体为边缘节点,边缘节点分别连接中心节点和终端设备。如图7所示,方法包括以下步骤:
68.步骤s301:接收中心节点发送的中心镜像仓库所存储镜像对应的镜像文件数据。
69.中心节点基于ssh传输命令或scp传输命令将中心镜像仓库所存储镜像对应的镜
像文件数据发送到边缘节点,以保证镜像文件数据在传输过程中的安全性。
70.其中,ssh为secure shell的缩写,由ietf的网络工作小组(network working group)所制定,ssh为建立在应用层和传输层基础上的安全协议。ssh是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用ssh协议可以有效防止远程管理过程中的信息泄露问题。ssh最初是unix系统上的一个程序,后来又迅速扩展到其他操作平台。ssh在正确使用时可弥补网络中的漏洞。
71.scp是secure copy的缩写,scp是linux等操作系统下基于ssh登陆进行安全的远程文件拷贝命令。
72.示例性地,接收中心节点定时发送的中心镜像仓库所存储镜像对应的镜像文件数据。通过这种方式,能够定时更新边缘镜像仓库中镜像对应的镜像文件数据。
73.步骤s302:将接收到的镜像文件数据存储至边缘镜像仓库中。
74.步骤s303:接收终端设备发送的镜像获取请求,镜像获取请求用于请求获取目标镜像。
75.在本实施例中,镜像获取请求包括终端设备的设备信息,如设备标识、设备令牌以及设备ip地址,镜像获取请求还包括目标镜像的镜像标识。
76.步骤s304:基于镜像获取请求,向中心节点发送元数据获取请求,元数据获取请求用于请求获取中心镜像仓库中存储的目标镜像对应的镜像元数据;
77.在本实施例中,元数据获取请求包括目标镜像的镜像标识,以使得中点节点根据目标镜像的镜像标识将目标镜像的镜像元数据发送边缘节点。
78.步骤s305:接收中心节点返回的目标镜像对应的镜像元数据,并将接收到镜像元数据存储至边缘镜像仓库中。
79.步骤s306:将边缘镜像仓库中存储的目标镜像对应的镜像元数据和镜像文件数据返回至终端设备。
80.在本实施例中,在接收终端设备发送的镜像获取请求之前,边缘镜像仓库中事先存储有从中心镜像仓库中获取的目标镜像对应镜像文件数据,在接收到终端设备镜像获取请求时,只需从中心节点获取目标镜像对应的镜像元数据,由于镜像文件数据传输时延远小于镜像元数据传输时延,因此,本实施例能够及时将目标镜像对应的镜像元数据和镜像文件数据返回至终端设备,降低镜像拉取时延,提高镜像分发效率。
81.另一方面,由于边缘节点的安全防护能力通常低于中心节点的安全防护能力,因此,在接收到终端设备发送的镜像获取请求后,才从中心节点处获取目标镜像对应的镜像元数据,能够防止镜像元数据事先储存于边缘节点所带来的安全隐患。
82.请参阅图8,图8是图7所示实施例中步骤s304一示例性实施例的流程图,如图8所示,步骤s304包括以下步骤:
83.步骤s3041:基于镜像获取请求,向中心节点发送认证鉴权请求,以使中心节点根据认证鉴权请求对请求获取目标镜像的终端设备进行认证和鉴权处理。
84.在本实施例中,认证鉴权请求中包括认证信息和鉴权信息,分别用于对请求获取镜像的设备进行认证和鉴权,认证信息包括请求获取镜像的设备的设备信息,如设备标识,鉴权信息如设备令牌,设备令牌。
85.在本实施例中,中心节点根据认证鉴权请求对请求获取目标镜像的终端设备进行
认证和鉴权处理的过程如图3所示的步骤s2041-步骤s2042,在此不做过多叙述。
86.步骤s3042:接收中心节点返回的确认消息,确认消息用于表征终端设备通过认证和鉴权。
87.步骤s3043:向中心节点发送元数据获取请求。
88.本实施例提供的镜像分发方法在向中心节点发送元数据获取请求之前,基于镜像获取请求,向中心节点发送认证鉴权请求,以使中心节点根据认证鉴权请求对请求获取目标镜像的终端设备进行认证和鉴权处理,一方面能够避免镜像的误发,另一方面,本实施例直接请求中心节点对设备进行认证和鉴权,以防在镜像的设备名单信息发生变化时,无法及时同步到边缘节点,进而导致镜像的误发。通过这种方式,提高镜像分发的安全性。
89.请参阅图9,图9是图7所示实施例中步骤s306一示例性实施例的流程图。
90.在本实施例中,目标镜像对应的镜像文件数据包括多层镜像文件以及每层镜像文件对应的镜像文件标识,目标镜像对应的镜像元数据包括每层镜像文件对应的镜像文件标识和层序号。
91.如图9所示,步骤s306包括以下步骤:
92.步骤s3061:基于每层镜像文件的镜像文件标识,确定对应镜像文件的层序号。
93.在本实施例中,一个镜像由多个镜像文件层组成,每个镜像文件层保存部分镜像数据,镜像文件标识用于唯一表示镜像文件层,镜像文件的层序号用于表示对应的镜像文件层在镜像中从上到下的排列序号。
94.步骤s3062:根据每层镜像文件的层序号,对多层镜像文件进行组合得到可用的目标镜像。
95.例如,目标镜像包括三层镜像文件,第一层镜像文件的层序号为1,第二层镜像文件的层需要为2,第三层的镜像文件的层需要为3,则按照从上到下的排列第一层镜像文件、第二层镜像文件以及第三层镜像文件,得到一个可用的目标镜像。
96.步骤s3063:将可用的目标镜像返回至终端设备。
97.由于中心节点事先将目标镜像对应的镜像文件数据发送给边缘节点以使边缘镜像仓库对其进行保存,而在接收到镜像获取请求之后,才从中心节点获取目标镜像对应的镜像元数据,显然,这种镜像分发方法将目标镜像对应的镜像元数据和镜像文件数据分离开来,这种方式能够保证镜像文件分发的安全性。本实施例在边缘节点获取到目标镜像对应的镜像元数据后,对在边缘节点将目标镜像对应的镜像文件数据和镜像元数据进行重新组合,得到可用的目标镜像,然后将该可用的目标镜像发送给终端设备,使得终端设备无需再将目标镜像对应的镜像元数据和镜像文件数据进行组合,直接利用可用的目标镜像即可启用新容器,提高工作效率。
98.参阅图10,图10是本技术一示例性实施例示出的镜像分发装置的框图,如图10所示,镜像分发装置1000包括获取模块1100、第一发送模块1200以及第二发送模块1300。
99.其中,获取模块1100用于获取存储于中心镜像仓库中的镜像,镜像包括对应的镜像元数据和镜像文件数据;第一发送模块1200用于将中心镜像仓库中存储的镜像对应的镜像文件数据发送至边缘节点,以使边缘节点将接收到的镜像文件数据存储至边缘镜像仓库中;第二发送模块1300用于根据边缘节点发送的元数据获取请求,将目标镜像对应的镜像元数据返回至边缘节点中存储,其中,目标镜像是终端设备向边缘节点请求获取的镜像。
100.在另一示例性实施例中,镜像分发装置1000还可以包括第三接收模块、认证鉴权模块以及返回模块。
101.其中,第三接收模块用于接收边缘节点发送的认证鉴权请求;认证鉴权模块用于根据认证鉴权请求,对请求获取目标镜像的终端设备进行认证和鉴权处理;返回模块用于若终端设备通过认证和鉴权,则向边缘节点返回确认消息,以使边缘节点基于确认消息发起元数据获取请求。
102.在另一示例性实施例中,认证鉴权模块包括认证单元和鉴权单元。
103.其中,认证单元用于基于认证鉴权请求中含有的设备信息,在数据库中查询与目标镜像关联存储的设备信息,若查询到设备信息,则确定终端设备通过身份认证;鉴权单元用于在数据库中查询与设备信息关联存储的设备令牌,若查询到的设备令牌与认证鉴权请求中含有的设备令牌相同,则确定终端设备通过鉴权。
104.参阅图11,图11是本技术一示例性实施例示出的镜像分发装置的框图,如图11所示,镜像分发装置2000包括第一接收模块2100、第三发送模块2200、第二接收模块2300以及第四发送模块2400。
105.其中第一接收模块2100用于接收终端发送的镜像获取请求,镜像获取请求用于请求获取目标镜像;第三发送模块2200用于基于镜像获取请求,向中心节点发送元数据获取请求,元数据获取请求用于请求获取中心镜像仓库中存储的目标镜像对应的镜像元数据;第二接收模块2300用于接收中心节点返回的目标镜像对应的镜像元数据,并将接收到镜像元数据存储至边缘镜像仓库中;第四发送模块2400用于将边缘镜像仓库中存储的目标镜像对应的镜像元数据和镜像文件数据返回至终端设备。
106.在另一示例性实施例中,镜像分发装置2000还可以包括第四接收模块和存储模块。
107.其中,第四接收模块用于接收中心节点定时发送的中心镜像仓库所存储镜像对应的镜像文件数据;存储模块用于将接收到的镜像文件数据存储至边缘镜像仓库中。
108.在另一示例性实施例中,第三发送模块2200包括第一发送单元、接收单元以及第二发送单元。
109.其中,第一发送单元用于基于镜像获取请求,向中心节点发送认证鉴权请求,以使中心节点根据认证鉴权请求对请求获取目标镜像的终端设备进行认证和鉴权处理;接收单元用于接收中心节点返回的确认消息,确认消息用于表征终端设备通过认证和鉴权;第二发送单元用于向中心节点发送元数据获取请求。
110.需要说明的是,上述实施例所提供的装置与上述实施例所提供的方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。
111.在另一示例性实施例中,本技术提供一种电子设备,包括处理器和存储器,其中,存储器上存储有计算机可读指令,该计算机可读指令被处理器执行时实现如前的镜像分发方法。
112.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机可读指令,该计算机可读指令被处理器执行时实现如前实施例中任一项提供的镜像分发方法。
113.本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产
品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的镜像分发方法。
114.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
115.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
116.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
117.上述内容,仅为本技术的较佳示例性实施例,并非用于限制本技术的实施方案,本领域普通技术人员根据本技术的主要构思和精神,可以十分方便地进行相应的变通或修改,故本技术的保护范围应以权利要求书所要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献