一种边缘计算平台上docker容器自动部署方法技术

技术编号:33759632 阅读:76 留言:0更新日期:2022-06-12 14:08
本发明专利技术公开了一种边缘计算平台上docker容器自动部署方法,采用一种边缘计算平台上docker容器自动部署系统,该系统包括docker应用提交系统和docker应用自动部署系统;采用该方法部署的docker容器可以独立运行多种进程、多个应用,更加充分地利用边缘计算平台的资源,同时保持各个独立应用的安全性。同时保持各个独立应用的安全性。同时保持各个独立应用的安全性。

【技术实现步骤摘要】
一种边缘计算平台上docker容器自动部署方法


[0001]本专利技术属于信息
,涉及一种边缘计算平台上docker容器自动部署方法。

技术介绍

[0002]近年来,可移动的边缘计算一体机是当前计算机体系结构领域的热点。边缘计算一体机主要由:1)硬件层面上:满足边缘计算需求的小型计算机、网络设备和其他硬件;2)软件层面上:为边缘计算定制的资源管理系统组成。它的主要特点表现为:体积小,低功耗,轻重量,易拓展,高性能,低成本。人们可以利用边缘计算一体机的便携性和灵活性,在靠近数据输入的地方提供计算和存储服务,解决传统模式下数据回传到云计算中央数据中心的高延迟、网络不稳定和劫持数据不安全的问题。
[0003]容器是直接运行在操作系统内核之上的用户空间。容器虚拟化被称为“操作系统虚拟化”,容器技术可以让多个独立的用户空间运行在同一台宿主机上。与传统虚拟化相比,容器的开销比较小,因为容器运行不需要模拟层和管理层,而是使用操作系统的系统调用接口。但由于容器的管理复杂,Docker技术应运而生。Docker是一个能够把开发的应用程序自动部署到容器的开源引擎。用户只需要几分钟,就可以把自己的程序“Docker化”。并且Docker容器拥有很高的性能,同时一台宿主机中也可以运行很多个容器。
[0004]当前,边缘计算在许多行业应用兴起,如智慧医疗、视频监控、野外勘测、军事作战等。应用的种类越来越多,为保证边缘计算平台上数据的高安全和应用的高性能,应用之间资源的隔离性显得尤为重要。然而,目前docker技术只在传统的大服务器上应用,在边缘计算平台上应用探索很少。另一方面,大服务器一般是基于x86架构,而边缘计算平台由于要满足可便携、低功耗等条件,基于Arm的架构显得比较合适。基于Arm架构的docker技术尚未成熟,不够稳定。
[0005]为了使得边缘计算平台的资源得到充分利用,提出了一种在边缘计算平台上docker容器自动部署的技术。虽然在数据中心中docker技术的应用普遍,但在边缘计算平台上docker技术应用很少。

技术实现思路

[0006]本专利技术的目的是提供一种边缘计算平台上docker容器自动部署方法,采用该方法部署的docker容器可以独立运行多种进程、多个应用,更加充分地利用边缘计算平台的资源,同时保持各个独立应用的安全性。
[0007]本专利技术所采用的技术方案是,一种边缘计算平台上docker容器自动部署方法,采用一种边缘计算平台上docker容器自动部署系统,该系统包括docker应用提交系统和docker应用自动部署系统;
[0008]具体包括如下步骤:
[0009]步骤1,用户向边缘计算平台以json文件提交docker运行任务;
[0010]步骤2,在收到docker任务json描述后,master进程选择一台能满足docker任务资
源需求的节点,同时master进程将docker任务的信息发送给slave1,并在内存的数据结构中,并将slave1上的剩余资源更新为减去docker任务需求后的数值;
[0011]步骤3,slave1获取到待运行的docker任务信息后,启动container进程;
[0012]步骤4,通过container进程拉取该docker任务的镜像,并通过docker服务的API实现基于CPU和内存的资源隔离;
[0013]步骤5,在slave1上再次启动container进程;
[0014]步骤6,基于步骤5启动的container进程,通过任务的命令创建docker进程,并监控docker进程的生命周期;
[0015]步骤7,将docker进程的状态信息逐步向上依次反馈到用户界面。
[0016]本专利技术的特点还在于:
[0017]docker应用提交系统包括前端docker应用设置信息填写接口和后端docker应用的设置信息接收和存储操作;
[0018]通过docker应用提交系统填写完的docker应用信息将通过http协议传送到docker应用提交系统后端,docker应用提交系统后端将docker应用信息进行保存。
[0019]docker应用信息的保存方式为保存至数据库或者写到单独的文件中。
[0020]前端docker应用设置信息填写接口为网页端或者配置文件。
[0021]docker应用自动部署系统包括依次传递信息的docker应用部署解析模块、任务调度模块、容器构建模块、容器启动和监控模块。
[0022]docker应用部署解析模块包括如下功能:调用json或yaml解码库,解析用户提交的docker应用描述信息;将解析完的docker应用描述信息封装成计算任务,提交到边缘计算平台上的任务调度模块。
[0023]任务调度模块包括如下功能:负责给计算任务分配资源,并调度到对应的slave节点上运行。
[0024]容器构建模块包括如下功能:为docker的运行作准备,包括拉取镜像、进行资源隔离。
[0025]容器启动和监控模块内容包括如下功能:
[0026]1)将用户的应用程序注入到对应的docker容器中,通过linux系统调用派生出子进程,该子进程随即执行docker命令,运行docker容器;
[0027]2)监控启动的子进程状态,一方面要向上报告子进程的生命周期信息,另一方面重定向子进程的文件输入输出描述符到指定文件中,以获取docker应用的日志。
[0028]步骤2)中生命周期信息包括运行中、成功或失败结束。
[0029]本专利技术的有益效果是,与传统的数据中心docker大规模部署对比,边缘计算平台上的docker容器自动化部署技术一方面满足了边缘计算平台的可便携、低功耗等要求,降低了docker部署的硬件成本。另一方面,减少了程序员的负担,使得程序员编写的程序容易移植到架构平台上(基于x86的大服务器和基于Arm的边缘计算平台),提高了应用开发的效率。
附图说明
[0030]图1是本专利技术一种边缘计算平台上docker容器自动部署方法中采用的一种边缘计
算平台上docker容器自动部署系统的结构框图。
具体实施方式
[0031]下面结合附图和具体实施方式对本专利技术进行详细说明。
[0032]本专利技术一种边缘计算平台上docker容器自动部署方法,采用一种边缘计算平台上docker容器自动部署系统,如图1所示,该系统包括docker应用提交系统A1和docker应用自动部署系统A2;
[0033]docker应用提交系统A1主要给用户提供docker应用的部署要求设置接口,可以是网页端,也可以是配置文件。用户通过json或yaml语法定义要docker应用的应用程序名称、应用程序位置、CPU使用核数和内存使用量。
[0034]docker应用自动部署系统A2分为:S1:docker应用部署解析模块。S2:任务调本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种边缘计算平台上docker容器自动部署方法,其特征在于,采用一种边缘计算平台上docker容器自动部署系统,该系统包括docker应用提交系统和docker应用自动部署系统;具体包括如下步骤:步骤1,用户向边缘计算平台以json文件提交docker运行任务;步骤2,在收到docker任务json描述后,master进程选择一台能满足docker任务资源需求的节点,同时master进程将docker任务的信息发送给slave1,并在内存的数据结构中,并将slave1上的剩余资源更新为减去docker任务需求后的数值;步骤3,slave1获取到待运行的docker任务信息后,启动container进程;步骤4,通过container进程拉取该docker任务的镜像,并通过docker服务的API实现基于CPU和内存的资源隔离;步骤5,在slave1上再次启动container进程;步骤6,基于步骤5启动的container进程,通过任务的命令创建docker进程,并监控docker进程的生命周期;步骤7,将docker进程的状态信息逐步向上依次反馈到用户界面。2.根据权利要求1所述的一种边缘计算平台上docker容器自动部署方法,其特征在于,所述ockder应用提交系统包括前端docker应用设置信息填写接口和后端docker应用的设置信息接收和存储操作;通过docker应用提交系统填写完的docker应用信息将通过http协议传送到docker应用提交系统后端,docker应用提交系统后端将docker应用信息进行保存。3.根据权利要求2所述的一种边缘计算平台上docker容器自动部署方法,其特征在于,所述docker应用信息的保存方式为保存至数据库或者写到单独的文件中。4.根据权利要求2所...

【专利技术属性】
技术研发人员:李乐乐喻之斌
申请(专利权)人:中国科学院深圳先进技术研究院
类型:发明
国别省市:

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

1