一种用于在集群中调度计算任务的方法与设备的制造方法

文档序号:9921913阅读:236来源:国知局
一种用于在集群中调度计算任务的方法与设备的制造方法
【技术领域】
[0001]本申请涉及计算机领域,尤其涉及一种用于在集群中调度计算任务的技术。
【背景技术】
[0002]利用互联网实现云计算的过程中,在每一个云服务节点上存在多个计算任务,需要针对所述计算任务进行资源隔离,进而,相互隔离的计算任务基于所述云服务节点调用整个集群分配的各种资源。
[0003]目前,该领域采用的方案有:
[0004]—是绝对控制方法。即对每一个云服务节点对应的多个计算任务,可以依据所述云服务节点自身的资源总量进行资源量的分配,每个计算任务最多可以使用的资源量为确定数值。此种方法,在每个计算任务实际需要的资源量大于其所分配到的资源量的确定数值时,所述计算任务的需求得不到满足;而当所述计算任务需要的资源量大大小于所分配到的资源量的确定数值时,又会带来资源的浪费。
[0005]二是相对控制方法。即对每一个云服务节点对应的多个计算任务,可以依据所述云服务节点自身的资源总量、对每个计算任务按照一定比例进行资源量的分配,此时,若某个计算任务压力过大时,若所对应的云服务节点按照权重切割,则会由于该计算任务的异常情况影响到其他计算任务的顺利进行。

【发明内容】

[0006]本申请的目的是提供一种用于在集群中调度计算任务的方法与设备。
[0007]根据本申请的一个方面,提供了一种用于在集群中调度计算任务的方法,包括:
[0008]获取集群中待调度的多个计算任务;
[0009]根据所述计算任务所对应的任务负荷信息将所述多个计算任务划分为多个任务子集,其中,各任务子集分别对应于所述集群中一个集群节点。
[0010]根据本申请的另一方面,还提供了一种用于在集群中调度计算任务的设备,包括:
[0011]第一装置,用于获取集群中待调度的多个计算任务;
[0012]第二装置,用于根据所述计算任务所对应的任务负荷信息将所述多个计算任务划分为多个任务子集,其中,各任务子集分别对应于所述集群中一个集群节点。
[0013]与现有技术相比,本申请通过基于集群中待调度的多个计算任务对应的任务负荷信息,将每个所述计算任务都划分到一个对应于某个集群节点的任务子集中,从而,为所述集群中待调度的多个计算任务找到了最佳划分组合,从而最大化利用整个集群的资源,实现更加合理的系统资源调度策略。
【附图说明】
[0014]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
[0015]图1示出根据本申请一个方面的一种用于在集群中调度计算任务的设备示意图;
[0016]图2示出根据本申请另一个方面的一种用于在集群中调度计算任务的方法流程图;
[0017]图3示出根据本申请一个优选实施例的集群节点M调度前的计算任务负荷示意图;
[0018]图4示出根据本申请一个优选实施例的集群节点N调度前的计算任务负荷示意图;
[0019]图5示出根据本申请一个优选实施例的集群节点M调度后的计算任务负荷示意图;
[0020]图6示出根据本申请一个优选实施例的集群节点N调度后的计算任务负荷示意图。
[0021 ] 附图中相同或相似的附图标记代表相同或相似的部件。
【具体实施方式】
[0022]下面结合附图对本申请作进一步详细描述。
[0023]在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0024]内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
[0025]计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0026]图1示出根据本申请一个方面的一种用于在集群中调度计算任务的设备示意图。所述用于在集群中调度计算任务的设备I包括第一装置101和第二装置102。
[0027]其中,第一装置101获取集群中待调度的多个计算任务;第二装置102用于根据所述计算任务所对应的任务负荷信息将所述多个计算任务划分为多个任务子集,其中,各任务子集分别对应于所述集群中一个集群节点。
[0028]具体地,所述设备I的第一装置101获取集群中待调度的多个计算任务。在此,所述的集群,优选地为基于互联网用于进行云计算的多台服务器组成的集群。每一台所述服务器都是为用户提供云计算等服务的集群节点。在所述每一台服务器上都有若干个正在进行的计算任务。所述的计算任务包括在集群节点上的进程服务、线程服务等。本方案需要对集群中多个集群节点下的多个计算任务进行重新调度划分,从而优化集群资源的分配,所以首先需要确定等待调度安排的多个计算任务。在本方案中,资源池越大,确定获取的待调度的计算任务越多,调度对于系统的匹配度就会越高,进而调度精确度就会越好,集群资源分配的优化效果就越显著。
[0029]此外,所述每一个计算任务在所述集群中,例如在云资源系统中,都有与之对应的的备份计算任务,从而使得所述计算任务对应的数据信息得以被保存,进一步,所述计算任务和与之对应的备份计算任务之间通过同步机制保障数据信息的一致性。在此,通过对计算任务进行灾备安排,可以避免由于数据信息的损毁、灭失等突发状况带来的损失。
[0030]在此,本领域技术人员应该能够理解,所述第一装置获取的集群中待调度的多个计算任务也可以来自于所述设备I之外的第三方设备。即从第三方设备中收集待调度的多个计算任务,再由所述设备I进行相应的信息处理、任务调度的生成并执行等操作。
[0031]接着,所述设备I的第二装置102根据所述计算任务所对应的任务负荷信息将所述多个计算任务划分为多个任务子集,其中,各任务子集分别对应于所述集群中一个集群节点。在此,若要为多个不同的计算任务进行最佳划分,以便使得集群资源利用最大化,首先要获得等待调度的多个计算任务的任务负荷信息。所述的任务负荷信息包括所述计算任务对应的各种可度量指标数据信息,包括但不限于CPU使用率、内存使用率、网络使用、内存使用、网卡流量等与所述计算任务相关的属性指标,这些指标数据能够直观反应所述计算任务对于具体某一种或几种相关集群资源的使用和消耗需要,如一个进程任务的运行需要的对应的CPU使用率、或是内存使用率情况等。所述计算任务消耗的某一类集群资源越多,则带给它所对应的集群节点的压力负荷也就越大。此外,所述的任务负荷信息也可以是多个单一、具体的可度量指标数据信息复合而成的一个综合可度量指标数据,例如对于单一可度量指标数据信息CPU使用率、内存使用率和网络使用按照一定的组合计算生成一个综合指标数据,如基于实际情况为CPU使用率、内存使用率和网络使用参数分别设置一定的权重,得到需要的综合可度量指标数据。
[0032]例如,对所有的待调度的多个计算任务基于同一可度量指标在同一个时间段或是时间点的具体数值进行分析比较,基于一定的划分操作,就可以将满足最优划分条件的多个计算任务划分到同一个任务子集中。例如存在待调度的计算任务A、B、C、D分别属于集群节点1、2、3、4 ;通过对所述计算任务A、B、C、D各自的任务负荷信息进行分析,并基于具体的划分操作,最终选出计算任务A、B、C三个任务重新划分到一个任务子集中,并对应于集群节点1,这一新的计算任务的组合的生成是对集群资源的利用率的优化。在此,集群资源提供的云计算的服务能力呈现的是一种动态分布、实时变化的特点,而作为本方案中所述划分操作对应的计算数据来源的任务负荷信息即可以很好的反应这种数据动态变化,如,所述任务负荷信息可以确定到某一确定可度量指标在确定时间段或时间点对应的具体数值信息。
[0033]在此,本领域技术人员应能理解,所述第一装置和所述第二装置可以是同一设备中的不同装置。进一步,在实际应用中,将所述第一装置和所述第二装置部署在不同的设备上也可以完成本方案,此时如可适用本申请,也应包含在本申请的保护范围以内,并在此以引用方式包含于此。
[0034]在此,本申请通过基于集群中待调度的多个计算任务对应的任务负荷信息,将每个所述计算任务都划分到一个对应于某个集群节点的任务子集中,从而,为所述集群中待调度的多个计算任务找到了最佳划分组合,从而最大化利用整个集群的资源,实现更加合理的系统资源调度策略。优选地,所述用于在集群中调度计算任务的设备I还包括第三装置(未示出),所述第三装置将所述任务子集分配至对应的所述集群节点,并在所述集群节点中执行所述任务子集中的所述计算任务。
[0035]具体地,通过实时采集所述计算任务的资源使用情况,并通过计算引擎,再进行任务调度,所述互联网用户在请求某一计算任务时,所述计算任务对
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1