一种大数据资源调度系统及方法与流程

文档序号:17079268发布日期:2019-03-09 00:03阅读:246来源:国知局
一种大数据资源调度系统及方法与流程

本发明涉及计算机大数据应用技术领域,尤其是一种大数据资源调度系统及方法。



背景技术:

资源调度是指在特定的资源环境下,根据一定的资源使用规则,在不同的资源使用者之间进行资源调整的过程。在当下的大数据时代,图片、视频和人工智能ai的计算成本逐渐成为不可承受之重。由于计算任务的多样化及资源的有限性,导致资源难以均衡用于各个计算任务;由于设备的购买、裁撤、流转形成了大量的短期空闲设备,导致整体资源利用并不充分,如何挖掘复用现有的空闲资源,以满足当前海量的计算业务的需求,成为大数据应用领域难题。

目前,常用的资源调度方法存在以下问题:一、各类资源不能统一采集、共享和监控,缺乏资源调度的基础;二、不能从全局角度协同调度资源,容易导致资源频繁调度和系统不稳定;三、难以满足超大规模资源调度,最终也难以实现资源的负载均衡。



技术实现要素:

为了克服上述现有技术的缺陷,本发明提供一种大数据资源调度系统,满足了超大规模资源调度,实现了资源的负载均衡,提高了资源利用率,降低了运营成本,进一步的确保了整个系统的稳定性,提高了云计算平台的服务水平。

为实现上述目的,本发明采用以下技术方案,包括:

一种大数据资源调度系统,包括以下组成部分:

采集层,所述采集层对系统中的资源的状态及负载信息进行采集和整合,包括数据采集模块和资源整合模块;

所述数据采集模块对系统中的资源的状态及负载信息进行采集,将采集到资源的状态及负载信息发送给所述资源整合模块;

所述资源整合模块接收并统一管理资源的状态及负载信息;

调度层,所述调度层根据所述采集层中的资源的状态及负载信息并通过云计算平台实现资源的监控、协调、分配,包括资源监控模块、资源协调模块、资源分配模块;

所述资源监控模块获取经所述资源整合模块管理后的资源的状态及负载信息,对资源的状态及负载信息进行监控,并根据策略设置模块预先设置的负载阈值判断资源的负载状态,将资源的负载状态发送给所述资源协调模块;

所述资源协调模块根据资源的负载状态和策略设置模块预先设置的调度策略进行资源协同调度,将资源协同调度的调度请求发送给所述资源分配模块;

所述资源分配模块接收所述资源协调模块的调度请求,并进行资源动态分配;

服务层,所述服务层向所述调度层提供资源的负载阈值和策略,以实现大数据资源的合理调度,包括策略设置模块;

所述策略设置模块用于设置资源的负载阈值和超出负载阈值时的资源的调度策略,所述策略设置模块向所述资源监控模块提供资源的负载阈值,所述策略设置模块向所述资源协调模块提供资源的调度策略。

所述资源采集模块分别对不同资源的负载及状态信息进行采集;资源的类型包括虚拟资源和物理资源,且物理资源包括cpu、内存、网络;所述资源的状态及负载信息包括资源的总容量、资源的使用量、资源的利用率;所述资源整合模块分别对不同资源的总容量、使用量、利用率进行统计。

所述策略设置模块分别设置cpu、内存、网络、虚拟资源的负载上限阈值和负载下限阈值,分别设置cpu、内存、网络、虚拟资源的负载高于负载上限阈值的扩展策略,分别设置cpu、内存、网络、虚拟资源的负载低于负载下限阈值的收缩策略。

若某个资源的负载高于该资源的负载上限阈值,则所述资源监控模块判断该资源的负载状态为高负载;若某个资源的负载低于该资源的负载下限阈值,则所述资源监控模块判断该资源的负载状态为低负载。

若某个资源的负载状态为高负载,则所述资源协调模块调用该资源的扩展策略,并按照调度优先级进行资源协同调度,向资源分配模块发送资源扩展的调度请求,请求增加虚拟机;若某个资源的负载状态为低负载,则所述资源协调模块调用该资源的收缩策略,并按照调度优先级进行资源协同调度,向资源分配模块发送资源收缩的调度请求,请求移除虚拟机;

所述调度优先级:不同时间内的调度请求,优先处理请求时间早的调度请求;同一时间内的调度请求,资源收缩的优先级高于资源扩展的优先级,即优先处理资源收缩的调度请求。

所述资源分配模块为接收所述资源协调模块的调度请求,并按照设定的调度方式进行资源动态分配,完成资源扩展或资源收缩,即完成虚拟机的增加或移除,以实现资源的负载均衡。

所述设定的调度方式为多层分级调度,包括:虚拟机调度层、服务器调度层、集群调度层、总调度层;所述总调度层只有一个数据中心,负责处理集群调度层发送的调度请求;所述集群调度层包括总调度层下的所有集群,负责处理服务器调度层发送的调度请求;所述服务器调度层包括每个集群下的所有服务器,负责处理虚拟机调度层发送的调度请求;所述虚拟机调度层包括每个服务器下的所有虚拟机,负责处理资源协调模块的调度请求,即增加虚拟机或移除虚拟机的请求;

所述多层分级调度的方式具体如下所示:虚拟机调度层先向服务器调度层发送调度请求,请求对同一服务器下的其他虚拟机进行增加或移除;若同一服务器下的其他虚拟机未调度成功,则服务器调度层再向集群调度层发送调度请求,请求对同一集群下的其他服务器下的虚拟机进行增加或移除;若同一集群下的其他服务器下的虚拟机未调度成功,则集群调度层最后向总调度层发送调度请求,请求对其他集群下的虚拟机进行增加或移除。

所述服务层还包括个性化服务模块,所述个性化服务模块向用户提供个性化服务,根据用户请求进行资源定制调度;所述用户请求包括资源扩展的调度请求和资源收缩的调度请求;

所述个性化服务模块的调度方式为:所述个性化服务模块根据用户请求向所述资源协调模块发送资源调度请求,所述资源协调模块向所述资源分配模块发送资源调度请求,所述资源分配模块根据资源调度请求进行资源动态分配。

本发明还提供一种大数据资源调度方法,其特征在于,包括以下步骤:

s1,采集模块对系统中的不同资源的状态及负载信息进行采集;所述不同资源包括cpu、内存、网络、虚拟资源;所述资源的状态及负载信息包括资源的总容量、资源的使用量、资源的利用率;

s2,资源整合模块分别对系统中的不同资源的状态及负载信息进行统一管理,分别对不同资源的总容量、使用量、利用率进行统计;

s3,资源监控模块对系统中的资源的负载状态进行监控,并根据策略设置模块预先设置的资源的负载上限阈值和负载下限阈值判断资源的负载状态为高负载或低负载;

s4,根据资源的负载状态,资源协调模块按照策略设置模块预先设置的调度策略和调度优先级进行资源协同调度;

s5,资源分配模块根据资源协调模块的调度请求,并按照多层分级调度的方式进行资源的动态分配。

步骤s5中,所述多层分级调度,包括:虚拟机调度层、服务器调度层、集群调度层、总调度层;所述总调度层只有一个数据中心,负责处理集群调度层发送的调度请求;所述集群调度层包括总调度层下的所有集群,负责处理服务器调度层发送的调度请求;所述服务器调度层包括每个集群下的所有服务器,负责处理虚拟机调度层发送的调度请求;所述虚拟机调度层包括每个服务器下的所有虚拟机,负责处理资源协调模块的调度请求,即增加虚拟机或移除虚拟机的请求;

所述多层分级调度的方式具体如下所示:虚拟机调度层先向服务器调度层发送调度请求,请求对同一服务器下的其他虚拟机进行增加或移除;若同一服务器下的其他虚拟机未调度成功,则服务器调度层再向集群调度层发送调度请求,请求对同一集群下的其他服务器下的虚拟机进行增加或移除;若同一集群下的其他服务器下的虚拟机未调度成功,则集群调度层最后向总调度层发送调度请求,请求对其他集群下的虚拟机进行增加或移除。

本发明的优点在于:

(1)本发明的资源调度系统,实现了对系统中不同资源的采集、整合、监控、协调、分配和个性化服务的全过程监管,有效地提高了资源调度的整体效率,进一步的提升了资源的动态调度能力。

(2)本发明结合资源协同调度和多层分级调度,对系统中所有资源进行统一监控、协同调度、动态分配,以实现资源的负载均衡,避免出现资源浪费和资源过度调度的现象,最大限度地利用现有资源,提高了资源利用率,降低了运营成本,进一步的确保了整个系统的稳定性,提高云计算平台的服务水平。

附图说明

图1为本发明的一种大数据资源调度系统的结构示意图。

图2为本发明的一种大数据资源调度方法的方法流程图。

图3为多层分级调度的示意图。

具体实施方式

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

由图1所示,一种大数据资源调度系统,包括以下组成部分:

采集层,所述采集层对系统中的资源的状态及负载信息进行采集和整合,包括数据采集模块和资源整合模块;

所述数据采集模块对系统中的资源的状态及负载信息进行采集,将采集到资源的状态及负载信息发送给所述资源整合模块;

所述资源整合模块接收并统一管理资源的状态及负载信息;

调度层,所述调度层根据所述采集层中的资源的状态及负载信息并通过云计算平台实现资源的监控、协调、分配,包括资源监控模块、资源协调模块、资源分配模块;

所述资源监控模块获取经所述资源整合模块管理后的资源的状态及负载信息,对资源的状态及负载信息进行监控,并根据策略设置模块预先设置的负载阈值判断资源的负载状态,将资源的负载状态发送给所述资源协调模块;

所述资源协调模块根据资源的负载状态和策略设置模块预先设置的调度策略进行资源协同调度,将资源协同调度的调度请求发送给所述资源分配模块;

所述资源分配模块接收所述资源协调模块的调度请求,并进行资源动态分配;

服务层,所述服务层向所述调度层提供资源的负载阈值和策略,以实现大数据资源的合理调度,包括策略设置模块;

所述策略设置模块用于设置资源的负载阈值和超出负载阈值时的资源的调度策略,所述策略设置模块向所述资源监控模块提供资源的负载阈值,所述策略设置模块向所述资源协调模块提供资源的调度策略。

其中,所述资源采集模块分别对不同资源的负载及状态信息进行采集;所述不同资源包括cpu、内存、网络、虚拟资源;其中,资源的类型包括虚拟资源和物理资源,且物理资源包括cpu、内存、网络;所述资源的状态及负载信息包括资源的总容量、资源的使用量、资源的利用率;所述资源整合模块分别对不同资源的总容量、使用量、利用率进行统计。

所述策略设置模块根据历史数据,分别设置cpu、内存、网络、虚拟资源的负载上限阈值和负载下限阈值,分别设置cpu、内存、网络、虚拟资源的负载高于负载上限阈值的扩展策略,分别设置cpu、内存、网络、虚拟资源的负载低于负载下限阈值的收缩策略。以cpu为例,在策略设置模块预先进行设置:cpu负载范围为f1~f2,即负载上限阈值为f1,负载下限阈值为f2;若cpu负载为小于f1时,则触发资源收缩策略;若cpu负载为大于f2时,则触发资源扩展策略。

所述资源监控模块对资源的状态及负载信息进行监控,并根据所述策略设置模块预先设置的负载阈值判断资源的负载状态,若某个资源的负载高于该资源的负载上限阈值,则所述资源监控模块判断该资源的负载状态为高负载;若某个资源的负载低于该资源的负载下限阈值,则所述资源监控模块判断该资源的负载状态为低负载。以cpu为例,应用集群k在t时刻的cpu负载为

其中,n表示单位时间内采集到监控数据的次数,cpuki表示集群k的第i台虚拟机的cpu的总容量,cpuusekitm表示集群k的第i台虚拟机在tm监控时刻的cpu的使用量。预先设置的负载范围为f1~f2,若fzcpuki<f1时,则该cpu为低负载;若fzcpuki>f2时,则该cpu为高负载。

所述资源协调模块根据资源的负载状态和所述策略设置模块预先设置的调度策略进行资源协同调度,若某个资源的负载状态为高负载,则所述资源协调模块调用该资源的扩展策略,并按照调度优先级进行资源协同调度,向资源分配模块发送资源扩展的调度请求,请求增加虚拟机;若某个资源的负载状态为低负载,则所述资源协调模块调用该资源的收缩策略,并按照调度优先级进行资源协同调度,向资源分配模块发送资源收缩的调度请求,请求移除虚拟机。

所述调度优先级:不同时间内的调度请求,优先处理请求时间早的调度请求;同一时间内的调度请求,资源收缩的优先级高于资源扩展的优先级,即优先处理资源收缩的调度请求。

所述资源分配模块为接收所述资源协调模块的调度请求,并按照多层分级调度的方式进行资源动态分配,完成资源扩展或资源收缩,即完成虚拟机的增加或移除,以实现资源的负载均衡。

由图3所示,所述多层分级调度,包括:虚拟机调度层、服务器调度层、集群调度层、总调度层;所述总调度层只有一个数据中心,负责处理集群调度层发送的调度请求;所述集群调度层包括总调度层下的所有集群,负责处理服务器调度层发送的调度请求;所述服务器调度层包括每个集群下的所有服务器,负责处理虚拟机调度层发送的调度请求;所述虚拟机调度层包括每个服务器下的所有虚拟机,负责处理资源协调模块的调度请求,即增加虚拟机或移除虚拟机的请求。

所述多层分级调度的方式具体如下所示:虚拟机调度层先向服务器调度层发送调度请求,请求对同一服务器下的其他虚拟机进行增加或移除;若同一服务器下的其他虚拟机未调度成功,则服务器调度层再向集群调度层发送调度请求,请求对同一集群下的其他服务器下的虚拟机进行增加或移除;若同一集群下的其他服务器下的虚拟机未调度成功,则集群调度层最后向总调度层发送调度请求,请求对其他集群下的虚拟机进行增加或移除。

所述服务层还包括个性化服务模块,所述个性化服务模块向用户提供个性化服务,根据用户请求进行资源定制调度;所述用户请求包括资源扩展的调度请求和资源收缩的调度请求。若业务需求处于高峰增长期,则用户通过个性化服务模块向资源协调模块请求资源扩展,若业务需求处于低潮下降期,则用户通过个性化服务模块向资源协调模块请求资源收缩,使资源利用最大化。

所述个性化服务模块的调度方式为:所述个性化服务模块根据用户请求向所述资源协调模块发送资源调度请求,所述资源协调模块向所述资源分配模块发送资源调度请求,所述资源分配模块根据资源调度请求进行资源动态分配。

由图2所示,一种大数据资源调度方法,包括以下步骤:

s1,采集模块对系统中的不同资源的状态及负载信息进行采集;所述不同资源包括cpu、内存、网络、虚拟资源;所述资源的状态及负载信息包括资源的总容量、资源的使用量、资源的利用率;

s2,资源整合模块分别对系统中的不同资源的状态及负载信息进行统一管理,分别对不同资源的总容量、使用量、利用率进行统计;

s3,资源监控模块对系统中的资源的负载状态进行监控,并根据策略设置模块预先设置的资源的负载上限阈值和负载下限阈值判断资源的负载状态为高负载或低负载;

s4,根据资源的负载状态,资源协调模块按照策略设置模块预先设置的调度策略和调度优先级进行资源协同调度;

s5,资源分配模块根据资源协调模块的调度请求,并按照多层分级调度的方式进行资源的动态分配。

本发明提供的是一种大数据资源调度系统及方法,满足超大规模资源调度,实现资源的负载均衡,提高资源利用率,降低运营成本,进一步的确保了整个系统的稳定性,提高了云计算平台的服务水平,适用于大数据资源监控、协调和分配。

以上仅为本发明创造的较佳实施例而已,并不用以限制本发明创造,凡在本发明创造的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明创造的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1