本申请涉及云计算运维领域,具体涉及一种云平台巡检任务调度方法及系统。
背景技术:
1、随着云平台应用的普及,各企业越来越多的重要业务都已迁移到了云平台上运行。此时,保障云平台的稳定运行是各云平台提供商面临的一个巨大挑战。
2、针对此问题,巡检是各云平台提供商普遍采用的一种措施。目前业内基本都是在目标服务器上按照固定的顺序执行不同的巡检脚本,通过获取目标服务器相关数据来提前发现云平台存在的潜在隐患,并在云平台发生异常前及时修复,从而提升云平台的可靠性。
3、现有的云平台巡检方案基本都认为巡检任务间是相互独立的,这样往往会因为同一个故障原因导致多个巡检任务失败,存在巡检效率低下或者大量占用云平台资源从而影响到云平台业务正常运行等问题。
技术实现思路
1、本申请提供一种云平台巡检任务调度方法及系统,可以解决现有技术中存在的因同一个故障原因导致多个巡检任务执行失败的技术问题。
2、第一方面,本申请实施例提供一种云平台巡检任务调度方法,包括:
3、获取云平台的巡检任务列表,并对其进行分析得到该列表中所有巡检任务之间的依赖关系、以及每个巡检任务的属性信息,所述属性信息包括历史平均执行失败概率和历史平均执行时间;所述依赖关系指一巡检任务的执行依赖于另一巡检任务的成功执行;
4、以所述列表中的所有巡检任务为节点,结合每个巡检任务的历史平均执行失败概率和历史平均执行时间计算相应节点的权重后,生成加权有向图,并对其进行计算得到最短路径;
5、将最短路径中节点的执行优先级设为最高,根据所述最短路径确定加权有向图中所有节点的执行顺序,并在有节点执行失败时,通过删除相应巡检任务以及与该巡检任务具有依赖关系的所有未执行巡检任务,以更新所述巡检任务列表。
6、结合第一方面,在一种实施方式中,所述权重采用下述公式计算得到:
7、wi=-(αpi+βti)
8、其中,
9、wi用于表示权重值;
10、α用于表示预先设定的第一可调节值;
11、pi用于表示巡检任务的历史平均执行失败概率;
12、β用于表示预先设定的第二可调节值;
13、ti用于表示巡检任务的历史平均执行时间。
14、结合第一方面,在一种实施方式中,所述对加权有向图进行计算得到最短路径,具体包括如下步骤:
15、从加权有向图中选取节点权重最小的路径作为最短路径;若节点权重最小的路径有多条,则从中选择节点最少的路径作为最短路径。
16、结合第一方面,在一种实施方式中,所述根据最短路径确定加权有向图中所有节点的执行顺序,具体包括如下步骤:
17、将最短路径中节点的执行优先级设为最高后,根据当前时刻的可用资源量和每个巡检任务的历史平均执行失败概率倒序选择与最短路径中的节点并发执行的巡检任务。
18、结合第一方面,在一种实施方式中,所述属性信息还包括历史平均资源占用量;
19、所述根据最短路径确定加权有向图中所有节点的执行顺序,具体包括如下步骤:
20、将最短路径中节点的执行优先级设为最高后,根据当前时刻的可用资源量和每个巡检任务的历史平均资源占用量倒序选择与最短路径中的节点并发执行的巡检任务。
21、第二方面,本申请实施例提供了一种云平台巡检任务调度系统,所述系统包括:
22、巡检任务分析模块,其用于获取云平台的巡检任务列表,并对其进行分析得到该列表中所有巡检任务之间的依赖关系、以及每个巡检任务的属性信息,所述属性信息包括历史平均执行失败概率和历史平均执行时间;所述依赖关系指一巡检任务的执行依赖于另一巡检任务的成功执行;
23、有向图处理模块,其用于以所述列表中的所有巡检任务为节点,结合每个巡检任务的历史平均执行失败概率和历史平均执行时间计算相应节点的权重后,生成加权有向图,并对其进行计算得到最短路径;
24、任务执行模块,其用于将最短路径中节点的执行优先级设为最高,根据所述最短路径确定加权有向图中所有节点的执行顺序,并在有节点执行失败时,通过删除相应巡检任务以及与该巡检任务具有依赖关系的所有未执行巡检任务,以更新所述巡检任务列表。
25、结合第二方面,在一种实施方式中,所述有向图处理模块用于从加权有向图中选取节点权重最小的路径作为最短路径;若节点权重最小的路径有多条,则从中选择节点最少的路径作为最短路径。
26、结合第二方面,在一种实施方式中,所述任务执行模块用于将最短路径中节点的执行优先级设为最高后,根据当前时刻的可用资源量和每个巡检任务的历史平均执行失败概率倒序选择与最短路径中的节点并发执行的巡检任务。
27、结合第二方面,在一种实施方式中,所述属性信息还包括历史平均资源占用量;
28、所述任务执行模块用于将最短路径中节点的执行优先级设为最高后,根据当前时刻的可用资源量和每个巡检任务的历史平均资源占用量倒序选择与最短路径中的节点并发执行的巡检任务。
29、结合第二方面,在一种实施方式中,所述任务执行模块还用于生成基于加权有向图的巡检任务执行结果图,并输出。
30、本申请实施例提供的技术方案带来的有益效果至少包括:
31、根据巡检任务之间的依赖关系、以及每个巡检任务的相关属性信息生成加权有向图,根据加权有向图确定所有节点的执行顺序。通过生成加权有向图,当一个节点执行失败后(巡检任务在发现故障时执行失败),所有依赖本节点且未执行的节点直接置为失败,不再执行失败的节点,然后可从巡检任务列表中删除所有失败任务,根据更新后的巡检任务列表重新确定最短路径并重新调整任务执行顺序,避免因同一故障原因导致不同的巡检任务重复执行并重复失败的问题,从而提高巡检效率。
32、从加权有向图中找出最短路径,将最短路径上节点的执行优先级设为最高,根据最短路径确定加权有向图中所有节点的执行顺序,其中,加权有向图中节点的权重结合历史平均执行失败概率和历史平均执行时间得到。通过调节历史平均执行失败概率和历史平均执行时间对节点权重的影响程度,可以调节最终选取的最短路径,当历史平均执行失败概率对节点权重的影响更大时,系统优先执行针对出现频率更高的故障的巡检任务,此时更容易找出历史出现频率更高的故障;当历史平均执行时间对节点权重的影响更大时,系统优先执行针对查找耗时更长的故障的巡检任务,此时更容易找出历史查找耗时更高的故障,同时还能尽可能多的并发执行除最短路径之外的其他巡检任务,从而提高巡检效率。
1.一种云平台巡检任务调度方法,其特征在于,所述方法包括:
2.如权利要求1所述的云平台巡检任务调度方法,其特征在于,所述权重采用下述公式计算得到:
3.如权利要求1所述的云平台巡检任务调度方法,其特征在于,所述对加权有向图进行计算得到最短路径,具体包括如下步骤:
4.如权利要求1所述的云平台巡检任务调度方法,其特征在于,所述根据最短路径确定加权有向图中所有节点的执行顺序,具体包括如下步骤:
5.如权利要求1所述的云平台巡检任务调度方法,其特征在于,所述属性信息还包括历史平均资源占用量;
6.一种云平台巡检任务调度系统,其特征在于,所述系统包括:
7.如权利要求6所述的云平台巡检任务调度系统,其特征在于,所述有向图处理模块用于从加权有向图中选取节点权重最小的路径作为最短路径;若节点权重最小的路径有多条,则从中选择节点最少的路径作为最短路径。
8.如权利要求6所述的云平台巡检任务调度系统,其特征在于,所述任务执行模块用于将最短路径中节点的执行优先级设为最高后,根据当前时刻的可用资源量和每个巡检任务的历史平均执行失败概率倒序选择与最短路径中的节点并发执行的巡检任务。
9.如权利要求8所述的云平台巡检任务调度系统,其特征在于,所述属性信息还包括历史平均资源占用量;
10.如权利要求6所述的云平台巡检任务调度系统,其特征在于,所述任务执行模块还用于生成基于加权有向图的巡检任务执行结果图,并输出。