一种用于调整计算集群中计算任务资源的方法和系统技术方案

技术编号:34987529 阅读:16 留言:0更新日期:2022-09-21 14:32
本发明专利技术公开一种用于调整计算集群中计算任务资源的方法和系统,属于集群计算、分布式计算、自动化资源管理、资源使用效率技术领域,特别涉及一种用于调整计算集群中计算任务资源的方法,包括:状态转换触发器读取触发策略;状态转换触发器监测工作负载,并根据触发策略评估、设置工作负载的运行状态,使得工作负载的运行状态被设置为“已暂停”时,控制器释放工作负载占用的资源。本发明专利技术方案中,工作负载和状态转换触发器两个模块,分别承担的不同的角色,独立运行,使得整个系统能够更加灵活的处理各种场景,并更加鲁棒。本方案可以自由地配置触发策略,以及动态地修改和加载各种触发策略,可维护性高,便于对计算集群进行系统化的统一管理。统一管理。统一管理。

【技术实现步骤摘要】
一种用于调整计算集群中计算任务资源的方法和系统


[0001]本专利技术属于集群计算、分布式计算、自动化资源管理、资源使用效率
,特别涉及一种用于调整计算集群中计算任务资源的方法和系统。

技术介绍

[0002]在分布式计算集群(例如Kubernetes,Kubernetes是一个流行的主要由 Google贡献的分布式集群计算管理系统)中,一些工作负载和计算任务,例如 Jupyter Notebook、Dask、MPI、Ray 等,长时间地占用分布式集群中的 CPU、内存、GPU 等计算资源,但是并没有在真正地使用这些资源,从而造成资源的闲置和浪费。
[0003]现有技术中,通常采用以下几种方式进行资源调配,以避免资源浪费,包括:纵向扩展,例如 Kubernetes Autoscaler 是指手动或自动地将计算任务声明的所要使用的计算资源增大或减小。这种方案假设计算任务的运行规模可以通过简单的改变 RAM/CPU 需求实现。
[0004]横向扩展,例如 Horizontal Pod Autoscaler,这种方法是指手动或自动地将计算任务底层的计算节点(在 Kubernetes 中称为 Pod)的个数增加或减小。这种方案假设计算任务的运行规模可以简单的增减运行的副本数目来实现。
[0005]自发弹性伸缩,例如 Elastic Jupyter Operator 中,其将一个特定计算任务切割为一个常驻的网页应用和后台计算的模块,并根据需要开启/终止后台的计算模块。这个方式要求每个特定计算任务本身实现触发策略,并仅对当前计算任务适用,缺乏灵活性。
[0006]本专利技术人经研究发现,现有技术方案中,需要针对特定的计算任务进行相应的适配,甚至要求计算任务底层的运算方式进行较大的变动,现有技术方案灵活性差,不具有通用性。

技术实现思路

[0007]为了至少解决上述技术问题,本专利技术提供了一种用于调整计算集群中计算任务资源的方法和系统。
[0008]根据本专利技术第一方面,提供了一种用于调整计算集群中计算任务资源的方法,包括:状态转换触发器读取触发策略;状态转换触发器监测工作负载,并根据触发策略评估、设置工作负载的运行状态,使得工作负载的运行状态被设置为“已暂停”时,控制器释放工作负载占用的资源。
[0009]进一步的,所述触发策略与工作负载适配设置。
[0010]进一步的,所述工作负载的运行状态包括:“已暂停”状态和“繁忙”状态;当所述工作负载的运行状态被设置为“已暂停”时,保存当前数据,记录进入“已暂
停”状态的时间,停止占用资源的底层Pod;当工作负载从“已暂停”状态恢复,即进入“繁忙”状态时,启动 Pod,并恢复数据,记录进入“繁忙”状态的时间。
[0011]进一步的,所述“已暂停”状态包括:“正常”、“节省”、“暂停”,其中,“正常”状态用于表示工作负载处于全功能,正常运转状态,使用所有申请的资源;“节省”状态用于表示工作负载处于低资源使用模式,仅申请能够维持其基本功能的计算资源;“暂停”状态用于表示工作负载处于暂时终止状态,其还能对外部提供一些基本的反馈。
[0012]进一步的,所述触发策略包括:当预设时间内未检测到网络流量时,将工作负载暂停,并将工作负载的状态调整为“已暂停”。
[0013]进一步的,所述触发策略包括:在未接收到任何人机交互指令时,将工作负载暂停,并将工作负载的状态调整为“已暂停”。
[0014]进一步的,状态转换触发器读取触发策略;状态转换触发器监测工作负载,并根据触发策略评估、设置工作负载的运行状态,使得工作负载的运行状态被设置为“已暂停”时,控制器释放工作负载占用的资源;所述触发策略为在未接收到任何人机交互指令时,将工作负载暂停,并将工作负载的状态调整为“已暂停”;所述“已暂停”状态包括:“正常”、“节省”、“暂停”,其中,“正常”状态用于表示工作负载处于全功能,正常运转状态,使用所有申请的资源;“节省”状态用于表示工作负载处于低资源使用模式,仅申请能够维持其基本功能的计算资源;“暂停”状态用于表示工作负载处于暂时终止状态,其还能对外部提供一些基本的反馈;当所述工作负载的运行状态被设置为“已暂停”时,保存当前数据,记录进入“已暂停”状态的时间,停止占用资源的底层Pod;当工作负载从“已暂停”状态恢复,即进入“繁忙”状态时,启动 Pod,并恢复数据,记录进入“繁忙”状态的时间。
[0015]根据本专利技术第二方面,一种用于调整计算集群中计算任务资源的系统,包括:工作负载和状态转换触发器;其中,工作负载用于及时报告运行状态;状态转换触发器,用于读取触发策略;用于监测工作负载,并根据触发策略评估、设置工作负载的运行状态,使得工作负载的运行状态被设置为“已暂停”时,控制器释放工作负载占用的资源。
[0016]根据本专利技术第三方面,一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本专利技术第一方面中任一
项所述方法的步骤。
[0017]根据本专利技术第四方面,一种计算机可读存储介质,所述计算机可读存储介质存储有程序,所述程序被执行时,能够实现本专利技术第一方面中任一项所述的方法。
[0018]本专利技术的有益效果:本专利技术方案中的工作负载和状态转换触发器两个模块是互相独立的运算过程;状态触发器负责观测工作负载的状态,并评估触发策略。 这两个模块分别承担的不同的角色,独立运行,但遵循预设的协议,使得整个系统能够更加灵活的处理各种场景,并更加鲁棒。另外本方案提供了一个通用的接口和工作模式,可以对多种工作负载提供支持,而不是限制在某一类特定的工作负载。进一步地,本方案可以自由地配置针对哪些种类的工作负载执行触发策略,以及动态地修改和加载各种触发策略,具有高度的可维护性,便于管理员对计算集群进行系统化的统一管理。
附图说明
[0019]本专利技术上述的和 / 或附加的方面和优点从下面结合附图对实施例的描述中将变 得明显和容易理解,其中,图1为本专利技术提供的一种用于调整计算集群中计算任务资源的方法流程图;图2为本专利技术提供的一种用于调整计算集群中计算任务资源的系统结构示意图。
具体实施方式
[0020]下面详细描述本专利技术的实施例,所述实施例的示例在附图中示出,其中自始至终 相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附 图描述的实施例是示例性的,仅用于解释本专利技术,而不能解释为对本专利技术的限制。
[0021]为了更清楚地说明本专利技术,下面结合优选实施例和附图对本专利技术做进一步的说明。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本专利技术的保护范围。
[0022]在本专利技术的第一方面,提供一种用于调整计算集群中计算任务资源的方法,如图1所示,包括:步骤101:状态转换触发器读取触发策略;本专利技术中,系统管理员可以针对不同的工作负载创建对应的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
状态的时间,停止占用资源的底层Pod;当工作负载从“已暂停”状态恢复,即进入“繁忙”状态时,启动 Pod,并恢复数据,记录进入“繁忙”状态的时间。8.一种用于调整计算集群中计算任务资源的系统,其特征在于,包括:工作负载和状态转换触发器;其中,工作负载用于及时报告运行状态;状态转换触发器,用于读取触发策略;用于监测工作负载,并根据触发策略评估、设置工作负载的运行状态,使得工作负载的运行状态被设置为“已暂...

【专利技术属性】
技术研发人员:王明亮徐达
申请(专利权)人:北京向量栈科技有限公司
类型:发明
国别省市:

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

1