一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于多集群统一算力的多模式调度系统和方法与流程

2022-10-26 18:34:35 来源:中国专利 TAG:


1.本发明涉及计算机应用的技术领域,特别涉及一种基于多集群统一算力的多模式调度系统和方法。


背景技术:

2.随着kubernetes越来越成熟,使用的企业越来越多,kubernetes也暴漏出来了一些问题,一是kubernetes单集群自身限制。kubernetes单集群节点数不超过5000,每个节点的pod数量不超过110个,pod总数不超过150000,容器总数不超过300000。二是容灾的需求。企业将业务部署在单个大规模集群中比部署在多个较小规模集群中更危险,例如集群出现故障,无法进行故障转移。
3.基于上述kubernetes遇到的问题,企业往往需要运行和管理多个kubernetes集群。如何对多集群的算力进行统一管控,并贴合用户诉求为用户作业选择最优的调度集群成为了亟待解决问题。


技术实现要素:

4.针对现有技术要解决的技术问题,本发明提供了一种基于多集群统一算力的多模式调度系统和方法,用于解决目前对多集群资源进行统一管理调度的难题。
5.为了解决上述问题,本发明的一种基于多集群统一算力的多模式调度系统,包括互相连接的资源管理模块、调度策略模块、监控报警模块;所述资源管理模块用于维护多集群资源视图和基于调度策略为作业分配最优的运行集群;所述的调度策略模块用于提供调度策略供作业选择;所述的监控报警模块用于监控集群资源占用情况,主动发现长时间占用未释放的资源并进行报警。
6.作为优选,所述资源管理模块维护多集群资源视图采用集群资源双向收集策略,所述集群资源双向收集策略包括系统定时向所有集群发送集群资源情况请求;所有集群监控资源变更,主动上报系统集群最新的资源情况。
7.作为优选,所述资源管理模块基于调度策略为作业分配最优的运行集群;作业提交后,资源管理模块根据集群的总资源以及已被占用的资源,计算出当前集群的可用资源,结合作业要求的资源,使用集群过滤器过滤出满足要求的集群,再基于作业期望的调度策略使用集群选择器选择一个最优的集群。
8.作为优选,所述调度策略模块提供的调度策略包括能耗优先策略、经济优先策略、时间优先策略;所述调度策略模块预留调度策略扩展功能,用于自定义调度策略。
9.作为优选,所述监控报警模块监控集群资源占用情况,并在集群资源占用情况不健康时对管理员发出警报;所述监控报警模块主动发现长时间占用未释放的资源并进行处理。
10.作为优选,所述监控报警模块主动发现长时间占用未释放的资源并进行处理包括智能和人工两种方式,智能方式在发现长时间占用未释放的资源后,自动回调资源申请方,确认资源是否确实还在使用,若不在使用,则自动释放,否则,通过监控报警模块发送报警信息给管理员进行人工介入确认。
11.作为优选,所述的集群资源双向收集策略包括:上行主动上报:集群需要部署调度系统agent用于上报相关信息,包括集群资源情况;agent部署在集群侧用于监听集群拓扑结构变更,一旦检测到变更能立即感知,实时上报;下行被动收集:调度策略模块启动定时任务,定时向所有集群下发资源查询请求,收集集群资源信息。
12.本发明还提供了一种基于多集群统一算力的多模式调度方法,包括以下步骤:步骤1:作业创建。作业创建人根据业务需求选择作业类型,填写作业基本信息及运行作业时期望的资源情况,并配置作业期望的集群调度策略,提交作业等待运行;步骤2:计算系统各集群可用资源。采用集群资源双向收集策略收集所有集群总资源情况,结合集群已被分配占用的资源,计算出当前所有集群的可用资源情况;步骤3:集群过滤。根据步骤1作业的期望资源和步骤2当前集群的可用资源,使用集群过滤器依据作业申请占用资源和当前集群可用资源对集群进行过滤,过滤出能满足作业运行要求的集群,若存在满足要求的集群,则转步骤4,否则资源不足分配失败;步骤4:集群选择。基于步骤1作业期望的集群调度策略和步骤3过滤出的满足作业运行要求的集群,使用集群选择器依据集群各维度的分值挑选出最优的集群;步骤5:集群资源占用。依据步骤1作业的期望资源和步骤4挑选出的目标集群,生成资源占用记录,进行集群资源占用;步骤6:作业运行。步骤5集群资源占用成功之后,资源管理模块就可以提交作业到目标集群,开始作业执行;步骤7:集群资源释放。步骤6作业执行结束后,修改步骤5生成的资源占用记录状态,进行集群资源释放。
13.本发明基于多集群统一算力的统一管控,对外直观、准确、实时地展示多集群算力情况,并可以根据作业期望的调度策略从多个集群中选择出最优的集群,进行集群资源的分配,在作业运行完成后,再进行集群资源的释放,通过双向资源收集来确保多集群资源视图的准确性和实时性,为用户作业选择最优的调度集群。
14.本发明的有益效果是:对多集群算力进行统一的集中管控,提供多种可扩展的集群调度策略。多集群统一的集中管控减轻了用户查看多集群算力的人工成本,同时提供了多种集群调度策略,解决了用户在多集群场景下运行作业时不知如何选择集群的烦恼。
附图说明
15.图1为本发明实施例1的系统结构示意图;图2为本发明实施例1的集群资源双向收集策略示意图;图3为本发明实施例1的作业执行步骤流程图;图4为本发明实施例1的监控报警流程图;
图5为本发明实施例1作业执行示意流程图。
具体实施方式
16.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
17.如图1所示,本发明的一种基于多集群统一算力的多模式调度系统,包括互相连接的资源管理模块、调度策略模块、监控报警模块;所述资源管理模块用于维护多集群资源视图和基于调度策略为作业分配最优的运行集群;所述的调度策略模块用于提供调度策略供作业选择;所述的监控报警模块用于监控集群资源占用情况,主动发现长时间占用未释放的资源并进行报警。
18.所述资源管理模块维护多集群资源视图采用集群资源双向收集策略,保证多集群资源视图的准确性和实时性。一方面,系统定时向所有集群发送集群资源情况请求,确保集群资源信息的准确性,另一方面,所有集群监控资源变更,主动上报系统集群最新的资源情况,确保集群资源信息的实时性。集群资源收集应用于集群拓扑图变更场景,比如集群扩缩容,双向收集策略能保证更准确实时地反映当前集群的资源情况,资源视图可以把集群的资源情况更直观地展示给使用方。
19.资源管理模块还承担另外一个重要的功能,基于调度策略为作业分配最优的运行集群。作业提交后,根据集群的总资源以及已被占用的资源,计算出当前集群的可用资源,结合作业要求的资源,使用集群过滤器过滤出满足要求的集群,再基于作业期望的调度策略使用集群选择器选择一个最优的集群。
20.所述调度策略模块提供丰富的调度策略供作业选择,包括能耗优先策略、经济优先策略、时间优先策略;策略实现方式可通过给集群打分的方式实现。
21.能耗优先策略:基于集群部署的地理位置、部署环境等因素给集群能耗打分。比如集群如果部署在常年气温较高的地方,机房就需要安装大型的空调、排风扇等降温设备用于降温,该集群的能耗就会比较高;反之,集群的能耗就会比较低。比如可以使用集群总能耗(包括集群、降温、排风等设备总能耗)/集群gpu总算力为基数来给集群的gpu资源打能耗分。
22.经济优先策略:基于集群的收费等经济方面考虑给集群打经济分。比如使用部署在电费较低地区的集群跑作业的花费可能就比使用部署在电费较高地区的集群便宜。比如可以使用集群gpu的收费标准/gpu的算力为基数来给集群的gpu资源打经济分。
23.时间优先策略:基于集群资源(cpu、gpu)的性能等因素给集群打性能分。对于优先级较高,期望尽快运行出结果的作业,作业运行时长是其优先关注的重点,能耗、花费都是其次。比如可以使用gpu的算力为基数来给集群的gpu资源打性能分。
24.所述调度策略模块预留调度策略扩展功能,用于自定义调度策略,开发专属的定制化策略服务。
25.所述监控报警模块监控集群资源占用情况,查看集群资源的使用是否健康、合理。并在集群资源占用情况不健康时对管理员发出警报,报警方式包括邮件、钉钉、短信、电话
等方式,同时也可以对报警方式进行扩展,开发个性化的报警方式。所述监控报警模块主动发现长时间占用未释放的资源并进行处理。
26.所述监控报警模块主动发现长时间占用未释放的资源并进行处理包括智能和人工两种方式,智能方式在发现长时间占用未释放的资源后,自动回调资源申请方,确认资源是否确实还在使用,若不在使用,则自动释放,否则,通过监控报警模块发送报警信息给管理员进行人工介入确认。
27.如图2所示,所述的集群资源双向收集策略包括:上行主动上报:集群需要部署调度系统agent用于上报相关信息,包括集群资源情况;agent部署在集群侧用于监听集群拓扑结构变更,一旦检测到变更能立即感知,实时上报;下行被动收集:调度策略模块启动定时任务,定时向所有集群下发资源查询请求,收集集群资源信息。
28.如图3所示,本发明还提供了一种基于多集群统一算力的多模式调度方法,包括以下步骤:步骤1:作业创建。作业创建人根据业务需求选择作业类型,填写作业基本信息及运行作业时期望的资源情况,并配置作业期望的集群调度策略,提交作业等待运行;步骤2:计算系统各集群可用资源。采用集群资源双向收集策略收集所有集群总资源情况,结合集群已被分配占用的资源,计算出当前所有集群的可用资源情况;步骤3:集群过滤。根据步骤1作业的期望资源和步骤2当前集群的可用资源,使用集群过滤器依据作业申请占用资源和当前集群可用资源对集群进行过滤,过滤出能满足作业运行要求的集群,若存在满足要求的集群,则转步骤4,否则资源不足分配失败;步骤4:集群选择。基于步骤1作业期望的集群调度策略和步骤3过滤出的满足作业运行要求的集群,使用集群选择器依据集群各维度的分值挑选出最优的集群;步骤5:集群资源占用。依据步骤1作业的期望资源和步骤4挑选出的目标集群,生成资源占用记录,进行集群资源占用;步骤6:作业运行。步骤5集群资源占用成功之后,资源管理模块就可以提交作业到目标集群,开始作业执行;步骤7:集群资源释放。步骤6作业执行结束后,修改步骤5生成的资源占用记录状态,进行集群资源释放。
29.如图4所示,所述的监控报警流程,包括以下流程:流程1:启动定时任务。启动监控定时任务,定时监控集群资源占用情况。
30.流程2:发现长时间占用未释放的资源。流程1将实时监控集群资源情况,及时发现长时间占用未释放的资源。
31.流程3:智能处理。一旦流程2发现有长时间占用未释放的资源,先进行智能处理,回调资源申请方进行确认资源是否仍在使用,若不在使用,自动释放,处理结束;否则,进入流程4人工介入。
32.流程4:人工介入。对流程3智能处理无法判定的记录需人工介入排查资源长时间占用未释放原因,如果作业运行异常,则通知使用方,删除作业,释放资源;如果作业运行正常,则给资源申请记录打标,不再对该记录进行监控。
33.实施例1如图5所示,多集群统一算力的多模式调度系统作业执行示意流程图,包括以下流程:流程1:用户配置作业期望的资源(gpu:2),选择集群调度方式:时间优先策略。
34.流程2:收集所有集群总资源情况:clustera gpu:10,clusterb gpu:20,clusterc gpu:30,所有集群已使用资源情况:clustera gpu:9,clusterb gpu:16,clusterc gpu:27,计算出集群可使用资源情况:clustera gpu:1,clusterb gpu:4,clusterc gpu:3。
35.流程3:根据流程1作业期望的资源(gpu:2),结合流程2计算出的集群可使用资源情况:clustera gpu:1,clusterb gpu:4,clusterc gpu:3,对集群进行过滤,clustera不满足作业要求,被过滤掉。
36.流程4:根据流程1作业选择的集群调度方式:时间优先策略,在流程3过滤出的候选集群中clusterb gpu flops:16.4tflops:4,clusterc gpu flops:19.5tflops依据集群gpu型号算力进行选择,选择出目标集群clusterc。
37.流程5:对流程4选择出的目标集群clusterc的资源进行占用。
38.流程6:把作业提交到目标集群clusterc运行。
39.流程7:作业执行结束,对作业占用的目标集群clusterc的资源进行释放,所有流程结束。
40.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献