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

技术编号:38014616 阅读:7 留言:0更新日期:2023-06-30 10:38
本发明专利技术公开了一种任务调度方法和系统,该方法应用于kubernetes,通过接收目标任务并在接收到目标任务后获取若干个当前可用计算节点;将目标任务的资源需求参数和当前可用计算节点的当前资源分配参数输入至目标DQN模型,目标DQN模型输出符合预设服务指标的优选节点;对优选节点进行节点匹配并基于匹配结果确定目标计算节点;将目标任务调度至所述目标计算节点。本发明专利技术可通过目标DQN模型从当前可用计算节点中选取符合预设服务指标的优选节点,然后将节点匹配成功的优选节点确定为最终的目标计算节点,最后基于目标计算节点实现任务调度,即本发明专利技术可提高任务调度的服务质量,进而提高用户的使用体验。而提高用户的使用体验。而提高用户的使用体验。

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


[0001]本专利技术涉及计算机
,尤其涉及一种任务调度方法和系统。

技术介绍

[0002]Kubernetes是一种基于Docker技术的分布式容器集群管理系统,该系统可实现容器集群的自动化管理,并为开发人员提供多个用于构建、测试和部署容器化应用程序的工具。任务调度是指根据一定的调度算法和策略,以一定的顺序将计算任务分配给不同的处理器或处理单元,以实现更高效的任务处理和资源利用,在Kubernetes中是指将kubernetes接收到的任务分配给指定计算节点。Kubernetes的任务调度需要经过筛选阶段和优选阶段,在筛选阶段中通过筛选策略对所有节点进行过滤,而优选阶段则根据优先策略对经过筛选的节点进行打分,根据打分结果确定最终的计算节点。其中,筛选策略基本是根据节点可用性以及亲和性进行节点筛选,这部分往往是硬性的约束且相对没有改进的余地,因而kubernetes中任务调度算法主要考虑的是优选策略的设计。
[0003]优选策略之间的区别在于选择的评分标准不同,现有常见的优选策略有:基于集群负载均衡的策略、基于任务依赖或相关性的策略以及基于节点资源利用率均衡性的策略等,但当前这些策略都有相似的缺点,一方面,这些策略都只是简单的数值汇总比较(例如各cpu利用率、内存利用率),在kubernetes上基于go语言实现复杂的调度逻辑较为困难;另一方面,当前调度策略仅着眼于当前的系统或集群、节点的状态,并没有考虑到此次调度之后的任务调度影响,即算法都是即时的,因而滞后性的以任务状态为主的服务质量无法被考量到,但服务质量指标却往往是用户更易感知更为关注的指标。因此现有的任务调度方法服务质量不高,用户体验感差。
[0004]上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。

技术实现思路

[0005]本专利技术的主要目的在于提供一种任务调度方法和系统,旨在解决现有的任务调度方法服务质量不高,用户体验感差的技术问题。
[0006]为实现上述目的,本专利技术提供了一种任务调度方法,所述任务调度方法应用于kubernetes,所述任务调度方法包括:接收目标任务,并在接收到所述目标任务后获取若干个当前可用计算节点;将所述目标任务的资源需求参数和所述当前可用计算节点的当前资源分配参数输入至目标DQN模型,所述目标DQN模型输出符合预设服务指标的优选节点;对所述优选节点进行节点匹配,并基于匹配结果确定目标计算节点;将所述目标任务调度至所述目标计算节点。
[0007]可选地,所述对所述优选节点进行节点匹配,并基于匹配结果确定目标计算节点的步骤,包括:
获取筛选节点集合,并判断所述优选节点与所述筛选节点集合是否匹配;若是,则将所述优选节点作为目标计算节点。
[0008]可选地,所述接收目标任务之前,还包括:在调度架构中配置预设接口函数;注册预设打分插件,并基于预设ConfigMap资源配置文件在所述调度架构的打分扩展点配置所述预设打分插件,所述预设打分插件用于调用目标DQN模型。
[0009]可选地,所述将所述目标任务的资源需求参数和所述当前可用计算节点的当前资源分配参数输入至目标DQN模型之前,还包括:获取预设计算任务,并通过所述预设计算任务进行随机任务调度获取预设数量的训练数据;根据所述预设数量的训练数据创建训练数据集;基于所述训练数据集和预设服务奖励函数对预设DQN模型进行深度强化学习迭代训练,获得目标DQN模型;其中,所述预设服务奖励函数公式为:式中,为服务奖励参数,为平均执行占比,为资源匹配奖励参数。
[0010]可选地,所述基于所述训练数据集和预设服务奖励参数对预设DQN模型进行深度强化学习迭代训练,获得目标DQN模型的步骤,包括:将所述预设计算任务的任务资源需求和所述训练数据集中各计算节点的第一资源分配参数输入预设DQN模型,获得所述各计算节点对应的动作参数;获取所述各计算节点的第二资源分配参数和所述预设DQN模型的当前服务奖励参数;通过所述各计算节点的所述第一资源分配参数、所述动作参数、所述第二资源分配参数和所述当前服务奖励参数确定所述预设DQN模型的当前损失参数;判断所述预设DQN模型的当前损失参数是否小于预设损失参数;若否,则返回至所述将所述预设计算任务的任务资源需求和所述训练数据集中各计算节点的第一资源分配参数输入预设DQN模型的步骤,直至检测到所述预设DQN模型的当前损失参数小于预设损失参数时,将所述预设DQN模型作为目标DQN模型。
[0011]可选地,所述将所述目标任务调度至所述目标计算节点之后,还包括:检测所述目标任务对应的当前奖励周期参数与预设奖励更新周期参数是否匹配;若是,则基于所述预设服务奖励函数确定所述各计算节点的当前服务奖励参数,并基于所述当前服务奖励参数更新所述目标DQN模型的模型参数。
[0012]可选地,所述基于所述当前服务奖励参数更新所述目标DQN模型的模型参数的步骤,包括:获取所述当前可用计算节点的剩余资源分配参数,并根据所述当前服务奖励参数和所述当前可用计算节点的剩余资源分配参数对所述训练数据集进行数据更新;从更新后的训练数据集中获取当前更新四元组;基于所述当前更新四元组确定所述目标DQN模型的当前损失参数;通过所述目标DQN模型的当前损失参数更新所述目标DQN模型的模型参数。
[0013]此外,为实现上述目的,本专利技术还提出一种任务调度系统,所述任务调度系统包括:节点获取模块,用于接收目标任务,并在接收到所述目标任务后获取若干个当前可用计算节点;节点优选模块,用于将所述目标任务的资源需求参数和所述当前可用计算节点的当前资源分配参数输入至目标DQN模型,所述目标DQN模型输出符合预设服务指标的优选节点;节点匹配模块,用于对所述优选节点进行节点匹配,并基于匹配结果确定目标计算节点;调度模块,用于将所述目标任务调度至所述目标计算节点。
[0014]本专利技术公开了一种任务调度方法和系统,该任务调度方法应用于kubernetes,该方法包括:在调度架构中配置预设接口函数;注册预设打分插件,并基于预设ConfigMap资源配置文件在调度架构的打分扩展点配置预设打分插件,预设打分插件用于调用目标DQN模型;接收目标任务并在接收到目标任务后获取若干个当前可用计算节点;将目标任务的资源需求参数和当前可用计算节点的当前资源分配参数输入至目标DQN模型,目标DQN模型输出符合预设服务指标的优选节点;获取筛选节点集合,并判断优选节点与筛选节点集合是否匹配;若是,则将优选节点作为目标计算节点;将目标任务调度至所述目标计算节点。与现有任务调度方法相比,本专利技术可通过目标DQN模型在获取目标任务的资源需求参数和当前可用计算节点的当前资源分配参数后,从若干个当前可用计算节点中选取符合预设服务指标的优选节点;同时,为了提高结果的准确性,本专利技术还会对优选节点进行节点匹配并将节点匹配成功的优选节点确定为最终的目标计算节点;最后将目标任务调度到目标计算节点实现任务调度。具体地,本专利技术可通过在kubernetes的调度架构的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种任务调度方法,其特征在于,所述任务调度方法应用于kubernetes,所述任务调度方法包括:接收目标任务,并在接收到所述目标任务后获取若干个当前可用计算节点;将所述目标任务的资源需求参数和所述当前可用计算节点的当前资源分配参数输入至目标DQN模型,所述目标DQN模型输出符合预设服务指标的优选节点;对所述优选节点进行节点匹配,并基于匹配结果确定目标计算节点;将所述目标任务调度至所述目标计算节点。2.如权利要求1所述的任务调度方法,其特征在于,所述对所述优选节点进行节点匹配,并基于匹配结果确定目标计算节点的步骤,包括:获取筛选节点集合,并判断所述优选节点与所述筛选节点集合是否匹配;若是,则将所述优选节点作为目标计算节点。3.如权利要求2所述的任务调度方法,其特征在于,所述接收目标任务之前,还包括:在调度架构中配置预设接口函数;注册预设打分插件,并基于预设ConfigMap资源配置文件在所述调度架构的打分扩展点配置所述预设打分插件,所述预设打分插件用于调用目标DQN模型。4.如权利要求3所述的任务调度方法,其特征在于,所述将所述目标任务的资源需求参数和所述当前可用计算节点的当前资源分配参数输入至目标DQN模型之前,还包括:获取预设计算任务,并通过所述预设计算任务进行随机任务调度获取预设数量的训练数据;根据所述预设数量的训练数据创建训练数据集;基于所述训练数据集和预设服务奖励函数对预设DQN模型进行深度强化学习迭代训练,获得目标DQN模型;其中,所述预设服务奖励函数公式为:式中,为服务奖励参数,为平均执行占比,为资源匹配奖励参数。5.如权利要求4所述的任务调度方法,其特征在于,所述基于所述训练数据集和预设服务奖励参数对预设DQN模型进行深度强化学习迭代训练,获得目标DQN模型的步骤,包括:将所述预设计算任务的任务资源需求和所述训练数据集中各计算节点的第一资源分配参数输入预设DQN模型,获得所述各计算节点对应的动作参数;获取所述各计算节点的...

【专利技术属性】
技术研发人员:郑烇金庭宇陈双武杨坚谭小彬
申请(专利权)人:中国科学技术大学先进技术研究院
类型:发明
国别省市:

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

1