基于容器的云计算平台任务处理方法、系统及其应用方法技术方案

技术编号:20424934 阅读:26 留言:0更新日期:2019-02-23 08:25
本发明专利技术公开了一种基于容器的云计算平台任务处理方法、系统及其应用方法,本发明专利技术利用容器编排技术基于编程语法来识别解析计算任务中的语法定义,从而实现对计算任务中循环的处理以及计算任务之间的依赖关系处理,通过运行计算子任务Ai的容器,运行结束后将计算结果传输到数据仓库,来完成基于容器的云计算平台任务处理。本发明专利技术面向有一定编程能力的用户,提供并行和串行运行算法任务支持,解决了计算子任务之间相互依赖的问题,可根据自身业务自定义任务处理,将计算子任务使用容器结合现有容器资源编排调度完成业务处理,能够有效提高平台实用性及优化平台的资源效能。

【技术实现步骤摘要】
基于容器的云计算平台任务处理方法、系统及其应用方法
本专利技术涉及云计算服务领域,具体涉及一种基于容器的云计算平台任务处理方法、系统及其应用方法。
技术介绍
容器是轻量级的操作系统级虚拟化技术,可以让我们在一个资源隔离的进程中运行应用及其依赖项。相对于传统虚拟机技术,容器技术具有轻量级的资源开销和秒级启动时间良好属性。随着容器技术不断完善与发展,众多服务提供商以优化平台的资源效能和提升服务响应能力的目的,采用容器技术构建云计算平台,提供在线计算等服务,随着阿里云、亚马逊等云服务的出现,为在线云计算服务的出现奠定的基础。现有容器基础平台已很好的实现容器资源编排调度功能,在资源使用率较低的节点动态地创建容器,并借助负载均衡技术将业务量分发到新建的容器。图1是kubernetes、rancher和docker等公司的现有容器基础平台架构,主要包括Web前端、服务端、容器编排调度器、客户端四部分,容器编排调度器的编排流程如下:用户通过Web端提交业务请求;Web端将业务请求发送给服务端;服务端接收到业务请求后,进行响应和处理,将请求发送给编排调度器;编排调度器选择资源使用率最小的客户端节点,将容器创建指令发送给客户端;客户端接收到容器创建指令后,根据指令进行容器的创建。因此,基于现有的现有容器基础平台架构实现基于容器的云计算平台任务处理,对于云计算平台而言具有非常积极的意义,但是如何基于现有的现有容器基础平台架构实现基于容器的云计算平台任务处理,则仍然是一项亟待解决的关键技术问题。
技术实现思路
本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种基于容器的云计算平台任务处理方法、系统及其应用方法,本专利技术面向有一定编程能力的用户,提供并行和串行运行算法任务支持,解决了计算子任务之间相互依赖的问题,可根据自身业务自定义任务处理,将计算子任务使用容器结合现有容器资源编排调度完成业务处理,能够有效提高平台实用性及优化平台的资源效能。为了解决上述技术问题,本专利技术采用的技术方案为:一种基于容器的云计算平台任务处理方法,实施步骤包括:1)接收提交的计算任务A,计算任务A包含至少一个计算子任务;2)针对计算任务A中的每一个计算子任务Ai,跳转执行步骤3);3)为计算子任务Ai选择客户端节点,在选择的客户端节点中创建容器containerAi;4)判断计算子任务Ai中是否有循环属性,如果存在循环属性则将循环计数加1,判断循环计数的值是否等于循环属性的值,如果不等于循环属性的值,则跳转执行步骤3);否则,跳转执行步骤5);5)判断计算子任务Ai是否有依赖属性,如果没有依赖属性则跳转执行步骤6);否则,监控依赖属性对应的目标计算子任务An是否运行完毕,当目标计算子任务An运行完毕时跳转执行步骤6);6)运行计算子任务Ai的容器containerAi,运行结束后将计算结果传输到数据仓库,并删除计算子任务Ai的容器containerAi。优选地,步骤3)中为计算子任务Ai选择客户端节点的具体步骤包括:获取所有的客户端节点资源信息,所述资源信息包括CPU资源使用率和内存资源使用率,选择一个CPU资源使用率和内存资源使用率最低的客户端节点作为计算子任务Ai选择的客户端节点。优选地,步骤3)中在选择的客户端节点中创建容器containerAi时还包括检查计算子任务Ai中的镜像属性,且根据镜像属性的值选定执行的容器运行镜像来创建容器containerAi。优选地,步骤3)中在选择的客户端节点中创建容器containerAi后还包括检查计算子任务Ai中的文件属性,如果文件属性存在则将文件属性对应的数据仓库文件从数据仓库中下载到容器containerAi中。本专利技术还提供一种基于容器的云计算平台任务处理系统,包括计算机设备,所述计算机设备被编程以执行本专利技术前述基于容器的云计算平台任务处理方法的步骤。本专利技术还提供一种基于容器的云计算平台任务处理系统,包括相互连接的服务器、任务解析器、容器编排调度器以及至少一个客户端,所述任务解析器接收并解析用户通过web客户端提交给服务器的计算子任务后生成计算任务A发送给容器编排调度器,所述容器编排调度器被编程以执行本专利技术前述基于容器的云计算平台任务处理方法的步骤。本专利技术还提供一种前述基于容器的云计算平台任务处理系统的应用方法,所述任务解析器接收并解析用户通过web客户端提交给服务器的计算子任务后生成计算任务A的详细步骤包括:S1)接收用户通过web客户端提交给服务器的包含n个计算子任务的计算任务A;S2)根据计算子任务的语句语法对每一个计算子任务进行解析,如果任意计算子任务指定了需要多次运行,则为该计算子任务添加循环属性、且将循环属性的值设置为运行次数;如果计算子任务之间存在依赖关系,则为存在依赖关系的计算子任务添加依赖属性、且将依赖属性的值设置为所依赖的计算子任务,最终得到完成解析后的计算任务A。优选地,步骤S2)还包括镜像属性解析的步骤:如果任意计算子任务指定了容器运行镜像,则为该计算子任务添加镜像属性、且将镜像属性的值设置为指定的容器运行镜像;否则,为该计算子任务添加镜像属性、且将镜像属性的值设置为默认的容器运行镜像。优选地,步骤S2)还包括文件属性解析的步骤:如果任意计算子任务指定了需要添加至容器的文件,如果该文件为数据仓库中的文件则为该计算子任务添加文件属性、且将文件属性的值设置为指定的添加至容器的文件。和现有技术相比,本专利技术具有下述优点:1、本专利技术面向有一定编程能力的用户,提供并行和串行运行算法任务支持,解决了计算子任务之间相互依赖的问题,可根据自身业务自定义任务处理,将计算子任务使用容器结合现有容器资源编排调度完成业务处理,能够有效提高平台实用性及优化平台的资源效能。2、本专利技术使用容器运行计算子任务,可利用现有容器资源编排技术优化平台性能。3、本专利技术通过可编程任务调度方法结合数据仓库,用户可将任务拆分计算或一次性计算,也可多人协作,支持多种方式处理,有限扩展云计算平台业务。4、本专利技术支持任务调度和资源调度相结合,提高了计算子任务的处理效率。附图说明图1为现有技术的现有容器基础平台架构示意图。图2为本专利技术实施例容器基础平台架构示意图。图3为本专利技术实施例方法的基本流程示意图。图4为本专利技术实施例中任务解析器的工作流程示意图。具体实施方式如图3所示,本实施例基于容器的云计算平台任务处理方法的实施步骤包括:1)接收提交的计算任务A,计算任务A包含至少一个计算子任务;2)针对计算任务A中的每一个计算子任务Ai,跳转执行步骤3);3)为计算子任务Ai选择客户端节点,在选择的客户端节点中创建容器containerAi;4)判断计算子任务Ai中是否有循环属性,如果存在循环属性则将循环计数加1,判断循环计数的值是否等于循环属性的值,如果不等于循环属性的值,则跳转执行步骤3);否则,跳转执行步骤5);本实施例中循环属性的形式为{"cycle":"n"},cycle为循环属性的标签,循环属性的值n为循环次数;5)判断计算子任务Ai是否有依赖属性,如果没有依赖属性则跳转执行步骤6);否则,监控依赖属性对应的目标计算子任务An是否运行完毕,当目标计算子任务An运行完毕时跳转执行步骤6);本实施例中依赖属性的形式为{"本文档来自技高网...

【技术保护点】
1.一种基于容器的云计算平台任务处理方法,其特征在于实施步骤包括:1)接收提交的计算任务A,计算任务A包含至少一个计算子任务;2)针对计算任务A中的每一个计算子任务Ai,跳转执行步骤3);3)为计算子任务Ai选择客户端节点,在选择的客户端节点中创建容器containerAi;4)判断计算子任务Ai中是否有循环属性,如果存在循环属性则将循环计数加1,判断循环计数的值是否等于循环属性的值,如果不等于循环属性的值,则跳转执行步骤3);否则,跳转执行步骤5);5)判断计算子任务Ai是否有依赖属性,如果没有依赖属性则跳转执行步骤6);否则,监控依赖属性对应的目标计算子任务An是否运行完毕,当目标计算子任务An运行完毕时跳转执行步骤6);6)运行计算子任务Ai的容器containerAi,运行结束后将计算结果传输到数据仓库,并删除计算子任务Ai的容器containerAi。

【技术特征摘要】
1.一种基于容器的云计算平台任务处理方法,其特征在于实施步骤包括:1)接收提交的计算任务A,计算任务A包含至少一个计算子任务;2)针对计算任务A中的每一个计算子任务Ai,跳转执行步骤3);3)为计算子任务Ai选择客户端节点,在选择的客户端节点中创建容器containerAi;4)判断计算子任务Ai中是否有循环属性,如果存在循环属性则将循环计数加1,判断循环计数的值是否等于循环属性的值,如果不等于循环属性的值,则跳转执行步骤3);否则,跳转执行步骤5);5)判断计算子任务Ai是否有依赖属性,如果没有依赖属性则跳转执行步骤6);否则,监控依赖属性对应的目标计算子任务An是否运行完毕,当目标计算子任务An运行完毕时跳转执行步骤6);6)运行计算子任务Ai的容器containerAi,运行结束后将计算结果传输到数据仓库,并删除计算子任务Ai的容器containerAi。2.根据权利要求1所述的基于容器的云计算平台任务处理方法,其特征在于,步骤3)中为计算子任务Ai选择客户端节点的具体步骤包括:获取所有的客户端节点资源信息,所述资源信息包括CPU资源使用率和内存资源使用率,选择一个CPU资源使用率和内存资源使用率最低的客户端节点作为计算子任务Ai选择的客户端节点。3.根据权利要求1或2所述的基于容器的云计算平台任务处理方法,其特征在于,步骤3)中在选择的客户端节点中创建容器containerAi时还包括检查计算子任务Ai中的镜像属性,且根据镜像属性的值选定执行的运行环境镜像来创建容器containerAi。4.根据权利要求3所述的基于容器的云计算平台任务处理方法,其特征在于,步骤3)中在选择的客户端节点中创建容器containerAi后还包括检查计算子任务Ai中的文件属性,如果文件属性存在则将文件属性对应的数据仓库文件从数据仓库中下载到容器containerAi中。5.一种基于容器...

【专利技术属性】
技术研发人员:李根宋卓邓文平唐骏翔吴侃孙朝辉宁文飞谢成龙朱德龙张栓马丑贤
申请(专利权)人:人和未来生物科技长沙有限公司
类型:发明
国别省市:湖南,43

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

1