任务调度方法及系统技术方案

技术编号:30902065 阅读:21 留言:0更新日期:2021-11-22 23:46
本申请公开了一种任务调度方法,所述方法包括:接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;根据所述目标任务类型,从多个待选镜像中选择目标镜像;及基于所述目标镜像创建目标容器;其中,所述目标容器用于运行所述目标任务。本申请提供的方法,通过目标任务的目标任务类型,从多个待选镜像中选择出目标镜像,以获取所依赖的环境,能够确保所述目标任务的运行不依赖宿主机环境,扩容便捷;由于每个镜像为某一类型的任务提供容器创建等服务,因此,每个镜像可以做到体积小、扩容方便。扩容方便。扩容方便。

【技术实现步骤摘要】
任务调度方法及系统


[0001]本申请涉及计算机
,尤其涉及一种任务调度方法、系统、计算机设备和计算机可读存储介质,以及服务器。

技术介绍

[0002]Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的Docker容器中,然后发布到任何流行的各种物理机上,也可以实现虚拟化。Docker能够虚拟出多个Docker容器,每个Docker容器使用沙箱机制,相互隔离没有接口,可以将彼此的生产环境和开发环境分开,互不影响。
[0003]容器的运行需要依赖镜像。物理机器中的环境复杂,各个容器所依赖的环境、软件各不相同。一般将各种依赖软件安装到物理机器中或集成到一个镜像中。但是,将各种依赖软件安装到物理机器中或集成到一个镜像,会导致如下问题:需要依赖复杂的宿主主机(物理机器),或镜像文件体积大,且扩容不便。

技术实现思路

[0004]本申请实施例的目的是提供一种任务调度方法、系统、计算机设备及计算机可读存储介质,以及服务器,用于解决以下问题:需要依赖复杂的宿主主机,或镜像文件体积大,且扩容不便。
[0005]本申请实施例的一个方面提供了一种任务调度方法,所述方法包括:
[0006]接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;
[0007]根据所述目标任务类型,从多个待选镜像中选择目标镜像;及
[0008]基于所述目标镜像创建目标容器;其中,所述目标容器用于运行所述目标任务。
[0009]可选的,还包括:动态设置所述目标容器的资源使用权限;
[0010]所述资源使用权限用于限制所述目标任务对资源的最大使用上限,所述资源包括CPU资源和/或内存资源。
[0011]可选的,还包括:
[0012]判断所述资源使用权限是否满足所述目标任务的当前资源需求;及
[0013]若所述资源使用权限无法满足所述目标任务的当前资源需求,则停止运行所述目标任务和所述目标容器。
[0014]可选的,还包括:
[0015]预先收集各个任务的任务类型,以得到多个任务类型;及
[0016]为每个任务类型分别配置一个镜像,每个任务类型对应的镜像被配置提供相应任务的运行环境。
[0017]可选的,所述根据所述目标任务类型,从多个待选镜像中选择目标镜像,包括:通过执行节点从所述多个待选镜像中选择所述目标镜像,并向守护进程发起容器创建请求;
[0018]所述基于所述目标镜像创建目标容器,包括:通过所述守护进程获取所述容器创建请求;并响应于所述容器创建请求,基于所述目标镜像创建所述目标容器。
[0019]可选的,还包括:
[0020]将所述目标容器在其生命周期内的任务日志重定向到指定文件;和/或
[0021]通过所述守护进程监测所述目标容器内的目标任务的任务状态,为所述执行节点提供状态查询服务。
[0022]本申请实施例的一个方面又提供了一种任务调度系统,所述系统包括:
[0023]接收模块,用于接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;
[0024]选择模块,用于根据所述目标任务类型,从多个待选镜像中选择目标镜像;及
[0025]创建模块,用于基于所述目标镜像创建目标容器,所述目标容器用于运行所述目标任务。
[0026]本申请实施例的一个方面又提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现如上述任务调度方法的步骤。
[0027]本申请实施例的一个方面又提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上述任务调度方法的步骤。
[0028]本申请实施例的一个方面又提供了一种服务器,被配置执行节点和守护进程,其中:
[0029]所述执行节点接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;
[0030]所述执行节点根据所述目标任务类型,从多个待选镜像中选择目标镜像;
[0031]所述执行节点向守护进程发起容器创建请求;
[0032]所述守护进程响应于所述容器创建请求,基于所述目标镜像创建所述目标容器。
[0033]可选的,所述执行节点被配置预定大小的资源,所述资源供所述目标任务和其他任务共用;
[0034]所述执行节点将设置参数提供给所述守护进程;
[0035]所述守护进程根据所述设置参数设置所述目标容器的资源使用权限;所述资源使用权限用于限制所述目标任务对所述资源的最大使用上限,所述资源包括CPU资源和/或内存资源。
[0036]可选的,所述守护进程还用于:
[0037]将所述目标容器在其生命周期内的任务日志重定向到指定文件;和/或
[0038]通过所述守护进程监测所述目标容器内的目标任务的任务状态,为所述执行节点提供状态查询服务。
[0039]可选的,所述服务器还配置有镜像配置程序,用于:
[0040]预先收集各个任务的任务类型,以得到多个任务类型;及
[0041]为每个任务类型分别配置一个镜像,每个任务类型对应的镜像被配置提供相应任务的运行环境。
[0042]本申请实施例提供的任务调度方法、系统、设备及计算机可读存储介质,以及服务器,包括如下优点:
[0043](1)通过目标任务的目标任务类型,从多个待选镜像中选择出目标镜像,以获取所依赖的环境,能够确保所述目标任务的运行不依赖宿主机环境,扩容便捷;
[0044](2)由于每个镜像为某一类型的任务提供容器创建等服务,因此,每个镜像可以做到体积小、且扩容方便,且降低了服务器(宿主主机)的运行压力。
附图说明
[0045]图1示意性示出了根据本申请实施例的任务调度方法的环境架构图;
[0046]图2示意性示出了根据本申请实施例一的服务器的操作流程图;
[0047]图3示意性示出了根据本申请实施例一的服务器中的软件结构图;
[0048]图4示意性示出了根据本申请实施例二的任务调度方法的流程图;
[0049]图5至8示意性示出了根据本申请实施例二的任务调度方法的新增步骤流程图;
[0050]图9示意性示出了根据本申请实施例三的任务调度系统的框图;及
[0051]图10示意性示出了根据本申请实施例四的适于实现任务调度方法的计算机设备的硬件架构示意图。
具体实施方式
[0052]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务调度方法,其特征在于,所述方法包括:接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;根据所述目标任务类型,从多个待选镜像中选择目标镜像;及基于所述目标镜像创建目标容器;其中,所述目标容器用于运行所述目标任务。2.根据权利要求1所述的任务调度方法,其特征在于,还包括:动态设置所述目标容器的资源使用权限;所述资源使用权限用于限制所述目标任务对资源的最大使用上限,所述资源包括CPU资源和/或内存资源。3.根据权利要求2所述的任务调度方法,其特征在于,还包括:判断所述资源使用权限是否满足所述目标任务的当前资源需求;及若所述资源使用权限无法满足所述目标任务的当前资源需求,则停止运行所述目标任务和所述目标容器。4.根据权利要求1所述的任务调度方法,其特征在于,还包括:预先收集各个任务的任务类型,以得到多个任务类型;及为每个任务类型分别配置一个镜像,每个任务类型对应的镜像被配置提供相应任务的运行环境。5.根据权利要求1至4任意一项所述的任务调度方法,其特征在于,所述根据所述目标任务类型,从多个待选镜像中选择目标镜像,包括:通过执行节点从所述多个待选镜像中选择所述目标镜像,并向守护进程发起容器创建请求;所述基于所述目标镜像创建目标容器,包括:通过所述守护进程获取所述容器创建请求;并响应于所述容器创建请求,基于所述目标镜像创建所述目标容器。6.根据权利要求5所述的任务调度方法,其特征在于,还包括:将所述目标容器在其生命周期内的任务日志重定向到指定文件;和/或通过所述守护进程监测所述目标容器内的目标任务的任务状态,为所述执行节点提供状态查询服务。7.一种任务调度系统,其特征在于,所述系统包括:接收模块,用于接收针对目标任务的调度请求,所述调度请求包括所述目标任务的目标任务类型;选择模块,用于根据所述目标任务类型,从多个待选镜像中选择目标镜像;及创建模...

【专利技术属性】
技术研发人员:刘磊韩志华赵孔明
申请(专利权)人:上海哔哩哔哩科技有限公司
类型:发明
国别省市:

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

1