掌桥专利:专业的专利平台
掌桥专利
首页

一种任务调度均衡优化方法、装置

文献发布时间:2023-06-19 13:45:04


一种任务调度均衡优化方法、装置

技术领域

本发明涉及集群任务调度均衡设计技术领域,具体涉及一种任务调度均衡优化方法、装置。

背景技术

在当前的技术背景下,ES(ES,是指一种分布式全文数据库系统服务Elasticsearch)客户端与服务端的交互中,一般会在客户端配置多个可用ES实例节点地址,ES应用在收到客户端请求时,会根据配置的多个可用实例服务端口进行任务分发,分发规则遵循Round Robin(Round Robin,轮询调度算法,一种无状态任务调度方法,一般用于用户任务执行均衡控制)算法,将接收到的各种读写或其它处理请求通过Round Robin算法的轮询方式分发至配置的可用实例节点进行任务执行。Round Robin算法是一种相对意义上的均衡方法,可以使配置的每个实例服务都可以接收大概同等的任务量,以此保证ES集群各个实例服务之间的任务均衡,保证集群的高效性。

但是在实际的ES集群环境中,由于各种实际场景网络环境和软硬件环境差异性,在每个实例大概接收同等任务的情况下并不能保证集群任务运行实际的均衡和高效,比如配置集群节点间硬件配置存在高低差异的环境;部分特殊应用需求场景存在将ES服务与其它外部服务混部,故而存在资源交叉占用的情况;还有如不同实例所在的机器网络资源存在差异或者网络稳定性不一致的节点。这些情况都会影响Round Robin算法实际的可靠性。

发明内容

针对在实际的ES集群环境中,由于各种实际场景网络环境和软硬件环境差异性,在每个实例大概接收同等任务的情况下并不能保证集群任务运行实际的均衡和高效的问题,本发明提供一种任务调度均衡优化方法、装置。

本发明的技术方案是:

一方面,本发明技术方案提供一种任务调度均衡优化方法,包括如下步骤:

动态监测并收集集群中各实例服务和实例服务所在节点的资源信息;

根据收集的资源信息结合设置的节点资源控制参数对实例服务所在节点的可用资源空余程度进行验证评估,根据验证评估结果进行节点的优先序列调整,输出优先任务队列列表;

接收优先任务队列列表,并解析相关队列任务发送至对应的实例服务作为协调节点进行任务执行。

通过动态监控集群的各实例服务运行环境情况进行服务可用验证,得出不同实例服务间的实际软硬件和网络环境差异并加入到任务调度分发的判断机制中,进而完善任务调度机制中轮训调度算法无法实现真正均衡的问题。

进一步的,动态监测并收集集群中各实例服务和实例服务所在节点的资源信息的步骤包括:

动态监测集群中各实例服务和实例服务所在节点的软硬件和网络资源使用情况;

对各实例服务和实例服务所在节点资源信息进行收集;

将收集的信息进行处理封装后输出。

进一步的,动态监测并收集集群中各实例服务和实例服务所在节点的资源信息的具体步骤包括:

接收任务请求;

获取请求中携带的可配协调节点列表并解析汇总,得到可配节点总队列;

解析可配节点总队列中节点信息,封装监控任务并按照心跳频率将监控任务分发至可配节点总队列中的各节点和实例;

接收各节点和实例返回的集群资源信息;

对接收的资源信息进行解析,并合并过滤相关指标信息;

将经合并过滤处理的资源信息进行封装,并将封装后的资源信息输出。

监测范围包括轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况。

进一步的,根据收集的资源信息结合设置的节点资源控制参数对实例服务所在节点的可用资源空余程度进行验证评估,根据验证评估结果进行节点的优先序列调整,输出优先任务队列列表的步骤包括:

接收并解析设置的节点资源控制参数;

解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入黑名单;

摒除可配节点总队列中加入黑名单的实例服务,将剩余实例服务按照设置的权重重新排序,生成优先任务队列列表。

依赖节点资源控制参数,其中包括各种自定义或默认的代表当前环境的实际运行情况指标参数,并设定一定的冗余,避免同一批次序列生成后可能引起的资源指标剧烈变化,导致运行环境倾斜的问题。

进一步的,解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入黑名单的步骤包括:

解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估;根据验证评估结果将资源信息所在IP节点加入永久黑名单;或,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入临时黑名单。

进一步的,节点资源控制参数包括剔除IP;根据验证评估结果将资源信息所在IP节点加入永久黑名单的步骤包括:

判断资源信息所在节点的IP为设置的剔除IP时,将资源信息所在IP节点加入永久黑名单。

进一步的,节点资源控制参数包括CPU使用率、内存使用率、磁盘IO使用率、网络延迟和丢包率、任务响应时间阈值;

解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估;根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入临时黑名单的步骤包括:

解析分析接收的CPU使用信息,若CPU使用率超过设置阈值,将该CPU所在IP节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的内存使用信息,若某节点内存使用率超过设定阈值,则停止使用该节点作为任务分发节点,并将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的磁盘性能监控信息,若磁盘IO使用率超过设定阈值,且队列延时参数大于设定的时间阈值时,将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的网络监控信息,若网络延迟大于设定的延迟时间、丢包率大于设定的阈值,将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的实例服务任务响应情况,若实例服务处理任务失败或响应超时时间大于设定的时间阈值,将该节点的实例服务作为协调节点加入临时黑名单。为了提高任务的处理效率。

进一步的,该方法还包括:

根据资源信息的动态监测情况,对临时黑名单进行管理,若临时黑名单中实例服务节点的资源信息在设定的节点资源控制参数范围内,将相关节点移出临时黑名单重新加入优先任务队列列表。

动态黑名单机制的优化,在部分实例服务所在节点的环境情况得到改善后,可重新进行分配任务,保证集群的高效可用。

进一步的,接收优先任务队列列表,并解析相关队列任务发送至对应的实例服务作为协调节点进行任务执行的步骤包括:

接收优先任务队列列表,解析相关队列任务;

拆解任务队列信息,取出节点和任务的键值,获取任务与实例服务的对应关系;

按照接收到的队列顺序取得相关任务,发送至对应的实例服务作为协调节点进行任务执行。完善原本任务轮询调度算法的实际均衡能力不足的问题。

对当前的任务调度均衡机制进行优化,充分考虑遭遇到集群各实例服务节点间软硬件以及网络存在差异的场景,采用轮询节点动态监测和节点动态监测机制加入节点动态平衡因子,完善轮询算法无法根据实际环境情况进行任务调度调整,将不同实例服务间的软硬件和网络环境差异加入到任务调度分发的判断机制中,完善集群实例服务的任务调度均衡,保证集群的高效运行。

另一方面,本发明技术方案提供一种任务调度均衡优化装置,包括轮询节点监测模块、节点序列管理模块和任务调度模块;

轮询节点监测模块,用于动态监测并收集集群中各实例服务和实例服务所在节点的资源信息,并将收集的资源信息处理封装后输出到节点序列管理模块;

节点序列管理模块,用于根据接收到的资源信息结合设置的节点资源控制参数对实例服务所在节点的可用资源空余程度进行验证评估,根据验证评估结果进行节点的优先序列调整,输出优先任务队列列表到任务调度模块;

任务调度模块,用于接收优先任务队列列表,并解析相关队列任务发送至对应的实例服务作为协调节点进行任务执行。

可以更加有效地进行协调节点任务再分配,完善实例服务本身无法进行实际任务均衡分配的短板,轮询节点监测模块通过在监测轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况,并将信息封装传递到节点序列管理模块进行节点分析和任务分配序列评估,节点序列管理模块通过对客户端配置的用于执行任务的作为协调节点的实例服务进行序列管理,输出优先任务队列列表,任务调度模块按照相应规则生成实际的协调节点进行任务运行,通过优先队列的机制可以更加优化细化合理地进行集群可用资源任务调度,补充原本轮训调度算法机制的不足。

进一步的,轮询节点监测模块包括任务请求接收单元、请求信息处理单元、监控任务分发单元、资源信息接收单元、资源信息处理单元、封装单元;

任务请求接收单元,用于接收任务请求;

请求信息处理单元,用于获取请求中携带的可配协调节点列表并解析汇总,得到可配节点总队列;

监控任务分发单元,用于解析可配节点总队列中节点信息,封装监控任务并按照心跳频率将监控任务分发至可配节点总队列中的各节点和实例;

资源信息接收单元,用于接收各节点和实例返回的集群资源信息;

资源信息处理单元,用于对接收的资源信息进行解析,并合并过滤相关指标信息;

封装单元,用于将经合并过滤处理的资源信息进行封装,并将封装后的资源信息输出到节点序列管理模块。

进一步的,节点序列管理模块包括控制参数解析单元、验证评估单元、优先任务队列列表生成单元;

控制参数解析单元,用于接收并解析设置的节点资源控制参数;

验证评估单元,用于解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入黑名单;

优先任务队列列表生成单元,用于摒除可配节点总队列中加入黑名单的实例服务,将剩余实例服务按照设置的权重重新排序,生成优先任务队列列表。

进一步的,验证评估单元包括解析分析子模块、验证评估子模块、任务队列调整子模块;

解析分析子模块,用于解析分析接收到的资源信息;

验证评估子模块,用于将解析出的资源信息与节点资源控制参数进行验证评估;

任务队列调整子模块,用于根据验证评估结果将资源信息所在IP节点加入永久黑名单;或,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入临时黑名单。

进一步的,节点资源控制参数包括剔除IP,任务队列调整子模块,用于判断资源信息所在节点的IP为设置的剔除IP时,将资源信息所在IP节点加入永久黑名单。

进一步的,节点资源控制参数包括CPU使用率、内存使用率、磁盘IO使用率、网络延迟和丢包率、任务响应时间阈值;

验证评估单元,用于解析分析接收的CPU使用信息,若CPU使用率超过设置阈值,将该CPU所在IP节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的内存使用信息,若某节点内存使用率超过设定阈值,则停止使用该节点作为任务分发节点,并将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的磁盘性能监控信息,若磁盘IO使用率超过设定阈值,且队列延时参数大于设定的时间阈值时,将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的网络监控信息,若网络延迟大于设定的延迟时间、丢包率大于设定的阈值,将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的实例服务任务响应情况,若实例服务处理任务失败或响应超时时间大于设定的时间阈值,将该节点的实例服务作为协调节点加入临时黑名单。

对各节点可用资源队列空余程度进行验证评估,进行节点的优先序列调整并结合用户自主设置的节点资源控制参数,完成优先任务队列列表的输出。

进一步的,节点序列管理模块还包括黑名单管理单元,用于根据资源信息的动态监测情况,对临时黑名单进行管理,若临时黑名单中实例服务节点的资源信息在设定的节点资源控制参数范围内,将相关节点移出临时黑名单重新加入优先任务队列列表。

配合完善黑名单的评估、加入和移出策略,更合理地评估出优先任务队列。

进一步的,任务调度模块包括队列接收单元、队列信息处理单元、调度单元;

队列接收单元,用于接收优先任务队列列表,解析相关队列任务;

队列信息处理单元,用于拆解任务队列信息,取出节点和任务的键值,获取任务与实例服务的对应关系;

调度单元,用于按照接收到的队列顺序取得相关任务,发送至对应的实例服务作为协调节点进行任务执行。

从以上技术方案可以看出,本发明具有以下优点:通过动态监控ES集群的各服务运行环境情况进行服务可用验证,得出不同实例服务间的实际软硬件和网络环境差异并加入到任务调度分发的判断机制中,进而完善ES任务调度机制中Round Robin算法无法实现真正均衡的问题。通过轮询节点监测的动态服务资源监控,对ES服务所在节点可用的各项资源指标进行检测评估,实时对可用节点进行任务承载验证。之后再通过节点序列管理的各项资源指标评估标准,进行任务运行优先序列的生成和输出,优先序列的生成依赖各种自定义或默认指标参数,代表当前环境的实际运行情况,并设定一定的冗余余地,避免同一批次序列生成后可能引起的资源指标剧烈变化,导致运行环境倾斜的问题,此外还要结合动态黑名单机制的优化,在部分服务所在节点的环境情况得到改善后,可重新进行分配任务,保证集群的高效可用。这些优化机制最终生成优先序列通过任务调度模块完成最终与ES服务的对接,完成ES任务的运行,完善原本任务轮询调度Round Robin算法的实际均衡能力不足。

此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。

由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例的方法的示意性流程图。

图2是本发明实施例的方法中动态监控示意性流程图。

图3是本发明另一个实施例的装置的示意性框图。

图中,11-轮询节点监测模块,22-节点序列管理模块,33-任务调度模块,101-任务请求接收单元,102-请求信息处理单元,103-监控任务分发单元,104-资源信息接收单元,105-资源信息处理单元,106-封装单元,201-控制参数解析单元,202-验证评估单元,203-优先任务队列列表生成单元,301-队列接收单元,302-队列信息处理单元,303-调度单元。

具体实施方式

为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

如图1所示,本发明实施例提供一种任务调度均衡优化方法,包括如下步骤:

步骤11:动态监测并收集集群中各实例服务和实例服务所在节点的资源信息;

步骤12:根据收集的资源信息结合设置的节点资源控制参数对实例服务所在节点的可用资源空余程度进行验证评估,根据验证评估结果进行节点的优先序列调整,输出优先任务队列列表;

步骤13:接收优先任务队列列表,并解析相关队列任务发送至对应的实例服务作为协调节点进行任务执行。

通过动态监控集群的各实例服务运行环境情况进行服务可用验证,得出不同实例服务间的实际软硬件和网络环境差异并加入到任务调度分发的判断机制中,进而完善任务调度机制中轮训调度算法无法实现真正均衡的问题。

如图2所示,在有些实施例中,步骤11的步骤具体包括:

步骤111:接收任务请求;任务请求用户一般通过客户端输入,例如输入搜索的信息;

步骤112:获取请求中携带的可配协调节点列表并解析汇总,得到可配节点总队列;请求中一般包括任务处理的节点地址;

步骤113:解析可配节点总队列中节点信息,封装监控任务并按照心跳频率将监控任务分发至可配节点总队列中的各节点和实例;需要说明的是,本步骤之前,需要解析节点自定义监控频率参数,如收集信息的心跳频率time_rev(心跳频率为监控收集节点信息的频率),如默认为3秒,可通过配置自定义进行调整;

步骤114:接收各节点和实例返回的集群资源信息;如CPU、内存RAM、磁盘IO信息、网络IPTD延迟和丢包率IPLR等信息;

步骤115:对接收的资源信息进行解析,并合并过滤相关指标信息;如同一机器节点不同实例服务的同一指标信息合并过滤等;

步骤116:将经合并过滤处理的资源信息进行封装,并将封装后的资源信息输出。

监测范围包括轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况。

在有些实施例中,步骤12的步骤包括:

步骤121:接收并解析设置的节点资源控制参数;如CUP极限阈值90%,内存使用率极限85%,最大轮询序列数50,剔除IP(主动封禁加入永久黑名单):XX.XX.XX.XX....,网络波动参数网络IPTD延迟<=100ms、丢包率IPLR<=0.1%等接收轮询节点监测模块封装的集群和服务资源等信息,解析其中的信息和参数;

步骤122:解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入黑名单;

其中,判断资源信息所在节点的IP为设置的剔除IP时,将资源信息所在IP节点加入永久黑名单;根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入临时黑名单;

例如,解析分析接收的CPU使用信息,如果CPU使用率未在自定义参数限制则默认可超过100%,默认CPU队列数最大不超过10;若CPU使用率超过设置阈值,将该CPU所在IP节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的内存使用信息,若某节点内存使用率超过90%,则停止使用该节点作为任务分发节点,并将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的磁盘性能监控信息,若磁盘IO使用率超过100%,且队列延时参数(await)在>500ms时,时,将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的网络监控信息,设置网络IPTD延迟<=200ms、丢包率IPLR<=0.5%,如果不符合参数,将该节点的实例服务作为协调节点加入临时黑名单;

解析分析接收的实例服务任务响应情况,若实例服务处理任务失败或响应超时时间大于设定的时间阈值5s,将该节点的实例服务作为协调节点加入临时黑名单。为了提高任务的处理效率。

步骤123:摒除可配节点总队列中加入黑名单的实例服务(含永久黑名单和临时黑名单),将剩余实例服务按照设置的权重重新排序,生成优先任务队列列表。排序权重默认策略优先级为:服务任务响应情况>网络>内存>磁盘IO>CPU剩余量,可根据需求客户自己配置优先级,根据权重策略排序后得到任务执行序列。

依赖节点资源控制参数,其中包括各种自定义或默认的代表当前环境的实际运行情况指标参数,并设定一定的冗余,避免同一批次序列生成后可能引起的资源指标剧烈变化,导致运行环境倾斜的问题。

在有些实施例中,该方法还包括:

根据资源信息的动态监测情况,对临时黑名单进行管理,若临时黑名单中实例服务节点的资源信息在设定的节点资源控制参数范围内,将相关节点移出临时黑名单重新加入优先任务队列列表。

黑名单管理按照既定规则或自定义规则管理加入的实例服务,除了维护黑名单列表,还需要根据资源动态监测的情况,如果一个实例的网络、内存或CPU等其它资源情况整体得到改善且达到一定标准,如内存使用降到75%以下、CPU使用降到80%以下、磁盘IO的util使用瞬时值低于95%等,则相关节点移出黑名单,重新加入优先任务队列列表中等待选择执行任务。

动态黑名单机制的优化,在部分实例服务所在节点的环境情况得到改善后,可重新进行分配任务,保证集群的高效可用。

在有些实施例中,步骤13包括:

步骤131:接收优先任务队列列表,解析相关队列任务;

步骤132:拆解任务队列信息,取出节点和任务的键值key-value,获取任务与实例服务的对应关系;

步骤133:按照接收到的队列顺序取得相关任务,发送至对应的实例服务作为协调节点进行任务执行。完善原本任务轮询调度算法的实际均衡能力不足的问题。

对当前的任务调度均衡机制进行优化,充分考虑遭遇到集群各实例服务节点间软硬件以及网络存在差异的场景,采用轮询节点动态监测和节点动态监测机制加入节点动态平衡因子,完善轮询算法无法根据实际环境情况进行任务调度调整,将不同实例服务间的软硬件和网络环境差异加入到任务调度分发的判断机制中,完善集群实例服务的任务调度均衡,保证集群的高效运行。

如图3所示,本发明实施例提供一种任务调度均衡优化装置,包括轮询节点监测模块11、节点序列管理模块22和任务调度模块33;

轮询节点监测模块11,用于动态监测并收集集群中各实例服务和实例服务所在节点的资源信息,并将收集的资源信息处理封装后输出到节点序列管理模块22;

节点序列管理模块22,用于根据接收到的资源信息结合设置的节点资源控制参数对实例服务所在节点的可用资源空余程度进行验证评估,根据验证评估结果进行节点的优先序列调整,输出优先任务队列列表到任务调度模块33;

任务调度模块33,用于接收优先任务队列列表,并解析相关队列任务发送至对应的实例服务作为协调节点进行任务执行。

轮询节点监测模块11监测范围轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况,通过对各实例服务的资源情况动态监测感知ES集群的整体资源和个体资源实际负载情况,节点序列管理模块22通过对客户端配置的用于执行任务的作为协调节点的实例服务进行序列管理,经过综合规则匹配和资源评估计算,分析出当前较优可用的节点服务队列,并结合可调控完善的黑名单规则,输出最优的优先任务队列(节点序列和任务序列),并交由任务调度模块33进行任务执行;

在有些实施例中,轮询节点监测模块11包括任务请求接收单元101、请求信息处理单元102、监控任务分发单元103、资源信息接收单元104、资源信息处理单元105、封装单元106;

任务请求接收单元101,用于接收任务请求;

请求信息处理单元102,用于获取请求中携带的可配协调节点列表并解析汇总,得到可配节点总队列;

监控任务分发单元103,用于解析可配节点总队列中节点信息,封装监控任务并按照心跳频率将监控任务分发至可配节点总队列中的各节点和实例;

资源信息接收单元104,用于接收各节点和实例返回的集群资源信息;

资源信息处理单元105,用于对接收的资源信息进行解析,并合并过滤相关指标信息;

封装单元106,用于将经合并过滤处理的资源信息进行封装,并将封装后的资源信息输出到节点序列管理模块。

轮询节点监测模块11监测范围轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况,对各项信息进行动态监测和收集,并将信息进行初步处理封装并传递至节点序列管理模块22进行节点分析和任务分配序列的评估。

在有些实施例中,节点序列管理模块22包括控制参数解析单元201、验证评估单元202、优先任务队列列表生成单元203;

控制参数解析单元201,用于接收并解析设置的节点资源控制参数;

验证评估单元202,用于解析分析接收到的资源信息,并将解析出的资源信息与节点资源控制参数进行验证评估,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入黑名单;

优先任务队列列表生成单元203,用于摒除可配节点总队列中加入黑名单的实例服务,将剩余实例服务按照设置的权重重新排序,生成优先任务队列列表。

需要说明的是,验证评估单元202包括解析分析子模块、验证评估子模块、任务队列调整子模块;

解析分析子模块,用于解析分析接收到的资源信息;

验证评估子模块,用于将解析出的资源信息与节点资源控制参数进行验证评估;

任务队列调整子模块,用于根据验证评估结果将资源信息所在IP节点加入永久黑名单;或,根据验证评估结果将资源信息所在IP节点的实例服务作为协调节点加入临时黑名单。

节点资源控制参数包括剔除IP,任务队列调整子模块,用于判断资源信息所在节点的IP为设置的剔除IP时,将资源信息所在IP节点加入永久黑名单。

节点资源控制参数包括CPU使用率、内存使用率、磁盘IO使用率、网络延迟和丢包率、任务响应时间阈值;

验证评估单元202,用于解析分析接收的CPU使用信息,若CPU使用率超过设置阈值,将该CPU所在IP节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的内存使用信息,若某节点内存使用率超过设定阈值,则停止使用该节点作为任务分发节点,并将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的磁盘性能监控信息,若磁盘IO使用率超过设定阈值,且队列延时参数大于设定的时间阈值时,将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的网络监控信息,若网络延迟大于设定的延迟时间、丢包率大于设定的阈值,将该节点的实例服务作为协调节点加入临时黑名单;用于解析分析接收的实例服务任务响应情况,若实例服务处理任务失败或响应超时时间大于设定的时间阈值,将该节点的实例服务作为协调节点加入临时黑名单。

对各节点可用资源队列空余程度进行验证评估,进行节点的优先序列调整并结合用户自主设置的节点资源控制参数,完成优先任务队列列表的输出。

在有些实施例中,节点序列管理模块22还包括黑名单管理单元,用于根据资源信息的动态监测情况,对临时黑名单进行管理,若临时黑名单中实例服务节点的资源信息在设定的节点资源控制参数范围内,将相关节点移出临时黑名单重新加入优先任务队列列表。

节点序列管理模块22对客户端配置的用于执行任务的作为协调节点的实例服务进行序列管理,通过节点优先序列管理和黑名单管理两部分对ES的各节点可用资源队列空余程度进行验证评估,进行节点的优先序列调整,配合完善黑名单的评估、加入和移出策略,更合理地评估出优先的任务执行序列。此外还要结合用户自主设置的节点资源控制参数,完成最终节点优先序列的队列输出,补充轮询调度算法机制的短板。

在有些实施例中,任务调度模块33包括队列接收单元301、队列信息处理单元302、调度单元303;

队列接收单元301,用于接收优先任务队列列表,解析相关队列任务;

队列信息处理单元302,用于拆解任务队列信息,取出节点和任务的键值,获取任务与实例服务的对应关系;

调度单元303,用于按照接收到的队列顺序取得相关任务,发送至对应的实例服务作为协调节点进行任务执行。

任务调度模块33接收节点序列管理模块22输出的节点优先序列列表并解析队列任务,按照相应的队列顺序将相应的任务对接分发至对应的ES节点实例服务,生成实际的协调节点进行任务运行,完成操作任务的运行。

本申请可以更加有效地进行协调节点任务再分配,完善ES服务本身无法进行实际任务均衡分配的短板,轮询节点监测模块11通过在监测轮询任务范围内的实例服务以及服务所在节点的各项软硬件和网络资源使用情况,对各项如CPU使用率、内存富余和磁盘读写队列、网络等资源等信息进行动态监测和收集,并将信息封装传递进行节点分析和任务分配序列评估,节点序列管理模块22通过对客户端配置的用于执行任务的作为协调节点的实例服务进行序列管理,并细化至节点优先序列管理和黑名单管理,通过动态的集群网络监控和资源监控情况,对ES集群的各节点可用资源队列空余程度进行验证评估,进行节点的优先序列调整,配合完善黑名单的评估、加入和移出策略,更合理地评估出优先的任务执行序列,并结合用户自主设置的节点资源控制参数,完成最终节点优先序列的队列输出,最终靠任务调度模块33接收优先序列列表,解析相关队列任务,按照相应规则生成实际的协调节点进行任务运行,通过优先队列的机制可以更加优化细化合理地进行集群可用资源任务调度,补充原本轮询调度算法机制的不足。

尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

技术分类

06120113793112