CN108647090B - 一种资源分配方法及装置、服务器集群 - Google Patents

一种资源分配方法及装置、服务器集群 Download PDF

Info

Publication number
CN108647090B
CN108647090B CN201810292098.0A CN201810292098A CN108647090B CN 108647090 B CN108647090 B CN 108647090B CN 201810292098 A CN201810292098 A CN 201810292098A CN 108647090 B CN108647090 B CN 108647090B
Authority
CN
China
Prior art keywords
resource
computing resources
execution
execution units
task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810292098.0A
Other languages
English (en)
Other versions
CN108647090A (zh
Inventor
李栋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201810292098.0A priority Critical patent/CN108647090B/zh
Publication of CN108647090A publication Critical patent/CN108647090A/zh
Application granted granted Critical
Publication of CN108647090B publication Critical patent/CN108647090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)

Abstract

本申请公开了一种资源分配方法及装置、服务器集群,其中,所述方法包括:获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。

Description

一种资源分配方法及装置、服务器集群
技术领域
本申请涉及计算机技术领域,具体涉及一种资源分配方法及装置、服务器集群。
背景技术
目前,服务器集群在执行计算任务时大多采用统一的资源配置方案,比如,服务器集群的运行参数完全依照提交任务时所指定的资源分配参数来运行。
然而,由于一些硬件的不断更新,导致服务器集群中各节点的硬件配置不一样,比如,一个服务器集群中各节点的计算资源如中央处理器、内存等经常会有差异,采用统一配置方案会导致很多节点中的计算资源无法被充分利用。
发明内容
有鉴于此,本申请提供一种资源分配方法及装置、服务器集群,实现了服务器集群中不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
为达到上述目的,本申请的技术方案是这样实现的:
本申请实施例提供了一种资源分配方法,所述方法包括:
获取服务器集群中至少一个节点的资源信息;
基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
在一些可选实施例中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,包括:
基于服务器集群中第一节点的剩余资源信息,确定将所述第一节点的剩余资源分配给至少两个执行单元,其中,至少有两个执行单元的计算资源不同。
在一些可选实施例中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,包括:
基于服务器集群中第一节点和第二节点不同的剩余资源信息,确定对应第一节点的第一执行单元以及对应第二节点的第二执行单元,其中,所述第一执行单元与所述第二执行单元的计算资源不同。
在一些可选实施例中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,还包括:
确定计算资源中至少一个第一资源的分配范围,基于所述分配范围和所述资源信息对所述第一资源进行分配。
在一些可选实施例中,所述基于所述分配范围和所述资源信息对所述第一资源进行分配,包括:
基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
在一些可选实施例中,所述方法还包括:
在提交任务时触发将计算资源分配给执行单元。
在一些可选实施例中,所述方法还包括:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
在一些可选实施例中,所述基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
本申请实施例提供了一种服务器集群,包括:
处理器;
存储器,用于存储可执行代码,其中,所述可执行代码可由所述处理器读取以进行以下操作:
获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
本申请实施例提供了一种资源分配装置,所述资源分配装置包括:
获取单元,用于获取服务器集群中至少一个节点的资源信息;
分配单元,用于基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行本申请实施例所述的资源分配方法。
采用本申请实施例的技术方案,获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
附图说明
图1为本申请实施例提供的资源分配方法的实现流程示意图一;
图2为本申请实施例提供的资源分配方法的实现流程示意图二;
图3为本申请实施例提供的资源分配方法的实现流程示意图三;
图4为本申请实施例提供的资源分配装置的组成结构示意图;
图5为本申请实施例提供的服务器集群的组成结构示意图。
具体实施方式
为了能够更加详尽地了解本申请的特点与技术内容,下面结合附图对本申请的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请。下面结合附图和具体实施例对本申请的技术方案进一步详细阐述。
实施例一
本实施例提供了一种资源分配方法,应用于服务器集群中,如图1所示,所述资源分配方法主要包括以下步骤:
步骤101:获取服务器集群中至少一个节点的资源信息。
其中,服务器集群中每台服务器就叫做该服务器集群的一个节点,所有节点构成一个服务器集群。
本实施例中,所述资源信息包括中央处理器(CPU,Central Processing Unit)和内存(Memory)等等。
步骤102:基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
这里,所述执行单元是虚拟机,即是虚拟存在的,而节点相当于是物理机。物理机提供给虚拟机以硬件环境。
在一些可选实施方式中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,还包括:
确定计算资源中至少一个第一资源的分配范围,基于所述分配范围和所述资源信息对所述第一资源进行分配。
这里,所述第一资源是计算资源中的任意一种资源,比如所述第一资源是CPU资源或是内存资源。
在一些可选实施例中,所述确定计算资源中至少一个第一资源的分配范围,包括:
获得第一资源的初始分配参数;
获得第一资源的许可调整参数;
根据所述许可调整参数以及所述初始分配参数,确定第一资源的分配范围。
如此,在所述分配范围内对服务器集群中第一资源进行动态分配,以使所述服务器集群中的第一资源的利用率高于预设值。
其中,根据所述许可调整参数以及所述初始分配参数,确定第一资源的分配范围,包括:
将所述初始分配参数与所述许可调整参数之和,作为所述分配范围的上限值;
将所述初始分配参数与所述许可调整参数之差,作为所述分配范围的下限值。
举例来说,在指定第一资源的初始分配参数的同时,还指定了服务器集群第一资源的许可调整参数,如指定executor_mem的许可调整范围是5GB,则用户指定executor_mem的初始分配参数为12G时,系统可以根据节点的内存资源情况在7GB~17GB分配范围内动态调整。
在一些可选实施方式中,所述基于所述分配范围和所述资源信息对所述第一资源进行分配,包括:
基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为服务器集群中的第一资源的利用率高于预设值。
在一些可选实施例中,所述基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功,包括:
从所述分配范围中确定第一资源的目标分配参数;
基于所述目标资源分配参数对第一资源进行资源分配;
若资源分配失败,则继续从所述分配范围中确定新的目标资源分配参数,直至采用所述新的目标分配参数实现针对第一资源的资源分配成功为止;
其中,资源分配成功的标准为服务器集群中的第一资源的计算资源的利用率高于预设值。
这里,所述预设值可以由系统预先设定或根据实际情况进行调整。
其中,不同计算资源对应的预设值可以不同。
举例来说,在对内存资源进行调整时,需要不断尝试,假设确定出的分配范围为7G~17G,那么,开始先按照17G为单位进行分配,若以17G为单位进行分配无法满足利用率高于预设值,继续调至以16G为单位,若16G仍无法满足利用率高于预设值,继续调至以15G为单位,最后假设直到以12G为单位时整成功。
需要说明的是,若只能在7G~17G内调整,且从17G调到了7G仍不成功,即便假设是若以6G为单位时能满足利用率高于预设值,也判定为调整完全失败。
再举例来说,在指定第一资源的初始分配参数的同时,还指定了服务器集群第一资源的许可调整参数,如指定executor_cores的动态范围是2,指定executor_cores的初始分配参数为5时,系统可以根据节点的核资源情况在3核至7核分配范围内动态调整。比如,在将CPU是8cores的节点上,动态申请1个cores=5+2=7的执行单元,甚至可以在CPU是24cores的节点上动态申请4个cores=5,1个cores=3的执行单元。
可选地,从所述分配范围中确定第一资源的目标分配参数时,还可结合接收到的计算任务来确定,以便更有针对性地根据待执行的计算任务实现对第一资源的资源分配。
进一步地,可选地,所述方法还包括:
在提交任务时触发将计算资源分配给执行单元。
如此,根据接收到的任务进行资源分配,能够在预配置时有不同的资源配置方案,实现了不同执行单元的计算资源可以不同。
进一步地,可选地,所述方法还包括:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
如此,能够在预配置时或是在后续任务的实际执行中,对执行单元的计算资源进行调整。
在一些可选实施例中,所述基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
如此,基于任务的执行情况对执行任务的执行单元的计算资源进行调整,从而更有助于充分利用服务器集群中的计算资源,还有助于缩短计算任务的执行时间。
采用本实施例所述技术方案,由于至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
实施例二
本实施例提供了一种资源分配方法,应用于服务器集群中,如图2所示,所述资源分配方法主要包括以下步骤:
步骤201:获取服务器集群中第一节点的剩余资源信息。
其中,所述第一节点可以理解为服务器集群的所有节点中的任意一个节点。
本实施例中,所述剩余资源信息可以理解为所述第一节点中尚未被分配的资源信息。
举例来说,第一节点有32核CPU,若已有30个核被分配,那么,则第一节点的CPU剩余资源信息为2核。
再举例来说,第一节点有16G内存,若已有15G内存被分配,那么,则第一节点的内存剩余资源信息为1G。
步骤202:基于服务器集群中第一节点的剩余资源信息,确定将所述第一节点的剩余资源分配给至少两个执行单元,其中,至少有两个执行单元的计算资源不同。
也就是说,基于获取的第一节点的剩余资源信息,不均衡地向至少两个执行单元分配第一节点的剩余资源,从而使得至少两个执行单元的计算资源不同。
举例来说,第一节点的CPU剩余核资源为3核,向第一执行单元分配2核CPU资源,向第二执行单元分配1核CPU资源。
再举例来说,第一节点的内存剩余核资源信息为5G,向第一执行单元分配2核内存资源,向第二执行单元分配3核内存资源。
如此,通过将一个节点中的剩余资源不均衡分配给至少两个执行单元,使得至少有两个执行单元的计算资源存在不同,而所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
进一步地,可选地,所述方法还包括:
在提交任务时触发将计算资源分配给执行单元。
如此,根据接收到的任务进行资源分配,能够在预配置时有不同的资源配置方案,实现了不同执行单元的计算资源可以不同。
进一步地,可选地,所述方法还包括:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
如此,能够在预配置时或是在后续任务的实际执行中,对执行单元的计算资源进行调整。
在一些可选实施例中,所述基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
如此,基于任务的执行情况对执行任务的执行单元的计算资源进行调整,从而更有助于充分利用服务器集群中的计算资源,还有助于缩短计算任务的执行时间。
采用本实施例所述技术方案,由于至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
实施例三
本实施例提供了一种资源分配方法,应用于服务器集群中,如图3所示,所述资源分配方法主要包括以下步骤:
步骤301:获取服务器集群中第一节点和第二节点不同的剩余资源信息。
其中,所述第一节点和所述第二节点可以理解为服务器集群的所有节点中的任意两个节点。
本实施例中,所述剩余资源信息可以理解为节点中尚未被分配的资源信息。
举例来说,第一节点有32核CPU,若已有30个核被分配,那么,则第一节点的CPU剩余核资源信息为2核;第一节点有16G内存,若已有15G内存被分配,那么,则第一节点的内存剩余核资源信息为1G。第二节点有64核CPU,若已有60个核被分配,那么,则第一节点的CPU剩余核资源信息为4核;第二节点有32G内存,若已有30G内存被分配,那么,则第二节点的内存剩余核资源信息为2G。可见,第一节点的剩余资源为CPU2核、内存1G,第二节点的剩余资源为CPU4核、内存2G,显然,二者的剩余资源信息不同。
步骤302:基于服务器集群中第一节点和第二节点不同的剩余资源信息,确定对应第一节点的第一执行单元以及对应第二节点的第二执行单元,其中,所述第一执行单元与所述第二执行单元的计算资源不同。
这里,需要说明的是,同一个节点可以对应一个或多个执行单元。
也就是说,第一执行单元是第一节点对应的多个执行单元中的一个执行单元,第二执行单元是第二节点对应的多个执行单元中的一个执行单元。
由于第一节点的剩余资源与第二节点的剩余资源不同,那么,若第一节点的剩余资源分配给第一执行单元,第二节点的剩余资源分配给第二执行单元,显然,第一执行单元与第二执行单元对应的计算资源不同,从而使得所有执行单元中至少两个执行单元的计算资源不同。
举例来说,第一节点的剩余资源为CPU2核、内存1G,第二节点的剩余资源为CPU 4核、内存2G,那么,第一执行单元被分配的计算资源为CPU 2核、内存1G,第二执行单元被分配的计算资源为CPU 4核、内存2G。显然,第一执行单元与第二执行单元的计算资源不同。
如此,由于将不同节点对应的不同的剩余资源进行了分配,使得至少有两个执行单元的计算资源存在不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
进一步地,可选地,所述方法还包括:
在提交任务时触发将计算资源分配给执行单元。
如此,根据接收到的任务进行资源分配,能够在预配置时有不同的资源配置方案,实现了不同执行单元的计算资源可以不同。
进一步地,可选地,所述方法还包括:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
如此,能够在预配置时或是在后续任务的实际执行中,对执行单元的计算资源进行调整。
在一些可选实施例中,所述基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
如此,基于任务的执行情况对执行任务的执行单元的计算资源进行调整,从而更有助于充分利用服务器集群中的计算资源,还有助于缩短计算任务的执行时间,提高计算任务的执行效率。
采用本实施例所述技术方案,由于至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配,如此,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
实施例四
本实施例提供了一种资源分配装置,应用于服务器集群,如图4所示,所述装置包括:
获取单元41,用于获取服务器集群中至少一个节点的资源信息;
分配单元42,用于基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
在一些可选的实施方式中,所述分配单元42,还用于:
基于服务器集群中第一节点的剩余资源信息,确定将所述第一节点的剩余资源分配给至少两个执行单元,其中,至少有两个执行单元的计算资源不同。
在一些可选的实施方式中,所述分配单元42,还用于:
基于服务器集群中第一节点和第二节点不同的剩余资源信息,确定对应第一节点的第一执行单元以及对应第二节点的第二执行单元,其中,所述第一执行单元与所述第二执行单元的计算资源不同。
在一些可选的实施方式中,所述分配单元42,还用于:
确定计算资源中至少一个第一资源的分配范围,基于所述分配范围和所述资源信息对所述第一资源进行分配。
在一些可选的实施方式中,所述分配单元42,还用于:
基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
在一些可选的实施方式中,所述分配单元42,还用于:
在提交任务时触发将计算资源分配给执行单元。
在一些可选的实施方式中,所述分配单元42,还用于:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
在一些可选的实施方式中,所述分配单元42基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
需要说明的是:上述实施例提供的资源分配装置在进行资源分配时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将服务器的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的资源分配装置与资源分配方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本实施例中,所述资源分配装置中的获取单元41和分配单元42,在实际应用中均可由所述资源分配装置或所述资源分配装置所在服务器集群中的中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Signal Processor)、微控制单元(MCU,Microcontroller Unit)或可编程门阵列(FPGA,Field-Programmable GateArray)等实现。
本实施例所述资源分配装置,实现了不同执行单元的计算资源可以不同,从而有利于更为合理地分配和利用服务器集群中每个节点的计算资源。
实施例五
本实施例提供了一种服务器集群,如图5所示,所述服务器集群包括:
处理器10;
存储器20,用于存储可执行代码,其中,所述可执行代码可由所述处理器10读取以进行以下操作:
获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
基于服务器集群中第一节点的剩余资源信息,确定将所述第一节点的剩余资源分配给至少两个执行单元,其中,至少有两个执行单元的计算资源不同。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
基于服务器集群中第一节点和第二节点不同的剩余资源信息,确定对应第一节点的第一执行单元以及对应第二节点的第二执行单元,其中,所述第一执行单元与所述第二执行单元的计算资源不同。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
确定计算资源中至少一个第一资源的分配范围,基于所述分配范围和所述资源信息对所述第一资源进行分配。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
在提交任务时触发将计算资源分配给执行单元。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
作为一种实施方式,所述处理器10执行所述可执行代码时实现:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
需要说明的是:本领域技术人员应当理解,本实施例的服务器集群中各器件的功能,可参照实施例所述的应用于服务器集群侧的资源分配方法的相关描述而理解,这里不再赘述。
本实施例所述服务器集群,由于允许至少两个执行单元的计算资源不同,使得服务器集群在执行任务时,各执行单元对应的计算资源不完全相同,由于允许各执行的那远对应的计算资源有差异性,因此能够提高服务器集群中各节点的资源利用率,还解决了现有的因要求各执行单元对应的计算资源的配置一致而导致各节点的剩余计算资源无法得到利用的问题。
实施例六
本实施例提供了一种计算机存储介质,其上存储有计算机指令,上述计算机指令可由服务器集群的处理器执行,以完成前述应用于服务器集群侧的资源分配方法所述步骤。
本实施例提供的计算机存储介质,其上存储有计算机指令,该指令被处理器执行时实现:获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配。
本领域技术人员应当理解,本实施例的计算机存储介质中各程序的功能,可参照前述各实施例所述的资源分配方法的相关描述而理解,在此不再赘述。
还应理解,本文中列举的各个可选实施例仅仅是示例性的,用于帮助本领域技术人员更好地理解本公开实施例的技术方案,而不应理解成对本公开实施例的限定,本领域普通技术人员可以在本文所记载的各个可选实施例的基础上进行各种改变和替换,也应理解为本公开实施例的一部分。
此外,本文对技术方案的描述着重于强调各个实施例的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本申请上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种资源分配方法,其特征在于,所述方法包括:
获取服务器集群中至少一个节点的资源信息;
基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配;其中,
所述基于所述资源信息,将计算资源分配给至少两个执行单元,还包括:
确定计算资源中至少一个第一资源的分配范围,基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
2.根据权利要求1所述的资源分配方法,其特征在于,所述基于所述资源信息,将计算资源分配给至少两个执行单元,包括:
基于服务器集群中第一节点的剩余资源信息,确定将所述第一节点的剩余资源分配给至少两个执行单元,其中,至少有两个执行单元的计算资源不同。
3.根据权利要求1所述的资源分配方法,其特征在于,所述基于所述资源信息,将计算资源分配给至少两个执行单元,包括:
基于服务器集群中第一节点和第二节点不同的剩余资源信息,确定对应第一节点的第一执行单元以及对应第二节点的第二执行单元,其中,所述第一执行单元与所述第二执行单元的计算资源不同。
4.根据权利要求1所述的资源分配方法,其特征在于,所述方法还包括:
在提交任务时触发将计算资源分配给执行单元。
5.根据权利要求1所述的资源分配方法,其特征在于,所述方法还包括:
在任务执行之前,对为执行单元预配置的计算资源进行调整;和/或,
在任务的执行过程中,基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,其中,所述任务的执行情况包括所述任务的至少一种计算资源的利用率。
6.根据权利要求5所述的资源分配方法,其特征在于,所述基于任务的执行情况,对执行任务的执行单元的计算资源进行调整,包括以下至少一种:
基于任务的执行情况,调整执行任务的执行单元的数量;或
基于任务的执行情况,对执行所述任务的执行单元中一个或多个的计算资源进行调整。
7.一种服务器集群,其特征在于,所述服务器集群包括:
处理器;
存储器,用于存储可执行代码,其中,所述可执行代码可由所述处理器读取以进行以下操作:
获取服务器集群中至少一个节点的资源信息;基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配;其中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,还包括:确定计算资源中至少一个第一资源的分配范围,基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,
调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
8.一种资源分配装置,其特征在于,所述资源分配装置包括:
获取单元,用于获取服务器集群中至少一个节点的资源信息;
分配单元,用于基于所述资源信息,将计算资源分配给至少两个执行单元,其中,所述执行单元中至少有两个执行单元的计算资源不同,所述服务器集群执行计算任务时以所述执行单元为基础进行分配;其中,所述基于所述资源信息,将计算资源分配给至少两个执行单元,还包括:确定计算资源中至少一个第一资源的分配范围,基于所述第一资源的资源信息,在所述分配范围内对所述第一资源进行迭代尝试,直到为各执行单元分配的第一资源调整成功;其中,调整成功的标准为所述服务器集群中的第一资源的利用率高于预设值。
CN201810292098.0A 2018-04-03 2018-04-03 一种资源分配方法及装置、服务器集群 Active CN108647090B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810292098.0A CN108647090B (zh) 2018-04-03 2018-04-03 一种资源分配方法及装置、服务器集群

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810292098.0A CN108647090B (zh) 2018-04-03 2018-04-03 一种资源分配方法及装置、服务器集群

Publications (2)

Publication Number Publication Date
CN108647090A CN108647090A (zh) 2018-10-12
CN108647090B true CN108647090B (zh) 2021-09-14

Family

ID=63745180

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810292098.0A Active CN108647090B (zh) 2018-04-03 2018-04-03 一种资源分配方法及装置、服务器集群

Country Status (1)

Country Link
CN (1) CN108647090B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109933429A (zh) * 2019-03-05 2019-06-25 北京达佳互联信息技术有限公司 数据处理方法、装置、电子设备及存储介质
CN111950849A (zh) * 2020-07-09 2020-11-17 华为技术有限公司 数据处理方法和数据处理装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102902587B (zh) * 2011-07-28 2015-10-07 中国移动通信集团四川有限公司 分布式任务调度方法、系统和装置
US11018988B2 (en) * 2013-08-26 2021-05-25 Vmware, Inc. Translating high level requirements policies to distributed configurations
CN103455378A (zh) * 2013-09-05 2013-12-18 华为技术有限公司 一种虚拟化集群的资源分配方法、装置和系统
CN104881325B (zh) * 2015-05-05 2018-09-21 中国联合网络通信集团有限公司 一种资源调度方法和资源调度系统
CN107729154A (zh) * 2017-11-09 2018-02-23 北京小米移动软件有限公司 资源分配方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"A virtual machine placement algorithm for balanced resource utilization in cloud data centers";Nguyen Trung Hieu等;《2014 IEEE 7th International Conference on Cloud Computing》;20141204;第474-481页 *
"支持随机服务请求的云虚拟机按需物理资源分配方法";曹洁等;《软件学报》;20170228;第28卷(第2期);第457-472页 *

Also Published As

Publication number Publication date
CN108647090A (zh) 2018-10-12

Similar Documents

Publication Publication Date Title
US11416307B2 (en) System and method for processing task resources
US9639402B2 (en) Systems and methods for automatic hardware provisioning based on application characteristics
US20170024251A1 (en) Scheduling method and apparatus for distributed computing system
CN111865657B (zh) 一种加速管理节点、加速节点、客户端及方法
EP3913859A1 (en) Vnf life cycle management method and apparatus
WO2015158108A1 (zh) 虚拟机资源的变更方法、装置及虚拟网络功能设备
CN109995814B (zh) 云主机资源的迁移方法及装置、通信设备、存储介质
CN113037794B (zh) 计算资源配置调度方法、装置及系统
EP3125468B1 (en) Cloud application processing method and application deployment method and relevant apparatus and system
JP2015144020A5 (zh)
WO2021227954A1 (zh) 基于容器集群的应用访问请求处理
US11132229B2 (en) Method, storage medium storing instructions, and apparatus for implementing hardware resource allocation according to user-requested resource quantity
WO2020119029A1 (zh) 分布式任务调度方法、系统及存储介质
CN108647090B (zh) 一种资源分配方法及装置、服务器集群
CN110162397B (zh) 资源分配方法、装置及系统
CN111459676A (zh) 一种节点资源管理方法、装置及存储介质
CN113285843B (zh) 容器网络配置方法、装置、计算机可读介质及电子设备
CN105677481B (zh) 一种数据处理方法、系统及电子设备
CN107491352B (zh) 一种资源调度方法及装置
CN107534678B (zh) 建立vnfm与vim之间的连接的方法、装置及系统
CN113051245A (zh) 用于迁移数据的方法、装置及系统
CN111382141A (zh) 主从架构配置方法、装置、设备以及计算机可读存储介质
CN116010093A (zh) 数据处理方法、装置、计算机设备和可读存储介质
CN111367648A (zh) 资源分配的方法和装置
CN113495789B (zh) 内存分配方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant