一种计算资源接入及调度系统和方法与流程

文档序号:24160088发布日期:2021-03-05 15:34阅读:74来源:国知局
一种计算资源接入及调度系统和方法与流程

[0001]
本发明涉及计算资源领域,更具体地,涉及一种计算资源接入及调度系统和方法。


背景技术:

[0002]
目前,高性能计算资源作为企业的信息化基础建设,已经服务于各主体单位的科研生产,但是对于集团企业而言,各主体单位之间的重复建设造成了极大的经费和资源浪费,要实现集团层面对现有高性能计算资源的统筹共享,需要对分属不同主题单位的高性能计算资源进行统一接入及调度。
[0003]
各主体单位的高性能计算资源不仅分布在不同的地方,同时由于建设周期不一致,采购不统一,采用的资源调度软件存在不一致情况,如有的是pbs,有的是lsf等,这样导致了计算资源的调度软件也不一致。


技术实现要素:

[0004]
本发明的目的在于提供一种计算资源接入及调度系统和方法,解决异地异构计算资源的统一接入和调度问题,实现对异地异构高性能计算资源的统筹使用,有效提升资源利用率。
[0005]
为达到上述目的,本发明采用下述技术方案:
[0006]
本发明第一方面提供一种计算资源接入及调度系统,包括:资源信息收集模块、资源信息管理模块、资源调度中间件、主节点和从节点;
[0007]
其中,
[0008]
所述资源信息收集模块用于收集各集群已接入的现有的从节点的计算资源的资源信息,并定时上报给各集群的主节点;
[0009]
所述资源信息管理模块用于将所述各集群的主节点收集到的资源信息定时进行更新;
[0010]
所述资源调度中间件通过自带的命令行接口进行对各集群主节点的计算资源的提交、查询和控制,并定时收集各集群计算资源的使用数据,所述资源调度中间件通过配置文件对计算资源分配限制和策略进行干预和管理。
[0011]
在一个具体实施例中,所述集群包括本地集群和远程集群;
[0012]
在一个具体实施例中,所述资源调度中间件包括资源监控模块和作业调度模块,其中,
[0013]
所述资源监控模块定期执行一次对所有远程集群的查询来获取所有远程集群的信息,并从每个远程集群的主节点获取该集群计算资源的资源信息。
[0014]
在一个具体实施例中,所述计算资源的资源信息包括:各集群中各应用所在队列的可用cpu/核数,可用磁盘及其他自定义资源的可用数和所述远程集群开放给外来作业的文件服务器数据存储的路径。
[0015]
在一个具体实施例中,所述计算资源分为私有资源和公有资源两种类型,本地集
群可以使用私有资源和公有资源,对于远程集群则只能使用公有资源;在所述作业调度模块中需要检查远程集群中公有的资源信息,然后决定是否将作业发送到所述远程集群。
[0016]
在一个具体实施例中,对远程集群的查询方式为多线程方式轮询,在轮询远程集群的过程中,如果对某个远程集群的查询时间超过预定时间,则视为超时,直到下一次调度到来才能再次调度,对于超时的远程集群,此时忽略此远程集群的数据,不影响对其他远程集群的计算资源信息获取。
[0017]
在一个具体实施例中,对远程集群的查询采取缓冲的机制,每个集群都会定时收集自身计算资源的信息,然后更新本地内存中的数据。
[0018]
在一个具体实施例中,所述系统包括通信端口,便于各集群之间的通信。
[0019]
本发明第二方面提供一种利用本发明第一方面所述系统进行计算资源的接入及调度的方法,包括以下步骤:
[0020]
接入,接入各集群现有的从节点的计算资源,所述资源信息收集模块用于收集各集群已接入的现有的从节点的计算资源的资源信息,并定时上报给各集群的主节点;
[0021]
所述资源信息管理模块用于将所述各集群的主节点收集到的资源信息定时进行更新;
[0022]
连通,通信端口使得各集群之间正常通信;
[0023]
部署资源调度中间件,通过资源调度中间件自带的命令行接口进行对各集群主节点的计算资源的提交、查询和控制,并定时收集各集群计算资源的使用数据,所述资源调度中间件通过配置文件对计算资源分配限制和策略进行干预和管理;
[0024]
制定调度策略,响应于用户需求,通过本地集群的门户入库提交对计算资源的使用需求,优先调度使用本地集群的计算资源,如果本地集群的计算资源不够,则远程调度远程集群的公有资源。
[0025]
在一个具体实施例中,所述资源调度中间件还包括:云端调度组件、本地调度组件和数据传输模块;
[0026]
所述制定调度策略包括以下步骤:
[0027]
响应于用户需求,通过门户入库提交计算资源的使用需求;
[0028]
门户根据配置向相应的资源调度中间件提出服务请求;
[0029]
资源调度中间件通过本地的资源信息管理模块和远程的资源信息管理模块获取全局范围内的计算资源的状态信息,并向门户反馈合适的计算资源服务;
[0030]
门户通过资源调度中间件中的云端调度组件将作业调度到相应的集群中;
[0031]
在相应的集群,通过资源调度中间件中的本地调度组件完成本地的作业调度执行;
[0032]
完成作业后,通过资源调度中间件中的数据文件传输模块将作业结果文件存放到网络中指定的存储路径下,门户响应于用户来获取作业结果文件。
[0033]
本发明的有益效果如下:
[0034]
针对已经建设并投入使用的异地异构高性能计算资源统一调度的需求,采用中间件的方法,在不影响原集群中所使用的调度系统情况下,实现对异构高性能计算资源的统一监控,并在此基础上实现统一调度,实现了异地异构的集群间的计算资源共享和高效利用。
附图说明
[0035]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0036]
图1示出本发明的一个实施例一种计算资源接入及调度系统的示意图。
[0037]
图2示出本发明的一个实施例制定调度策略的流程图。
具体实施方式
[0038]
为使本发明的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0039]
本发明第一实施例提供一种计算资源接入及调度系统,如图1所示,包括:资源信息收集模块3、资源信息管理模块4、资源调度中间件5、主节点6和从节点7;
[0040]
其中,
[0041]
所述资源信息收集模块3用于收集各集群已接入的现有的从节点7的计算资源的资源信息,并定时上报给各集群的主节点6;
[0042]
所述资源信息管理模块4用于将所述各集群的主节点6收集到的资源信息定时进行更新;
[0043]
所述资源调度中间件5通过自带的命令行接口进行对各集群主节点的计算资源的提交、查询和控制,并定时收集各集群计算资源的使用数据,所述资源调度中间件5通过配置文件对计算资源分配限制和策略进行干预和管理。
[0044]
在一个具体实施例中,所述集群包括本地集群1和远程集群2;
[0045]
在一个具体实施例中,所述资源调度中间件5包括资源监控模块和作业调度模块,其中,
[0046]
所述资源监控模块定期,例如15秒,可以配置,执行一次对所有远程集群2的查询来获取所有远程集群的信息,并从每个远程集群的主节点获取该集群计算资源的资源信息。
[0047]
在一个具体实施例中,所述计算资源的资源信息包括:各集群中各应用所在队列的可用cpu/核数,可用磁盘及其他自定义资源的可用数和所述远程集群开放给外来作业的文件服务器数据存储的路径。
[0048]
在一个具体实施例中,所述计算资源分为私有资源和公有资源两种类型,本地集群可以使用私有资源和公有资源,对于远程集群则只能使用公有资源;在所述作业调度模块中需要检查远程集群中公有的资源信息,然后决定是否将作业发送到所述远程集群。
[0049]
在一个具体实施例中,对远程集群2的查询方式为多线程方式轮询,在轮询远程集群的过程中,如果对某个远程集群的查询时间超过预定时间,例如15秒,可以配置,则视为超时,直到下一次调度到来才能再次调度,对于超时的远程集群,此时忽略此远程集群的数据,不影响对其他远程集群2的计算资源信息获取。
[0050]
在一个具体实施例中,对远程集群2的查询采取缓冲的机制,每个集群都会定时收集自身计算资源的信息,然后更新本地内存中的数据。
[0051]
在一个具体实施例中,所述系统包括通信端口,便于各集群之间的通信。
[0052]
本发明第二实施例提供一种利用本发明第一实施例所述系统进行计算资源的接入及调度的方法,包括以下步骤:
[0053]
接入,接入各集群现有的从节点7的计算资源,所述资源信息收集模块用于收集各集群已接入的现有的从节点的计算资源的资源信息,并定时上报给各集群的主节点;
[0054]
所述资源信息管理模块用于将所述各集群的主节点6收集到的资源信息定时进行更新;
[0055]
连通,通信端口使得各集群之间正常通信;
[0056]
部署资源调度中间件,通过资源调度中间件自带的命令行接口进行对各集群主节点的计算资源的提交、查询和控制,并定时收集各集群计算资源的使用数据,所述资源调度中间件通过配置文件对计算资源分配限制和策略进行干预和管理;
[0057]
制定调度策略,响应于用户需求,通过本地集群的门户入库提交对计算资源的使用需求,优先调度使用本地集群的计算资源,如果本地集群的计算资源不够,则远程调度远程集群的公有资源。
[0058]
在一个具体实施例中,所述资源调度中间件还包括:云端调度组件、本地调度组件和数据传输模块;
[0059]
如图2所示,所述制定调度策略包括以下步骤:
[0060]
响应于用户需求,通过门户入库提交计算资源的使用需求;
[0061]
门户根据配置向相应的资源调度中间件提出服务请求;
[0062]
资源调度中间件通过本地的资源信息管理模块和远程的资源信息管理模块获取全局范围内的计算资源的状态信息,并向门户反馈合适的计算资源服务;
[0063]
门户通过资源调度中间件中的云端调度组件将作业调度到相应的集群中;
[0064]
在相应的集群,通过资源调度中间件中的本地调度组件完成本地的作业调度执行;
[0065]
完成作业后,通过资源调度中间件中的数据文件传输模块将作业结果文件存放到网络中指定的存储路径下,门户响应于用户来获取作业结果文件。
[0066]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1