机器学习集群算力资源运维方法、系统、设备及存储介质与流程

未命名 08-15 阅读:116 评论:0


1.本技术涉及机器学习技术领域,尤其涉及一种机器学习集群算力资源运维方法、系统、设备及存储介质。


背景技术:

2.机器学习平台的集群的算力资源日常运维管理涉及到平台集群搭建、机器学习任务算力资源池的扩缩容和负载均衡、算力资源节点的监控告警和故障下线、以及节点故障后机器学习任务的自动迁移等动作。
3.目前,算力资源运维管理通常由运维人员通过监控曲线及异常告警等渠道方式来人为感知上述运维需求,并根据过往经验进行运维方案制定,最后通过人工手段对制定的运维方案进行操作执行,以完成一次运维需求。然而,这样的算力资源运维管理方式会导致响应需求的时间不可控、运维方案的准确性不可控以及人工操作引起的操作风险,从而造成算力资源运维管理准确度和效率的低下。


技术实现要素:

4.本技术实施例的主要目的在于提出一种机器学习集群算力资源运维方法、系统、设备及存储介质,能够在提高机器学习集群日常算力资源运维管理准确度的同时,提高算力资源运维管理的效率。
5.为实现上述目的,本技术实施例的第一方面提出了一种机器学习集群算力资源运维方法,应用于控制中心,所述控制中心与至少一个用于执行机器学习任务的集群通信连接,所述集群包括多个工作节点,所述工作节点用于执行所述机器学习任务,所述方法包括:获取工作节点执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征所述工作节点执行所述机器学习任务时的执行状态;根据所述算力资源数据进行运维分析,得到运维需求;获取所述运维需求对应的任务模版,所述任务模版包含算力资源调度策略,所述算力资源调度策略用于表征所述任务模版对应的算力资源调度计划;根据所述运维需求和所述任务模版,确定算力资源调度指令;输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源。
6.在一些实施例中,所述算力资源数据包括集群算力资源数据

节点算力资源数据和节点算力资源故障数据;所述方法还包括获取算力资源范围值,所述算力资源范围值用于表征所述算力资源数据的范围,所述算力资源范围值包括第一算力资源范围值、第二算力资源范围值和第三算力资源范围值,所述算力资源范围值与所述算力资源数据对应;所述根据所述算力资源数据进行运维分析,得到运维需求,包括:若所述集群算力资源数据不在第一范围值内,确定所述运维需求为算力资源扩缩容需求;若所述节点算力资源数据不在第二范围值内,确定所述运维需求为算力资源负载均衡需求;若所述节点算力资源故障数据不在第三范围值内,确定所述运维需求为算力资源上下线需求。
7.在一些实施例中,所述方法还包括运维任务,所述运维任务用于确定所述目标算力资源,所述运维任务包括第一运维任务、第二运维任务和第三运维任务;所述获取所述运维需求对应的任务模版之后,包括:获取执行所述机器学习任务时的第一初始算力资源;确定所述第一运维任务为算力资源增加任务,根据所述算力资源增加任务进行算力资源扩充,得到所述第一初始算力资源以外的增加算力资源,确定所述增加算力资源和所述第一初始算力资源的和为第一目标算力资源;或者,确定所述第一运维任务为算力资源减少任务,根据所述算力资源减少任务进行算力资源缩减,得到所述第一初始算力资源以外的减少算力资源,确定所述减少算力资源和所述第一初始算力资源的差值为第二目标算力资源。
8.在一些实施例中,所述获取所述运维需求对应的任务模版之后,还包括:获取执行所述机器学习任务时的第二初始算力资源;确定所述第二运维任务为算力资源迁移任务,根据所述算力资源迁移任务进行算力资源迁移,得到迁移算力资源,根据所述迁移算力资源,确定所述算力资源迁移后的所述第二初始算力资源为第三目标算力资源;确定所述第三运维任务为算力资源上线任务,根据所述算力资源上线任务进行算力资源上线,得到所述第二初始算力资源以外的上线算力资源,确定所述上线算力资源和所述第二初始算力资源的和为第四目标算力资源;或者,确定所述第三运维任务为算力资源下线任务,根据所述算力资源下线任务进行算力资源下线,得到所述第二初始算力资源以外的下线算力资源,确定所述下线算力资源和所述第二初始算力资源的差值为第五目标算力资源。
9.在一些实施例中,所述任务模版包括扩缩容模版、负载均衡模版和上下线模版,所述算力资源调度策略包括多个需要执行的所述运维任务以及所述运维任务的运维任务顺序,所述获取所述运维需求对应的任务模版,包括:获取所述扩缩容模版的扩缩容参数信息和第一算力资源调度策略;所述扩缩容参数信息用于表征所述扩缩容模版对应的第一执行数量和第一执行关联;所述第一算力资源调度策略用于确定所述第一算力资源调度策略包括的所述运维任务为所述第一运维任务和所述第二运维任务;确定所述第一算力资源调度策略的所述运维任务顺序为所述第一运维任务和所述第二运维任务。
10.在一些实施例中,所述获取所述运维需求对应的任务模版,还包括:获取所述负载均衡模版的负载参数信息和第二算力资源调度策略;所述负载参数信息用于表征所述负载均衡模版对应的第二执行数量和第二执行关联;所述第二算力资源调度策略用于确定所述第二算力资源调度策略包括的所述运维任务为所述第一运维任务和所述第二运维任务;确定所述第二算力资源调度策略的所述运维任务顺序为所述第二运维任务和所述第一运维任务。
11.在一些实施例中,所述获取所述运维需求对应的任务模版,包括:获取所述上下线模版的上下线参数信息和第三算力资源调度策略;所述上下线参数信息用于表征所述上下线模版对应的第三执行数量和第三执行关联;所述第三算力资源调度策略用于确定所述第三算力资源调度策略包括的所述运维任务为所述第一运维任务、所述第二运维任务和所述第三运维任务;确定所述第三算力资源调度策略的所述运维任务顺序为所述第三运维任务、所述第一运维任务、所述第二运维任务和所述第一运维任务。
12.在一些实施例中,所述输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源之后,包
括:获取所述工作节点执行所述机器学习任务的执行数据;当执行数据出现异常时,采取熔断策略,根据所述熔断策略对所述机器学习任务进行熔断控制。
13.在一些实施例中,所述输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源之后,还包括:在所述机器学习任务的任务生命周期内进行任务记录,并将所述任务记录保存至预设的信息库中;通过所述信息库,执行任务查询和任务管理,所述任务查询用于查询所述信息库内的所述任务记录,所述任务管理用于对所述机器学习任务进行执行干预。
14.为实现上述目的,本技术实施例的第二方面提出了一种机器学习集群算力资源运维方法,应用于工作节点,控制中心与至少一个用于执行机器学习任务的集群通信连接,所述集群包括多个所述工作节点,所述工作节点用于执行所述机器学习任务,所述方法包括:生成正在执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征各工作节点执行所述机器学习任务时的执行状态;获取执行所述机器学习任务的算力资源调度指令,并根据所述算力资源调度指令确定目标算力资源,所述目标算力资源用于执行所述机器学习任务。
15.为实现上述目的,本技术实施例的第三方面提出了一种机器学习集群算力资源运维系统,所述系统包括:算力资源数据采集模块,用于获取工作节点执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征所述工作节点执行所述机器学习任务时的执行状态;运维分析模块,用于根据所述算力资源数据进行运维分析,得到运维需求;任务模版获取模块,用于获取所述运维需求对应的任务模版,所述任务模版包含算力资源调度策略,所述算力资源调度策略用于表征所述任务模版对应的算力资源调度计划;指令生成模块,用于根据所述运维需求和所述任务模版,确定算力资源调度指令;任务调度模块,用于输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源。
16.为实现上述目的,本技术实施例的第四方面提出了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面实施例所述的机器学习集群算力资源运维方法,或第二方面实施例所述的机器学习集群算力资源运维方法。
17.为实现上述目的,本技术实施例的第五方面提出了一种存储介质,所述存储介质为计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面实施例所述的机器学习集群算力资源运维方法,或第二方面实施例所述的机器学习集群算力资源运维方法。
18.本技术实施例提出的机器学习集群算力资源运维方法、系统、设备及存储介质,机器学习集群算力资源运维方法可以应用在机器学习集群算力资源运维系统中。通过执行机器学习集群算力资源运维方法,控制中心可以得到正在执行机器学习任务的工作节点的算力资源数据,并对算力资源数据进行分析得到运维需求,根据运维需求和任务模版确定算力资源调度指令,其中,任务模版中包括算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划,将生成的算力资源调度指令输出至工作节点,以使工作节点按照算力资源调度指令,确定执行机器学习任务的目标算力资源。本技术能够在提高机器学习集群日常算力资源运维管理准确度的同时,提高算力资源运维管理的效率。
附图说明
19.图1a是本技术实施例提供的机器学习集群算力资源运维系统的架构示意图;
20.图1b是本技术实施例提供的机器学习集群算力资源运维系统的控制中心模块示意图;
21.图2是基于图1b的机器学习集群算力资源运维流程示意图;
22.图3是本技术实施例机器学习集群算力资源运维系统的主要活动示意图;
23.图4是本技术实施例提供的机器学习集群算力资源运维方法的一个可选的流程图;
24.图5是图4中的步骤s102的一个实现流程图;
25.图6是图4中的步骤s103之后的一个实现流程图;
26.图7是图4中的步骤s103之后的又一个实现流程图;
27.图8是图4中的步骤s103的一个扩缩容实现流程图;
28.图9是图4中的步骤s103的一个负载均衡实现流程图;
29.图10是图4中的步骤s103的一个上下线实现流程图;
30.图11是图4中的步骤s105之后的一个实现流程图;
31.图12是图4中的步骤s105之后的又一个实现流程图;
32.图13是本技术实施例提供的机器学习集群算力资源运维方法的另一个可选的流程图;
33.图14是本技术实施例提供的机器学习集群算力资源运维的功能模块示意图;
34.图15是本技术实施例提供的电子设备的硬件结构示意图。
具体实施方式
35.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。
36.需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
37.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本技术实施例的目的,不是旨在限制本技术。
38.首先,对本技术中涉及的若干名词进行解析:
39.机器学习任务,指的是机器通过统计学算法,对大量历史数据进行学习,进而利用生成的经验模型指导业务,该任务主要研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
40.算力资源,指的是所有可调用的计算资源的总和,涵盖软硬件,本地及远程资源,在本实施例中,算力资源指的是能够执行机器学习任务的计算资源总和。
41.运维,指的是对网络、服务器等生命周期各个阶段的运营与维护,其目的是使得网
络、服务器等的成本、稳定性、效率上达成一致可接受的状态。
42.执行机器学习任务的集群需要进行算力资源日常运维管理。机器学习平台的集群的算力资源日常运维管理涉及到平台集群搭建、机器学习任务算力资源池的扩缩容和负载均衡、算力资源节点的监控告警和故障下线、以及节点故障后机器学习任务的自动迁移等动作。
43.但是,相关技术中,算力资源运维管理通常由运维人员通过监控曲线及异常告警等渠道方式来人为感知上述运维需求,并根据过往经验进行运维方案制定,最后通过人工手段对制定的运维方案进行操作执行,以完成一次运维需求。然而,这样的算力资源运维管理方式会导致响应需求的时间不可控、运维方案的准确性不可控以及人工操作引起的操作风险,从而造成算力资源运维管理准确度和效率的低下。
44.基于此,本技术实施例提供了一种机器学习集群算力资源运维方法、系统、设备及存储介质,能够对监测采集到的算力资源数据进行分析,得到运维需求,并根据任务模版得到算力资源调度指令,最终依据算力资源调度指令确定目标算力资源,使得运维智能化、自动化,释放了运维人力,做到无人值守的实时、精准、安全的资源运维,从而能够在提高机器学习集群日常算力资源运维管理准确度的同时,提高算力资源运维管理的效率。
45.本技术实施例提供的机器学习集群算力资源运维方法、系统、设备及存储介质,具体通过如下实施例进行说明,首先描述本技术实施例中的机器学习集群算力资源运维系统。
46.示例性的,如图1a所示,图1a是本技术实施例提供的机器学习集群算力资源运维系统的架构示意图,机器学习集群算力资源运维系统包括控制中心和多个集群(cluster),其中,集群又包括多个工作节点。
47.示例性的,如图1b所示,图1b是本技术实施例提供的机器学习集群算力资源运维系统的控制中心模块示意图,其中,图1b进一步细化了图1a中控制中心部分,图1b中的省略号表示与控制中心相连的集群可以有多个,而集群中包括多个工作节点,此部分在图1a中已示出,在图1b中不做重复展示,控制中心(server端)设置有多个模块,分别是:
48.监控采集和分析模块(monitor),该模块负责汇总集群资源监控采集的指标数据,并进行多维度分析,如计算单元纬度、资源节点纬度、集群纬度等。monitor模块最终分析生成各类运维需求供后续模块处理,即依据任务模版的定义来生成对应具体待调度的task任务。并通过采集监控链路相关指标,包括:业务服务指标、业务性能指标、节点健康状态、节点负载、集群负载(性能负载和存储负载)、集群负载均衡状态等等,进而分析并掌握上述资源各纬度(计算单元、节点、集群)实时状态,并做出后续自动运维动作。
49.任务模版模块(tasktemplate),该模块用于定义任务模型信息,包括任务参数信息、任务流各步骤功能逻辑、任务步骤上下文等。另外模版中还会定义有用于调度的元数据,例如调度状态、调度策略、调度优先级、调度依赖以及并发策略,管理系统针对以上内容提供了任务模版调度元数据的编辑和配置功能等,管理系统依据任务模版生成运维管理任务。
50.任务调度模块(taskscheduler),该模块主要功能是依据任务模版元数据中定义的调度策略,来指导具体运维任务分发执行。另外调度模块还会定义全局策略,如熔断策略。
51.任务模块(task),该模块会存储具体任务记录,跟踪任务生命周期,并支持任务在生命周期内查询和管理操作,能够人工干预任务执行过程来应对突发状况,例如:暂停、重启、重试、终止、任务步骤跳转等。另外任务模块支持复杂父任务拆分成子任务,管理父子任务关联关系和任务执行过程中的干预。
52.任务流模块(workflow),该模块定义任务各步骤具体执行逻辑,根据任务参数信息启动任务,根据步骤上下文信息串联任务流,可响应任务流管理事件event。任务流模块与其它多个控制系统交互完成既定功能,如通过控制中心与agent端工作节点的命令交互通道,向工作节点发送各类控制指令等。
53.具体地,server端的核心逻辑和流程为:通过采集双向探测数据,实时掌控机器学习平台任务资源侧的资源池和工作节点运行状态,以及学习任务的执行状态和负载情况等,经过分析模块定时任务分析,生成学习任务的准实时资源管控需求和资源池资源调度需求;再通过任务模版映射成具体管控任务;最后任务通过调度模块触发启动,由执行具体步骤逻辑的任务流完成所有动作。
54.示例性地,在图1b所示的右半边矩形框内为机器学习集群算力资源运维系统的工作端(agent端),控制中心(server端)设置的多个模块部署在集群的各工作节点,既有工作节点间链路通信,也有工作节点与中心化服务端链路通信;不仅会采集上报本工作节点性能指标和状态数据,同时也会采集上报关联工作节点信息;在采集上报数据的同时也会执行中心端通过命令通道下发的各类指令。
55.如图2所示,图2是基于图1b的机器学习集群算力资源运维流程示意图,机器学习集群算力资源运维系统也可以叫机器学习平台,机器学习平台资源自动化、智能化管理流程的逻辑步骤现简要描述如下:
56.1.节点上报(nodereport),资源池和节点向中心侧服务上报运行状态的各类数据;
57.2.采集数据(collect),中心端收集器采集、格式化、分类上报数据;
58.3.分析数据(analysis),定时任务多线程并发分析采集数据;
59.4.生成运维需求(event),根据分析结果,生成各类管理事件,即资源运维需求;
60.5.创建任务(createtask),将运维需求映射成管控任务,创建任务并设置参数和上下文信息;
61.6.任务调度(schedulertask),调度模块根据配置策略调度等待队列中的管理任务;
62.7.流程任务(workflowtask),触发执行任务流各步骤逻辑,完成任务。
63.此外,机器学习平台统一资源管理模块主要运维需求的活动如图3所示,图3是本技术实施例机器学习集群算力资源运维系统的主要活动示意图,现分别简要说明:
64.1.集群资源扩缩容(scale ln/out):如图3所示,按路径(1)

(2)

(3)完成集群资源扩缩容,具体地,系统实时采集集群资源使用率,智能分析集群算力资源扩缩需求,然后下发扩缩任务。集群资源扩缩任务完成后会造成集群各工作节点负载失衡,因此会智能生成训练任务迁移需求,最终完成负载均衡。另外,采集的集群资源使用率存有历史数据,用于分析资源消耗走势,可做集群资源未来预测,指导集群硬件资源搭建与采购等下游流程,该流程也可智能完成。
65.2.集群资源负载均衡(loadbalance):如图3所示,按路径(a)

(b)

(c)完成集群资源负载均衡,具体地,系统实时采集集群各工作节点负载状态,依据资源负载配置决策将训练任务进行动态迁移,实时保障集群算力负载均衡。任务动态迁移过程,有时会感知到集群资源扩缩需求,进而生成并完成扩缩任务。
66.3.集群资源上下线(on/off line):如图3所示,按路径(i)

(ii)

(iii)

(iv)完成集群资源上下线,具体地,系统通过中心端与节点段双向探测方案,即中心端主动探测工作节点服务状态,以及工作节点端心跳数据上报中心端,实时采集集群工作节点健康状态信息,该类信息既有硬件设备状态,也包含工作节点业务服务状态。当线上资源突发故障时,资源管理系统自动感知并针对故障工作节点下发下线任务,工作节点下线任务时会触发训练任务迁移动作。由于资源有下线动作,任务也有迁移动作,自动会引发集群资源扩容动作和集群资源负载均衡动作等。资源上下线除了用于应对突发故障,也可用于集群资源轮转运维行动,例如线上资源做硬件离线升级操作等。
67.机器学习集群算力资源运维方法旨在释放运维人力,做到无人值守的实时、精准、安全、高效资源运维。通过多维度监控采集链路,实时、完备监控数据,可完全掌控集群资源运行状态;通过监控分析逻辑生成具体运维需求,结合运维操作经验智能做出运维决策,创建运维活动任务;最后智能调度、执行任务达成运维目标。机器学习平台时刻都在对集群资源做调优动作,保证集群时刻都处于最佳状态。
68.基于此,本技术实施例中的机器学习集群算力资源运维方法可以通过如下实施例进行说明。
69.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
70.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
71.本技术实施例提供的机器学习集群算力资源运维方法,涉及人工智能技术领域。本技术实施例提供的机器学习集群算力资源运维方法可应用于终端中,也可应用于服务器端中,还可以是运行于终端或服务器端中的软件。在一些实施例中,终端可以是智能手机、平板电脑、笔记本电脑、台式计算机等;服务器端可以配置成独立的物理服务器,也可以配置成多个物理服务器构成的服务器集群或者分布式系统,还可以配置成提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn以及大数据和人工智能平台等基础云计算服务的云服务器;软件可以是实现机器学习集群算力资源运维方法的应用等,但并不局限于以上形式。
72.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中
描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
73.需要说明的是,在本技术的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,例如,获取用户存储的数据以及用户的缓存数据访问请求时,均会先获得用户的许可或者同意;在获取资源的数据时,本技术实施例会先获得用户的许可或者同意。而且,对这些数据的收集、使用和处理等,都会遵守相关法律法规和标准。此外,当本技术实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本技术实施例能够正常运行的必要的用户相关数据。
74.如图4所示,图4是本技术实施例提供的机器学习集群算力资源运维方法的一个可选的流程图,图4中的方法可以包括但不限于包括步骤s101至步骤s104。
75.步骤s101,获取工作节点执行机器学习任务时的算力资源数据,其中,算力资源数据用于表征工作节点执行机器学习任务时的执行状态;
76.需要说明的是,本技术实施例中的机器学习集群算力资源运维方法可以应用在上述实施例中的系统中,系统的各个模块已经在上述实施例中描述清楚,在此不再赘述。需要指出的是,本技术实施例中的机器学习集群算力资源运维系统也可以称为机器学习中的平台,即机器学习平台,或者机器学习平台统一资源管理模块,在此不做限制。
77.在一些实施例中,机器学习集群算力资源运维方法可以应用于控制中心,控制中心与至少一个用于执行机器学习任务的集群通信连接,集群包括多个工作节点,工作节点用于执行机器学习任务。
78.在一些实施例中,机器学习当中可能存在有多个需要执行的任务,当工作节点执行该任务时,必然会产生算力资源数据,对该算力资源数据进行获取的目的是对其进行数据分析,也称运维分析,以发现运维需求,进而能够针对该运维需求生成算力资源调度指令,以指导工作节点算力资源的调度。
79.在一些实施例中,机器学习任务通常由一个或者多个集群完成,集群中包含多个工作节点,也就是说,机器学习任务是由多个工作节点共同完成,控制中心与各工作节点连接,控制中心能够自动获取各工作节点的算力资源数据,算力资源数据可以是每个工作节点在执行分配到的机器学习任务时的使用率,或者其他与机器学习任务相关的指标,在此不做限制。
80.在一些实施例中,控制中心可以定时获取与之相连的各工作节点的算力资源数据,示例性地,可以设定间隔相同时间进行算力资源数据的获取,或者,在白天机器学习任务繁重时,设置间隔第一时间进行算力资源数据的获取,在夜晚机器学习任务较少时,设置间隔第二时间进行算力资源数据的获取,其中,第一时间的时长小于第二时间,控制中心定时获取各工作节点的算力资源数据可以使得机器学习集群算力资源运维系统及时发现运维需求,并及时根据运维需求生成对应的算力资源调度指令,确定执行机器学习任务的目标算力资源,其中,目标算力资源表示在当前机器学习任务下能够使工作节点合理运行且
不会出现故障的资源量,这样,能够保证工作节点时刻处于最佳状态。
81.步骤s102,根据算力资源数据进行运维分析,得到运维需求;
82.在一些实施例中,在获取算力资源数据之后,控制中心能够对其进行运维分析,其中,运维分析的依据可以是预先设定好的算力资源范围值,通过对比获取到的算力资源数据和预先设定好的算力资源范围值,捕获算力资源数据的不合理之处,从而得到运维需求。
83.步骤s103,获取运维需求对应的任务模版,任务模版包含算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划;
84.在一些实施例中,算力资源调度指令通过运维需求和任务模版确定,其中,任务模版中包含有算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划,也就是说,当工作节点产生运维需求后,能够根据所具体的运维需求找到对应的任务模版,以根据任务模版中的算力资源调度策略做出算力资源调整。
85.在一些实施例中,任务模版通过人工制定得到,例如,操作人员能够根据运维经验设定运维需求对应的任务模版中的模版参数,以使产生其中一个运维需求时,能够在对应的任务模版中找到相应的运维解决办法,以达到智能运维的目的;或者,任务模版能够根据需求进行智能调整,例如,在不断地机器学习任务学习的过程中,控制中心感知到工作节点的算力提高了,当产生扩容需求时,原先在任务模版中需要扩充两个工作节点,而由于各节点的算力提高,仅需增加一个工作节点就能满足算力需求,此时,控制中心能够智能修改任务模版中的内容,使得智能运维更合理化、自主化。
86.步骤s104,根据运维需求和任务模版,确定算力资源调度指令;
87.在一些实施例中,控制中心能够根据运维需求和对应的任务模版,确定算力资源调度指令,该算力资源调度指令用于发送至工作节点中,以使工作节点能够根据该算力资源调度指令确定执行所述机器学习任务的目标算力资源。
88.步骤s105,输出算力资源调度指令到工作节点,以使工作节点按照算力资源调度指令,确定执行机器学习任务的目标算力资源。
89.在一些实施例中,与控制中心相连的集群可以有多个,本技术实施例的机器学习集群算力资源运维方法可以针对任意一个集群中包含的工作节点进行算力资源运维,并且可以在具体执行过程中,选定当前正在进行的机器学习任务的算力资源为初始算力资源,选定按算力资源调度指令进行资源调度后的算力资源为目标算力资源。
90.在一些实施例中,将算力资源调度指令发送至工作节点中,以使工作节点能够根据该算力资源调度指令确定执行所述机器学习任务的目标算力资源,这样的机器学习集群算力资源运维方法,减少了由于人工运维带来的运维失误,同时智能运维提高了机器学习集群算力资源运维系统的运维效率。
91.示例性地,与控制中心相连的一个集群中包含5个工作节点,在未经算力资源调度之前,5个工作节点的算力资源使用率均为85%,确定此时的算力资源为初始算力资源,例如,预先设定了工作节点的算力阈值为80%,由于此时的初始算力资源超出了算力阈值,因此需要进行算力资源调整,增加一个工作节点进行算力资源调度,经过算力资源调度之后,6个工作节点的算力资源使用率均为70%,确定此时的算力资源为目标算力资源。
92.如图5所示,图5是图4中的步骤s102的一个实现流程图,在一些实施例中,步骤s102可以包括步骤s201至步骤s203:
93.步骤s201,若集群算力资源数据不在第一范围值内,确定运维需求为算力资源扩缩容需求;
94.步骤s202,若节点算力资源数据不在第二范围值内,确定运维需求为算力资源负载均衡需求;
95.步骤s203,若节点算力资源故障数据不在第三范围值内,确定运维需求为算力资源上下线需求。
96.在一些实施例中,机器学习过程中,可以预先设定算力资源范围值,算力资源范围值包括第一算力资源范围值、第二算力资源范围值和第三算力资源范围值,算力资源范围值与算力资源数据对应,算力资源范围值用于表征算力资源数据的范围,其中,算力资源数据包括集群算力资源数据

节点算力资源数据和节点算力资源故障数据。
97.示例性地,设定第一算力资源范围值为20%至80%,第一算力资源范围值与集群算力资源数据对应,用于表示集群算力资源数据的正常范围,通过获取到的集群算力资源数据进行运维分析,若集群算力资源数据不在第一算力资源范围值表示的范围值内,确定运维需求为算力资源扩缩容需求。
98.或者,设定第二算力资源范围值为20%至80%,第二算力资源范围值与节点算力资源数据对应,用于表示节点算力资源数据的正常范围,通过获取到的节点算力资源数据进行运维分析,若节点算力资源数据不在第二算力资源范围值表示的范围值内,确定运维需求为算力资源负载均衡需求。
99.或者,设定第三算力资源范围值为0,第三算力资源范围值与节点算力资源数据对应,用于表示节点算力资源故障数据的正常范围,通过获取到的节点算力资源故障数据进行运维分析,若节点算力资源数据不在第三算力资源范围值表示的范围值内,确定运维需求为算力资源上下线需求。
100.如图6所示,图6是图4中的步骤s103之后的一个实现流程图,在一些实施例中,步骤s103可以包括步骤s301至步骤s303:
101.步骤s301,获取执行机器学习任务时的第一初始算力资源;
102.步骤s302,确定第一运维任务为算力资源增加任务,根据算力资源增加任务进行算力资源扩充,得到第一初始算力资源以外的增加算力资源,确定增加算力资源和第一初始算力资源的和为第一目标算力资源;
103.步骤s303,或者,确定第一运维任务为算力资源减少任务,根据算力资源减少任务进行算力资源缩减,得到第一初始算力资源以外的减少算力资源,确定减少算力资源和第一初始算力资源的差值为第二目标算力资源。
104.在一些实施例中,机器学习集群算力资源运维方法还包括运维任务,运维任务用于确定目标算力资源,运维任务包括第一运维任务、第二运维任务和第三运维任务,运维任务包括在任务模版中,根据运维需求确定任务模版后,能够根据任务模版中的运维任务做出对应具体的运维操作。
105.在一些实施例中,一个集群包括多个工作节点,控制中心能够获取当前正在执行机器学习任务的第一初始算力资源,其中,第一初始算力资源指的是在未经算力资源调整之前,各集群的工作节点数量,并在此基础上进行工作节点的扩充,以分担集群算力,或者,进行工作节点的缩减,减少工作节点的无效利用。
106.示例性地,当第一运维任务为算力资源增加任务时,算力资源增加任务可以根据第一初始算力资源进行算力资源扩充,根据第一初始算力需求确定需要增加的算力资源,即工作节点,集群中原有的工作节点和新增的工作节点作为第一目标算力资源共同承担原有的工作节点的机器学习任务。例如,集群a中所有工作节点的算力资源均超过了各工作节点预设的80%的算力负载阈值最高值,需要对集群a进行算力资源扩充,在集群a原有的工作节点的基础上,根据扩充需要,新增至少一个工作节点,新增的工作节点用于分担集群a中原有工作节点的算力资源,以使集群的各工作节点的算力负载均能够在预设的80%之内。
107.示例性地,当第一运维任务为算力资源减少任务时,算力资源减少任务可以根据第一初始算力资源进行算力资源缩减,根据第一初始算力需求确定需要减少的算力资源,即工作节点,集群中原有的工作节点减去缩减的工作节点作为第二目标算力资源共同承担原有的工作节点的机器学习任务。例如,集群b中所有工作节点的算力资源均低于各工作节点预设的20%的算力负载阈值最低值,说明当前的工作节点有算力富余,需要对集群b进行算力资源缩减,在集群b原有的工作节点的基础上,根据缩减需要,减少至少一个工作节点,以使被减少的工作节点的算力资源能够分担至集群b中未被减少的工作节点中,以使集群的各工作节点的算力负载均能够在预设的20%之上。
108.可以理解的是,根据运维需求,对算力资源进行增加或减少,能够使集群中工作节点的算力资源整体维持在合理的范围内,既不会超出预设的最高值,出现工作节点算力过载导致卡顿或宕机,也不会低于预设的最低值,造成工作节点算力资源的浪费,第一运维任务通过对算力资源的智能增加或减少,使机器学习任务能够以合理、高效地状态运行。
109.需要说明的是,算力负载阈值最低值可以根据具体的机器学习任务进行设定,本技术实施例仅是以较佳实施例进行说明,并不做具体限制。
110.如图7所示,图7是图4中的步骤s103之后的又一个实现流程图,在一些实施例中,步骤s103可以包括步骤s401至步骤s404:
111.步骤s401,获取执行机器学习任务时的第二初始算力资源;
112.步骤s402,确定第二运维任务为算力资源迁移任务,根据算力资源迁移任务进行算力资源迁移,得到迁移算力资源,根据迁移算力资源,确定算力资源迁移后的第二初始算力资源为第三目标算力资源;
113.步骤s403,确定第三运维任务为算力资源上线任务,根据算力资源上线任务进行算力资源上线,得到第二初始算力资源以外的上线算力资源,确定上线算力资源和第二初始算力资源的和为第四目标算力资源;
114.步骤s404,或者,确定第三运维任务为算力资源下线任务,根据算力资源下线任务进行算力资源下线,得到第二初始算力资源以外的下线算力资源,确定下线算力资源和第二初始算力资源的差值为第五目标算力资源。
115.在一些实施例中,一个集群包括多个工作节点,控制中心能够获取当前正在执行机器学习任务的第二初始算力资源,其中,第二初始算力资源指的是在未经算力资源调整之前,各集群中工作节点的算力资源量,并在此基础上进行工作节点算力资源的迁移,以使各工作节点的算力资源能够维持在相对均衡的状态,不会出现其中一些工作节点算力资源过高或者过低的状况。
116.示例性地,当第二运维任务为算力资源迁移任务时,算力资源迁移任务可以根据第二初始算力资源进行算力资源迁移,根据第二初始算力资源确定需要迁移的工作节点的迁移算力资源,将该算力资源迁移至待迁移的工作节点中,即确定的迁移算力资源从需要迁移的工作节点转移至待迁移的工作节点中,通过对算力资源的调整,实现集群中各工作节点的算力资源平衡。示例性地,集群a中的工作节点a的算力资源为85%,高于预设的80%的算力负载阈值最高值,但集群a中的工作节点b的算力资源为60%,低于预设的算力负载阈值最高值,此时,确定迁移算力资源为工作节点a的5%算力资源,并将该迁移算力资源迁移至工作节点b中,迁移后的工作节点a的算力资源为80%、而工作节点b的算力资源为65%,均低于预设的算力负载阈值最高值,无需针对整个集群进行资源增加,通过现有工作节点内部的算力资源调整,使集群中各工作节点均能在适宜的算力负载范围内运行机器学习任务。
117.可以理解的是,根据运维需求,对算力资源进行算力迁移,能够在不新增工作节点的情况下,使集群内各工作节点的算力资源维持在合理的范围内,既不会超出预设的最高值,出现工作节点算力过载导致卡顿或宕机,也不会低于预设的最低值,造成工作节点算力资源的浪费,第二运维任务通过对算力资源的智能迁移,使机器学习任务能够以合理、高效地状态运行。
118.需要说明的是,迁移算力资源可以根据具体的机器学习任务进行设定,本技术实施例仅是以较佳实施例进行说明,并不做具体限制。
119.在一些实施例中,当工作节点出现故障时,需要对故障工作节点进行算力资源下线,并对经过维修后能够正常运行的工作节点进行算力资源上线。示例性地,第二初始资源还可以是在未经算力资源调整之前,集群中正常工作节点的数量,并在此基础上进行正常工作节点的上线。
120.示例性地,当第三运维任务为算力资源上线任务时,算力资源上线任务可以根据第二初始算力资源进行算力资源上线,根据第二初始算力需求确定需要上线的上线算力资源,即能够正常运行的工作节点,算力资源上线后,集群中原有的正常工作节点数量和新增上线的正常工作节点作为第四目标算力资源共同承担原有的工作节点的机器学习任务。
121.示例性地,当第三运维任务为算力资源下线任务时,算力资源下线任务可以根据第二初始算力资源进行算力资源下线,根据第二初始算力需求确定需要下线的下线算力资源,即出现故障的工作节点,算力资源下线后,集群中原有的正常工作节点数量与下线的故障工作节点作为第五目标算力资源共同承担原有的工作节点的机器学习任务。
122.可以理解的是,根据运维需求,对算力资源进行算力资源上线或下线,能够及时将故障的工作节点撤出原集群进行故障处理,并在故障处理完成后进行工作节点上线,使集群内各工作节点能够正常运行。
123.如图8所示,图8是图4中的步骤s103的一个扩缩容实现流程图,在一些实施例中,步骤s103可以包括步骤s501至步骤s503:
124.步骤s501,获取扩缩容模版的扩缩容参数信息和第一算力资源调度策略;
125.步骤s502,扩缩容参数信息用于表征扩缩容模版对应的第一执行数量和第一执行关联;
126.步骤s503,第一算力资源调度策略用于确定第一算力资源调度策略包括的运维任
务为第一运维任务和第二运维任务;
127.步骤s504,确定第一算力资源调度策略的运维任务顺序为第一运维任务和第二运维任务。
128.在一些实施例中,任务模版包括扩缩容模版、负载均衡模版和上下线模版,算力资源调度策略包括多个需要执行的运维任务以及运维任务的运维任务顺序,根据运维需求可以确定对应的任务模版,并根据任务模版中的算力资源调度策略执行算力资源调度。
129.示例性地,当运维需求为算力资源扩缩容需求时,对应确定任务模版为扩缩容模版。获取扩缩容模版的扩缩容参数信息和第一算力资源调度策略,其中,扩缩容参数信息包括的第一执行数量和第一执行关联,第一执行数量指的是需要执行的运维任务的任务数量,第一执行关联指的是对应的运维任务与其他运维任务的关联,如并发执行、互斥执行等,而第一算力调度资源策略包括第一运维任务和第二运维任务,且第一运维任务先于第二运维任务执行。
130.可以理解的是,第一运维任务为算力资源增加或算力资源减少任务,当增加或减少工作节点时,必将造成工作节点算力资源的不均衡,因而触发第二运维任务,即算力资源迁移任务,示例性地,如图3所示,按路径(1)

(2)

(3)完成第一算力资源调度策略。通过对包括新增工作节点在内的各工作节点进行算力资源迁移,以使算力资源维持在阈值范围内,保证各工作节点中机器学习任务的正常运行。
131.需要说明的是,扩缩容模版中的第一执行数量和第一执行关联可以根据具体的机器学习任务进行设定,本技术并不做具体限制。
132.如图9所示,图9是图4中的步骤s103的一个负载均衡实现流程图,在一些实施例中,步骤s103可以包括步骤s601至步骤s603:
133.步骤s601,获取负载均衡模版的负载参数信息和第二算力资源调度策略;
134.步骤s602,负载参数信息用于表征负载均衡模版对应的第二执行数量和第二执行关联;
135.步骤s603,第二算力资源调度策略用于确定第二算力资源调度策略包括的运维任务为第一运维任务和第二运维任务;
136.步骤s604,确定第二算力资源调度策略的运维任务顺序为第二运维任务和第一运维任务。
137.示例性地,当运维需求为算力资源负载均衡需求时,对应确定任务模版为负载均衡模版。获取负载均衡模版的负载均衡参数信息和第二算力资源调度策略,其中,负载均衡参数信息包括的第二执行数量和第二执行关联,第二执行数量指的是需要执行的运维任务的任务数量,第二执行关联指的是对应的运维任务与其他运维任务的关联,如并发执行、互斥执行等,而第二算力调度资源策略包括第一运维任务和第二运维任务,且第二运维任务先于第一运维任务执行。
138.可以理解的是,第二运维任务为算力资源迁移任务,当进行算力资源迁移时,一定概率上会出现现有的工作节点均超过算力阈值的情况,因而触发第一运维任务,示例性地,如图3所示,按路径(a)

(b)

(c)完成第二算力资源调度策略。通过新增工作节点来进一步实现算力资源的迁移,以使算力资源维持在阈值范围内,保证各工作节点中机器学习任务的正常运行。
139.需要说明的是,负载均衡模版中的第二执行数量和第二执行关联可以根据具体的机器学习任务进行设定,本技术并不做具体限制。
140.如图10所示,图10是图4中的步骤s103的一个上下线实现流程图,在一些实施例中,步骤s103可以包括步骤s701至步骤s703:
141.步骤s701,获取上下线模版的上下线参数信息和第三算力资源调度策略;
142.步骤s702,上下线参数信息用于表征上下线模版对应的第三执行数量和第三执行关联;
143.步骤s703,第三算力资源调度策略用于确定第三算力资源调度策略包括的运维任务为第一运维任务、第二运维任务和第三运维任务;
144.步骤s704,确定第三算力资源调度策略的运维任务顺序为第三运维任务、第一运维任务、第二运维任务和第一运维任务。
145.示例性地,当运维需求为算力资源上下线需求时,对应确定任务模版为上下线模版。获取上下线模版的上下线参数信息和第三算力资源调度策略,其中,上下线参数信息包括的第三执行数量和第三执行关联,第三执行数量指的是需要执行的运维任务的任务数量,第三执行关联指的是对应的运维任务与其他运维任务的关联,如并发执行、互斥执行等,而第三算力调度资源策略包括第一运维任务、第二运维任务和第三运维任务,且首先执行第三运维任务,再执行第一运维任务,接着执行第二运维任务,最后执行第一运维任务。
146.可以理解的是,第三运维任务为算力资源上线或下线任务,当进行工作节点的上下线时,由于工作节点的数量发生了变化,必将造成集群内各工作节点算力资源的不均衡,因而触发第一运维任务,而第一运维任务将触发第二运维任务,并在一定概率上出现现有的工作节点均超过算力阈值的情况,因而再次触发第一运维任务,示例性地,如图3所示,按路径(i)

(ii)

(iii)

(iv)完成第三算力资源调度策略。通过不断地对包括上线或下线工作节点在内的各工作节点进行算力资源迁移,以使算力资源维持在阈值范围内,保证各工作节点中机器学习任务的正常运行。
147.需要说明的是,上下线模版中的第三执行数量和第三执行关联可以根据具体的机器学习任务进行设定,本技术并不做具体限制。
148.如图11所示,图11是图4中的步骤s105之后的一个实现流程图,在一些实施例中,步骤s105之后可以包括步骤s801至步骤s802:
149.步骤s801,获取工作节点执行机器学习任务的执行数据;
150.步骤s802,当执行数据出现异常时,采取熔断策略,根据熔断策略对机器学习任务进行熔断控制。
151.在一些实施例中,机器学习任务中可能存在工作节点中算力资源调整失败的情况,为了不影响到整体的机器学习效率和质量,也不影响其他工作节点的机器学习任务,需要对故障进行反馈。基于此,机器学习平台可以检测工作节点执行机器学习任务的执行数据,并据此进行调度控制。
152.出现故障的原因有多种,例如线网故障等,导致算力资源的调整失败,此时需要一种保护机制,以保证机器学习平台任务的正常执行。
153.示例性的,当机器学习平台捕获到的执行数据出现异常时,确定采取熔断策略,熔断策略指的是对出现异常的工作节点进行熔断控制,以停止该工作节点执行机器学习任
务,或者根据设定对工作节点所在的集群进行整体熔断,以保证出现故障的工作节点不会影响整体的机器学习任务正常进行。
154.示例性的,本技术实施例中可以在出现多次算力资源调整失败后才执行熔断策略,例如,机器学习平台可以设定执行次数阈值,当某个时间段下的算力资源调整失败的次数达到执行次数阈值时,才判断该算力资源调整执行失败,从而执行熔断策略。
155.示例性的,机器学习平台在执行完成熔断控制后,还可以发出提示,提示的方式可以是任意形式,如消息弹窗、声音报警等,以便用户知晓算力资源调整失败的消息,进而方便操作人员针对出现的算力资源调整情况进行处理操作。
156.如图12所示,图12是图4中的步骤s105之后的又一个实现流程图,在一些实施例中,步骤s105之后可以包括步骤s901至步骤s902:
157.步骤s901,在机器学习任务的任务生命周期内进行任务记录,并将任务记录保存至预设的信息库中;
158.步骤s902,通过信息库,执行任务查询和任务管理,任务查询用于查询信息库内的任务记录,任务管理用于对机器学习任务进行执行干预。
159.在一些实施例中,机器学习平台可以对正在执行机器学习任务的任务生命周期内进行任务记录,并将任务记录保存至预设的信息库中,以方便操作人员对任务记录进行操作,进而知晓机器学习任务的进展情况。
160.示例性地,可以通过信息库对任务记录进行查询,当操作人员想要知道某一个工作节点的机器学习任务执行情况时,可以在信息库中输入与该工作节点相关的信息,例如工作节点编号,以进行该工作节点所执行的机器学习任务的任务记录查询。
161.示例性地,可以通过信息库对任务记录进行管理,当操作人员对某一个工作节点或者某个集群进行管理时,可以对某一个工作节点或者某个集群进行人工干预,例如暂停、重启、重试、终止、任务步骤跳转等,人工干预多用于出现大范围故障而机器学习平台无法自主解决的情况,对机器学习平台进行任务管理,能够使得机器学习平台智能运维和人工运维相结合,进一步提高了机器学习平台的运维效率。
162.示例性地,还可以将复杂的父任务拆分成多个小的子任务,并通过父子关联对父任务和子任务进行管理,例如,将原本复杂的a父任务拆分成a1子任务和a2子任务,当进行a任务的查询时,同时显示a1子任务和a2子任务,当进行a任务的干预时,同时干预a1子任务和a2子任务。
163.如图13所示,图13是本技术实施例提供的机器学习集群算力资源运维方法的另一个可选的流程图,图13中的方法可以包括但不限于包括步骤s1001至步骤s1002。
164.步骤s1001,生成正在执行机器学习任务时的算力资源数据,其中,算力资源数据用于表征各工作节点执行机器学习任务时的执行状态;
165.步骤s1002,获取执行机器学习任务的算力资源调度指令,并根据算力资源调度指令确定目标算力资源,目标算力资源用于执行机器学习任务。
166.在一些实施例中,机器学习集群算力资源运维方法可以应用于工作节点,控制中心与至少一个用于执行机器学习任务的集群通信连接,集群包括多个工作节点,工作节点用于执行机器学习任务。
167.需要说明的是,本技术实施例中应用于工作节点的机器学习集群算力资源运维方
法与上述应用在控制中心的工作节点的机器学习集群算力资源运维方法相类似,具体实施方式在上述实施例中描述清楚,在此不再赘述。
168.如图14所示,图14是本技术实施例提供的机器学习集群算力资源运维的功能模块示意图,本技术实施例还提供一种机器学习集群算力资源运维系统,可以实现上述机器学习集群算力资源运维方法,机器学习集群算力资源运维系统包括:
169.算力资源数据采集模块1101,用于获取工作节点执行机器学习任务时的算力资源数据,其中,算力资源数据用于表征工作节点执行机器学习任务时的执行状态;
170.运维分析模块1102,用于根据算力资源数据进行运维分析,得到运维需求;
171.任务模版获取模块1103,用于获取运维需求对应的任务模版,任务模版包含算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划;
172.指令生成模块1104,用于根据运维需求和任务模版,确定算力资源调度指令;
173.任务调度模块1105,用于输出算力资源调度指令到工作节点,以使工作节点按照算力资源调度指令,确定执行机器学习任务的目标算力资源。
174.在一些实施例中,机器学习集群算力资源运维方法可以应用于工作节点,控制中心与至少一个用于执行机器学习任务的集群通信连接,集群包括多个工作节点,工作节点用于执行机器学习任务。
175.在一些实施例中,机器学习当中可能存在有多个需要执行的任务,当工作节点执行该任务时,必然会产生算力资源数据,对该算力资源数据进行获取的目的是对其进行数据分析,也称运维分析,以发现运维需求,进而能够针对该运维需求生成算力资源调度指令,以指导工作节点算力资源的调度。
176.在一些实施例中,机器学习任务通常由一个或者多个集群完成,集群中包含多个工作节点,也就是说,机器学习任务是由多个工作节点共同完成,控制中心与各工作节点连接,控制中心能够自动获取各工作节点的算力资源数据,算力资源数据可以是每个工作节点在执行分配到的机器学习任务时的使用率,或者其他与机器学习任务相关的指标,在此不做限制。
177.在一些实施例中,控制中心可以定时获取与之相连的各工作节点的算力资源数据,示例性地,可以设定间隔相同时间进行算力资源数据的获取,或者,在白天机器学习任务繁重时,设置间隔第一时间进行算力资源数据的获取,在夜晚机器学习任务较少时,设置间隔第二时间进行算力资源数据的获取,其中,第一时间的时长小于第二时间,控制中心定时获取各工作节点的算力资源数据可以使得机器学习集群算力资源运维系统及时发现运维需求,并及时根据运维需求生成对应的算力资源调度指令,确定执行机器学习任务的目标算力资源,其中,目标算力资源表示在当前机器学习任务下能够使工作节点合理运行且不会出现故障的资源量,这样,能够保证工作节点时刻处于最佳状态。
178.在一些实施例中,在获取算力资源数据之后,控制中心能够对其进行运维分析,其中,运维分析的依据可以是预先设定好的算力资源范围值,通过对比获取到的算力资源数据和预先设定好的算力资源范围值,捕获算力资源数据的不合理之处,从而得到运维需求。
179.在一些实施例中,算力资源调度指令通过运维需求和任务模版确定,其中,任务模版中包含有算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划,也就是说,当工作节点产生运维需求后,能够根据所具体的运维需求找到对应的任务
模版,以根据任务模版中的算力资源调度策略做出算力资源调整。
180.在一些实施例中,任务模版通过人工制定得到,例如,操作人员能够根据运维经验设定运维需求对应的任务模版中的模版参数,以使产生其中一个运维需求时,能够在对应的任务模版中找到相应的运维解决办法,以达到智能运维的目的;或者,任务模版能够根据需求进行智能调整,例如,在不断地机器学习任务学习的过程中,控制中心感知到工作节点的算力提高了,当产生扩容需求时,原先在任务模版中需要扩充两个工作节点,而由于各节点的算力提高,仅需增加一个工作节点就能满足算力需求,此时,控制中心能够智能修改任务模版中的内容,使得智能运维更合理化、自主化。
181.在一些实施例中,控制中心能够根据运维需求和对应的任务模版,确定算力资源调度指令,该算力资源调度指令用于发送至工作节点中,以使工作节点能够根据该算力资源调度指令确定执行所述机器学习任务的目标算力资源。
182.在一些实施例中,与控制中心相连的集群可以有多个,本技术实施例的机器学习集群算力资源运维方法可以针对任意一个集群中包含的工作节点进行算力资源运维,并且可以在具体执行过程中,选定当前正在进行的机器学习任务的算力资源为初始算力资源,选定按算力资源调度指令进行资源调度后的算力资源为目标算力资源。
183.在一些实施例中,将算力资源调度指令发送至工作节点中,以使工作节点能够根据该算力资源调度指令确定执行所述机器学习任务的目标算力资源,这样的机器学习集群算力资源运维方法,减少了由于人工运维带来的运维失误,同时智能运维提高了机器学习集群算力资源运维系统的运维效率。
184.可以理解的是,机器学习集群算力资源运维方法可以应用在机器学习集群算力资源运维系统中,本技术通过机器学习平台自主运维的方式,使得机器学习平台能够智能分析确定运维需求,并根据运维需求选取对应的任务模版,之后,根据任务模版中的参数信息和算力资源调度策略,制定算力资源任务调度方案,并执行运维任务,以解决机器学习平台中的运维需求,使机器学习平台做到智能分析运维需求、智能制定运维方案以及智能执行运维任务的自闭环,在提高机器学习集群日常算力资源运维管理准确度的同时,提高了算力资源运维管理的效率。
185.该机器学习集群算力资源运维系统的具体实施方式与上述机器学习集群算力资源运维方法的具体实施例基本相同,在此不再赘述。在满足本技术实施例要求的前提下,机器学习集群算力资源运维系统还可以设置其他功能模块,以实现上述实施例中的机器学习集群算力资源运维方法。
186.如图15所示,图15是本技术实施例提供的电子设备的硬件结构示意图,电子设备包括:
187.处理器1201,可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本技术实施例所提供的技术方案;
188.存储器1202,可以采用只读存储器(readonlymemory,rom)、静态存储设备、动态存储设备或者随机存取存储器(randomaccessmemory,ram)等形式实现。存储器1202可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1202中,并由处理器1201来调用执行本技术实施例的机
器学习集群算力资源运维方法;
189.输入/输出接口1203,用于实现信息输入及输出;
190.通信接口1004,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信;
191.总线1205,在设备的各个组件(例如处理器1201、存储器1202、输入/输出接口1203和通信接口1004)之间传输信息;
192.其中处理器1201、存储器1202、输入/输出接口1203和通信接口1004通过总线1205实现彼此之间在设备内部的通信连接。
193.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述机器学习集群算力资源运维方法。
194.存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
195.本技术实施例描述的实施例是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域技术人员可知,随着技术的演变和新应用场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
196.本领域技术人员可以理解的是,图中示出的技术方案并不构成对本技术实施例的限定,可以包括比图示更多或更少的步骤,或者组合某些步骤,或者不同的步骤。
197.以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
198.本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、设备中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。
199.本技术的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
200.应当理解,在本技术中,“至少一个(项)”和“若干”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以
是单个,也可以是多个。
201.在本技术所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
202.上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
203.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
204.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例的方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等各种可以存储程序的介质。
205.以上参照附图说明了本技术实施例的优选实施例,并非因此局限本技术实施例的权利范围。本领域技术人员不脱离本技术实施例的范围和实质内所作的任何修改、等同替换和改进,均应在本技术实施例的权利范围之内。

技术特征:
1.一种机器学习集群算力资源运维方法,其特征在于,应用于控制中心,所述控制中心与至少一个用于执行机器学习任务的集群通信连接,所述集群包括多个工作节点,所述工作节点用于执行所述机器学习任务,所述方法包括:获取工作节点执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征所述工作节点执行所述机器学习任务时的执行状态;根据所述算力资源数据进行运维分析,得到运维需求;获取所述运维需求对应的任务模版,所述任务模版包含算力资源调度策略,所述算力资源调度策略用于表征所述任务模版对应的算力资源调度计划;根据所述运维需求和所述任务模版,确定算力资源调度指令;输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源。2.根据权利要求1所述的方法,其特征在于,所述算力资源数据包括集群算力资源数据

节点算力资源数据和节点算力资源故障数据;所述方法还包括获取算力资源范围值,所述算力资源范围值用于表征所述算力资源数据的范围,所述算力资源范围值包括第一算力资源范围值、第二算力资源范围值和第三算力资源范围值,所述算力资源范围值与所述算力资源数据对应;所述根据所述算力资源数据进行运维分析,得到运维需求,包括:若所述集群算力资源数据不在第一范围值内,确定所述运维需求为算力资源扩缩容需求;若所述节点算力资源数据不在第二范围值内,确定所述运维需求为算力资源负载均衡需求;若所述节点算力资源故障数据不在第三范围值内,确定所述运维需求为算力资源上下线需求。3.根据权利要求1所述的方法,其特征在于,所述方法还包括运维任务,所述运维任务用于确定所述目标算力资源,所述运维任务包括第一运维任务、第二运维任务和第三运维任务;所述获取所述运维需求对应的任务模版之后,包括:获取执行所述机器学习任务时的第一初始算力资源;确定所述第一运维任务为算力资源增加任务,根据所述算力资源增加任务进行算力资源扩充,得到所述第一初始算力资源以外的增加算力资源,确定所述增加算力资源和所述第一初始算力资源的和为第一目标算力资源;或者,确定所述第一运维任务为算力资源减少任务,根据所述算力资源减少任务进行算力资源缩减,得到所述第一初始算力资源以外的减少算力资源,确定所述减少算力资源和所述第一初始算力资源的差值为第二目标算力资源。4.根据权利要求3所述的方法,其特征在于,所述获取所述运维需求对应的任务模版之后,还包括:获取执行所述机器学习任务时的第二初始算力资源;确定所述第二运维任务为算力资源迁移任务,根据所述算力资源迁移任务进行算力资源迁移,得到迁移算力资源,根据所述迁移算力资源,确定所述算力资源迁移后的所述第二
初始算力资源为第三目标算力资源;确定所述第三运维任务为算力资源上线任务,根据所述算力资源上线任务进行算力资源上线,得到所述第二初始算力资源以外的上线算力资源,确定所述上线算力资源和所述第二初始算力资源的和为第四目标算力资源;或者,确定所述第三运维任务为算力资源下线任务,根据所述算力资源下线任务进行算力资源下线,得到所述第二初始算力资源以外的下线算力资源,确定所述下线算力资源和所述第二初始算力资源的差值为第五目标算力资源。5.根据权利要求3或4所述的方法,其特征在于,所述任务模版包括扩缩容模版、负载均衡模版和上下线模版,所述算力资源调度策略包括多个需要执行的所述运维任务以及所述运维任务的运维任务顺序,所述获取所述运维需求对应的任务模版,包括:获取所述扩缩容模版的扩缩容参数信息和第一算力资源调度策略;所述扩缩容参数信息用于表征所述扩缩容模版对应的第一执行数量和第一执行关联;所述第一算力资源调度策略用于确定所述第一算力资源调度策略包括的所述运维任务为所述第一运维任务和所述第二运维任务;确定所述第一算力资源调度策略的所述运维任务顺序为所述第一运维任务和所述第二运维任务。6.根据权利要求5所述的方法,其特征在于,所述获取所述运维需求对应的任务模版,还包括:获取所述负载均衡模版的负载参数信息和第二算力资源调度策略;所述负载参数信息用于表征所述负载均衡模版对应的第二执行数量和第二执行关联;所述第二算力资源调度策略用于确定所述第二算力资源调度策略包括的所述运维任务为所述第一运维任务和所述第二运维任务;确定所述第二算力资源调度策略的所述运维任务顺序为所述第二运维任务和所述第一运维任务。7.根据权利要求5所述的方法,其特征在于,所述获取所述运维需求对应的任务模版,包括:获取所述上下线模版的上下线参数信息和第三算力资源调度策略;所述上下线参数信息用于表征所述上下线模版对应的第三执行数量和第三执行关联;所述第三算力资源调度策略用于确定所述第三算力资源调度策略包括的所述运维任务为所述第一运维任务、所述第二运维任务和所述第三运维任务;确定所述第三算力资源调度策略的所述运维任务顺序为所述第三运维任务、所述第一运维任务、所述第二运维任务和所述第一运维任务。8.根据权利要求1所述的方法,其特征在于,所述输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源之后,包括:获取所述工作节点执行所述机器学习任务的执行数据;当执行数据出现异常时,采取熔断策略,根据所述熔断策略对所述机器学习任务进行熔断控制。9.根据权利要求1所述的方法,其特征在于,所述输出所述算力资源调度指令到所述工
作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源之后,还包括:在所述机器学习任务的任务生命周期内进行任务记录,并将所述任务记录保存至预设的信息库中;通过所述信息库,执行任务查询和任务管理,所述任务查询用于查询所述信息库内的所述任务记录,所述任务管理用于对所述机器学习任务进行执行干预。10.一种机器学习集群算力资源运维方法,其特征在于,应用于工作节点,控制中心与至少一个用于执行机器学习任务的集群通信连接,所述集群包括多个所述工作节点,所述工作节点用于执行所述机器学习任务,所述方法包括:生成正在执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征各工作节点执行所述机器学习任务时的执行状态;获取执行所述机器学习任务的算力资源调度指令,并根据所述算力资源调度指令确定目标算力资源,所述目标算力资源用于执行所述机器学习任务。11.一种机器学习集群算力资源运维系统,其特征在于,所述系统包括:算力资源数据采集模块,用于获取工作节点执行机器学习任务时的算力资源数据,其中,所述算力资源数据用于表征所述工作节点执行所述机器学习任务时的执行状态;运维分析模块,用于根据所述算力资源数据进行运维分析,得到运维需求;任务模版获取模块,用于获取所述运维需求对应的任务模版,所述任务模版包含算力资源调度策略,所述算力资源调度策略用于表征所述任务模版对应的算力资源调度计划;指令生成模块,用于根据所述运维需求和所述任务模版,确定算力资源调度指令;任务调度模块,用于输出所述算力资源调度指令到所述工作节点,以使所述工作节点按照所述算力资源调度指令,确定执行所述机器学习任务的目标算力资源。12.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权利要求1至9任一项所述的机器学习集群算力资源运维方法或实现权利要求10项所述的机器学习集群算力资源运维方法。13.一种计算机可读存储介质,所述存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9任一项所述的机器学习集群算力资源运维方法或实现权利要求10项所述的机器学习集群算力资源运维方法。

技术总结
本申请实施例提供了一种机器学习集群算力资源运维方法、系统、设备及存储介质,属于机器学习技术领域。该方法包括:获取工作节点执行机器学习任务时的算力资源数据;根据算力资源数据进行运维分析,得到运维需求;获取运维需求对应的任务模版,任务模版包含算力资源调度策略,算力资源调度策略用于表征任务模版对应的算力资源调度计划;根据运维需求和任务模版,确定算力资源调度指令;输出算力资源调度指令到工作节点,以使工作节点按照算力资源调度指令,确定执行机器学习任务的目标算力资源。本申请能够在提高机器学习集群日常算力资源运维管理准确度的同时,提高算力资源运维管理的效率。理的效率。理的效率。


技术研发人员:张加远 林冯军 曾炜 王晖 余跃 李革
受保护的技术使用者:鹏城实验室
技术研发日:2023.04.12
技术公布日:2023/8/14
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐