CN116932182A - 资源调度方法、装置、系统、服务器和存储介质 - Google Patents
资源调度方法、装置、系统、服务器和存储介质 Download PDFInfo
- Publication number
- CN116932182A CN116932182A CN202210334434.XA CN202210334434A CN116932182A CN 116932182 A CN116932182 A CN 116932182A CN 202210334434 A CN202210334434 A CN 202210334434A CN 116932182 A CN116932182 A CN 116932182A
- Authority
- CN
- China
- Prior art keywords
- resource
- service
- resources
- server
- node
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 124
- 230000008569 process Effects 0.000 claims abstract description 51
- 238000012545 processing Methods 0.000 claims description 110
- 238000004590 computer program Methods 0.000 claims description 9
- 239000000523 sample Substances 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 10
- 239000002699 waste material Substances 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 238000004458 analytical method Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000009467 reduction Effects 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035772 mutation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
一种资源调度方法、装置、系统、服务器和存储介质,涉及计算机技术领域。服务器根据负载画像确定业务的特征值,并根据资源编排策略确定与特征值匹配的资源调度计划,进而根据该资源调度计划为业务分配资源。负载画像指示了业务在运行过程中所占用的资源信息,且资源编排策略指示了特征值与预分配资源的关联关系,服务器无需按用户端指定的资源需求为业务分配资源,避免了指定资源需求导致业务所占用资源的利用率较低。且服务器可根据业务在运行过程中所占用的资源信息确定业务将被分配的资源,即业务被分配的资源是根据负载画像确定的,在业务的执行过程中,服务器也可根据负载画像对业务所需的资源进行调整,避免了算力被浪费。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种资源调度方法、装置、系统、服务器和存储介质。
背景技术
随着大数据(big data)、人工智能(Artificial Intelligence,AI)、云计算(cloud computing)的技术的发展,数据产生的速度超过了现有的常规设备的处理和计算的能力。面对未来更加多样的数据形态和计算场景,涌现出了诸多不同形态的计算集群,如云计算数据中心。云计算数据中心中的服务器按照资源需求向用户端提供软硬件资源和信息,以便用户端运行应用(application,APP)。以云计算应用为例,服务器根据用户端指定的资源需求为用户端分配资源。然而,由于用户端对云计算应用中业务所需资源的预期一般偏高,导致用户端对服务器提供的资源的利用率较低,服务器的算力被浪费。因此,如何提供一种高效的资源调度方法成为目前亟需解决的问题。
发明内容
本申请提供一种资源调度方法、装置、系统、服务器和存储介质,解决了服务器的资源利用率较低、算力被浪费的问题。
本申请采用如下技术方案。
第一方面,本申请提供了一种资源调度方法,该方法应用于云计算数据中心,或支持实现该云计算数据中心实现资源调度方法的物理设备,如该物理设备是指服务器,该服务器可包括芯片系统。这里以服务器执行资源调度方法为例进行说明,该资源调度方法包括:首先,服务器根据负载画像获得业务的特征值;该负载画像用于指示前述业务在运行过程中所占用的资源信息。其次,服务器根据资源编排策略确定与特征值匹配的资源调度计划;该资源编排策略用于指示特征值与预分配资源的关联关系,该资源调度计划用于指示将为业务分配的资源,如该资源可包括以下任意一种或组合:计算资源、网络资源和存储资源。最后,服务器根据资源调度计划为业务分配资源。
在本实施例中,服务器可根据负载画像确定业务的特征值,并根据资源编排策略确定与特征值匹配的资源调度计划,进而根据该资源调度计划为业务分配资源。由于负载画像指示了业务在运行过程中所占用的资源信息,且资源编排策略指示了特征值与预分配资源的关联关系,服务器无需根据用户端指定的资源需求为业务分配资源,避免了用户端指定业务所需的资源导致资源的利用率较低的问题。且服务器可根据业务在运行过程中所占用的资源信息确定业务将被分配的资源,即业务被分配的资源是根据负载画像确定的,在业务的执行过程中,服务器也可根据负载画像对业务所需的资源进行调整,避免了算力被浪费。换言之,本实施例提供的资源调度方法有效的利用了服务器提供的算力。
在一些可选的情形中,本实施例提供的特征值可包括以下任意一项或几项的组合:中央处理单元(central processing unit,CPU)核数、CPU利用率、内存利用率、网络带宽、存储带宽和时延指标。CPU核数是指业务运行所占用的核的数量,该核可以是指CPU包含的物理核,也可以是物理核虚拟化后获得的虚拟核(virtual core)。CPU利用率用于指示业务运行所占用的CPU资源与服务器分配给该业务的CPU资源的比例。内存利用率用于指示业务运行所占用的内存资源与服务器分配给该业务的内存资源的比例。网络带宽用于指示业务运行所占用的网络带宽,网络带宽是指单位时间(如1秒)内能传输的数据量。存储带宽用于指示单位时间内,分配给该业务的存储资源的输入输出(input output,IO)数据量。时延指标可以是指业务执行的时延信息,如性能劣化(slowdown)指标。
在本实施例中,服务器可根据负载画像确定业务的特征值,针对于不同的业务类型,特征值包含的信息可以不同,从而,服务器根据资源编排策略确定与该特征值匹配的资源调度计划,避免了服务器仅能按照单一或少量类型的资源阈值为业务分配资源,导致算力被浪费。
在另一些可选的情形中,服务器为业务分配的资源来自于多个资源池中的第一资源池,该第一资源池包含的资源是由一个或多个服务器提供的。该一个或多个服务器可包含执行本实施例提供的资源调度方法的服务器,也可不包含执行本实施例提供的资源调度方法的服务器,不予限定。此外,前述的多个资源池还可包括第二资源池,或其他资源池。
前述的负载画像可包括第一画像和第二画像,该第一画像用于指示多个资源池提供的资源信息,该第二画像用于指示第一资源池提供的资源信息。在一些示例中,第一画像可称为宏观画像,第二画像可称为微观画像。
在一种可选的实现方式中,服务器根据资源调度计划为业务分配资源,包括:服务器根据资源调度计划确定业务将被分配的资源信息,以及根据该将被分配的资源信息为业务分配一个或多个处理节点(node);该处理节点用于提供运行业务所需的资源。示例性的,服务器为业务分配的所有处理节点提供的资源和资源调度计划指示的将为业务分配的资源是一致的。在本实施例中,服务器以处理节点的形式为业务分配资源,一个处理节点可作为一个独立的计算设备来运行业务包含的至少部分计算任务,多个处理节点可实现对业务的分布式处理,提高业务的处理速度,提高业务的处理效率。
示例性的,处理节点也可以是指虚拟机(virtual machine,VM)、容器(container)等。
在另一种可选的实现方式中,前述的资源调度方法还包括:若特征值符合设定的条件,服务器将运行业务的一个或多个处理节点加入第一节点池;以及,在达到设定的时间阈值后,服务器释放第一节点池中处理节点提供的资源。示例性的,该第一节点池也可称为该服务器所在云计算数据中心的黑名单节点池,服务器可在设定的时间阈值后,将黑名单节点池所包括的处理节点的资源进行释放,避免部分处理节点提供的资源被闲置,导致计算资源浪费。
在一些可行的情形中,服务器将运行业务的一个或多个处理节点加入第一节点池,包括:服务器根据负载画像确定运行业务的多个处理节点,并将多个处理节点中处于空闲(idle)状态的处理节点加入第一节点池。在本实施例中,服务器可将处于空闲状态的处理节点置于将被释放资源的第一节点池,使得资源池提供的资源被充分利用,减少了被闲置的资源,提高了资源利用率。
在又一种可选的实现方式中,前述的资源调度方法还包括:第一步,服务器将第一节点池包括的处理节点移出业务的弹性负载均衡(elastic load balance,ELB)组;该ELB组包含的处理节点用于运行前述的业务。第二步,服务器从ELB组的剩余处理节点中选择一个或多个处理节点运行业务。在本实施例中,服务器将ELB组包含的处于空闲状态的处理节点(简称:空闲节点)移除,在后续的业务运行过程中,业务由ELB组包含的剩余处理节点运行,避免了空闲节点的资源被占用,使得服务器可将该空闲节点提供的资源分配给其他业务,在不影响前述业务的运行的情况下,提高了服务器处理多个业务的能力,充分的利用了服务器提供的算力,避免了算力被浪费的问题。
在另一些可行的情形中,运行业务的处理节点中包含至少一个保留节点,保留节点提供的资源在业务的运行过程中不会被释放。在业务的运行过程中,服务器始终为该业务保留至少一个保留节点,且该保留节点提供的资源在业务的运行过程中不会被释放,以避免业务发生中断,导致业务的连续性受到影响。
在又一种可选的实现方式中,前述的资源调度方法还包括:服务器展示负载画像,和/或,服务器展示运行业务的成本信息和性能信息中至少一种。服务器展示前述内容(负载画像、成本信息和性能信息)的方式可以包括,但不限于:将负载画像、成本信息和性能信息中至少一种发送到显示设备,由显示设备显示接收到的负载画像、成本信息和性能信息中一种或多种。在本实施例中,服务器对负载画像、成本信息和性能信息中至少一种进行显示,使得用户可通过显示设备查看云计算数据中心的运行情况,以及针对于目标客户所需执行的业务,云计算数据中心的提供商可提供给目标客户执行该业务的成本信息和性能信息,使得目标客户可根据自身的业务需求进行资源调整,避免了目标客户仅能指定资源导致的资源浪费以及成本上升等问题。
第二方面,提供了一种资源调度装置,所述资源调度装置包括用于执行第一方面或第一方面任一种可能设计中的资源调度方法的各个模块。示例性的,该资源调度装置包括:特征单元、策略单元和分配单元。
特征单元,用于根据负载画像获得业务的特征值;该负载画像用于指示业务在运行过程中所占用的资源信息。策略单元,用于根据资源编排策略确定与特征值匹配的资源调度计划;该资源编排策略用于指示特征值与预分配资源的关联关系,资源调度计划用于指示将为业务分配的资源,前述的资源包括以下任意一种或组合:计算资源、网络资源和存储资源。分配单元,用于根据资源调度计划为业务分配资源。
另外,当资源调度装置装置用于实现上述第一方面中任一方面的方法实施例时,有益效果可以参见第一方面中任一方面的描述,此处不再赘述。所述资源调度装置具有实现上述第一方面中任一方面的方法实例中行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一些可选的情形中,前述的特征值包括以下任意一项或几项的组合:CPU核数、CPU利用率、内存利用率、网络带宽、存储带宽和时延指标。
在另一些可选的情形中,服务器为业务分配的资源来自于多个资源池中的第一资源池,该第一资源池包含的资源是由一个或多个服务器提供的;前述的负载画像包括第一画像和第二画像,第一画像用于指示多个资源池提供的资源信息,第二画像用于指示第一资源池提供的资源信息。
在一种可选的实现方式中,分配单元,具体用于:根据资源调度计划确定业务将被分配的资源信息;以及,根据将被分配的资源信息为业务分配一个或多个处理节点,处理节点用于提供运行业务所需的资源。
在另一种可选的实现方式中,资源调度装置还包括:释放单元。该释放单元,用于:若特征值符合设定的条件,将运行业务的一个或多个处理节点加入第一节点池;以及,在达到设定的时间阈值后,释放第一节点池中处理节点提供的资源。
在一些可行的示例中,释放单元,具体用于:根据负载画像确定运行业务的多个处理节点;以及,将多个处理节点中处于空闲状态的处理节点加入第一节点池。
在又一种可选的实现方式中,资源调度装置还包括:移出单元和执行单元。移出单元,用于将第一节点池包括的处理节点移出业务的ELB组;ELB组包含的处理节点用于运行业务。执行单元,用于从ELB组的剩余处理节点中选择一个或多个处理节点运行业务。
可选的,前述运行业务的处理节点中包含至少一个保留节点,保留节点提供的资源在业务的运行过程中不会被释放。
在又一种可选的实现方式中,资源调度装置还包括:展示单元,用于展示负载画像,和/或,展示运行业务的成本信息和性能信息中至少一种。
第三方面,提供了一种资源调度系统,包括:至少一个服务器。示例性的,服务器根据负载画像获得业务的特征值,该负载画像用于指示业务在运行过程中所占用的资源信息;其次,服务器根据资源编排策略确定与特征值匹配的资源调度计划;该资源编排策略用于指示特征值与预分配资源的关联关系,资源调度计划用于指示将为业务分配的资源,服务器为业务分配的资源包括以下任意一种或组合:计算资源、网络资源和存储资源。最后,服务器根据资源调度计划为业务分配资源。
当资源调度系统用于实现上述第一方面中任一方面的方法实施例时,有益效果可以参见第一方面中任一方面的描述,此处不再赘述。
第四方面,提供了一种服务器,包括:存储器,用于存储计算机指令;处理器,用于从存储器中调用并运行该计算机指令,执行第一方面或第一方面任一种可能实现方式中的资源调度方法的操作步骤。另外,该处理器还可以通过逻辑电路或执行代码指令用于实现第一方面和第一方面中任一种可能实现方式中的方法。
第五方面,提供了一种计算机可读存储介质,存储介质中存储有计算机程序或指令,当计算机程序或指令被服务器执行时,执行第一方面或第一方面任一种可能实现方式中的资源调度方法的操作步骤。
第六方面,提供了一种计算机程序产品,当计算机程序产品在计算设备(如服务器)上运行时,使得计算设备执行如第一方面或第一方面任意一种可能的实现方式中所述资源调度方法的操作步骤。
第七方面,本申请提供一种芯片,包括控制电路和接口电路,接口电路用于接收来自服务器之外的其它计算设备的信号并传输至处理器,或将来自处理器的信号发送给服务器之外的其它计算设备,处理器通过逻辑电路或执行代码指令用于实现上述第一方面或第一方面中任一种可能实现方式中方法的操作步骤。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
图1为本申请提供的云计算数据中心的结构示意图;
图2为本申请提供的资源调度系统的结构示意图;
图3为本申请提供的资源调度方法的流程示意图一;
图4为本申请提供的资源调度方法的流程示意图二;
图5为本申请提供的资源调度界面的示意图;
图6为本申请提供的性能信息的比对示意图;
图7为本申请提供的资源调度装置的结构示意图。
具体实施方式
本申请提供了一种资源调度方法:服务器可根据负载画像确定业务的特征值,并根据资源编排策略确定与特征值匹配的资源调度计划,进而根据该资源调度计划为业务分配资源。由于负载画像指示了业务在运行过程中所占用的资源信息,且资源编排策略指示了特征值与预分配资源的关联关系,服务器无需根据用户端指定的资源需求为业务分配资源,避免了用户端指定业务所需的资源导致资源的利用率较低的问题。且服务器可根据业务在运行过程中所占用的资源信息确定业务将被分配的资源,即业务被分配的资源是根据负载画像确定的,在业务的执行过程中,服务器也可根据负载画像对业务所需的资源进行调整,避免了算力被浪费。换言之,本实施例提供的资源调度方法有效的利用了服务器提供的算力。
为了下述各实施例的描述清楚简洁,首先给出相关技术的简要介绍。
图1为本申请提供的一种云计算数据中心的结构示意图,该云计算数据中心110通过网络130与客户端120进行通信,网络130可以是因特网,或其他网络(如以太网)。网络130可以包括一个或多个网络设备,网络设备可以是路由器或交换机等。
客户端120可以是运行有应用程序的计算机,该运行有应用程序的计算机可以是物理机,也可以是虚拟机。
例如,若该运行有应用程序的计算机为物理机,该物理机可以是服务器或终端(terminal)。其中,终端也可以称为终端设备、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。终端可以是手机、平板电脑、笔记本电脑、桌面电脑、台式计算机、虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制中的无线终端、无人驾驶中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对客户端120所采用的具体技术和具体设备形态不做限定。
又如,该运行有应用程序的计算机为虚拟机(VM),该客户端120可以是运行在云计算数据中心110中任意一个或多个服务器上的软件模块。
云计算数据中心110是指通过局域网或互联网连接的计算机集合,通常用于执行大型任务(也可以称为作业(job)),这里的作业通常是需要较多计算资源并行处理的大型作业,本实施例不限定作业的性质和数量。一个作业可能包含多个计算任务,这些任务可以分配给多个计算资源执行。大多数任务是并发或并行执行的,而有一些任务则需要依赖于其他任务所产生的数据。云计算数据中心中每台服务器使用相同的硬件和相同的操作系统;或者,可以根据业务需求,云计算数据中心的服务器中采用不同的硬件和不同的操作系统。
由云计算数据中心110包含的多个服务器协同执行任务,避免了该任务仅由一个服务器执行导致的处理时延较大,且该任务可以由多个服务器并发执行,提高了任务的执行效率。
如图1所示,云计算数据中心110包括多个服务器,例如服务器111~服务器114,各个服务器可以提供计算资源。就一台服务器来说,它可以包含多个处理器或处理器核,每个处理器或者处理核可以是一个计算资源,因此一台服务器可以提供多个计算资源。例如,服务器可以是指客户端(client)服务器或服务端(server)服务器。
云计算数据中心110可以处理多种类型的作业。本实施例对任务的数量,以及可以并行执行的任务的数据都没有予以限制。示例的,上述的作业是指虚拟机的热迁移、服务器之间的主从备份、或者资源调度(或称资源分配)等。该作业可以由客户端生成并提交给计算器集群执行,比如提交给云计算数据中心中的一个或者多个服务器执行。具体的,本申请不限定提交业务的位置。
在图1中,作业可以从客户端120通过网络130提交给云计算数据中心110。比如作业可以提交给服务器111,在作业提交给服务器111的情况下,服务器111可以用于管理云计算数据中心110中所有的服务器,以完成该作业所包括的一个或多个任务,如调度其他服务器的计算资源或存储资源等。又比如,作业也可以提交给云计算数据中心110中的其他服务器,本实施例不限定提交作业的位置。
值得注意的是,图1只是示意图,该云计算数据中心110中还可以包括其他设备,在图1中未画出,本申请的实施例对该系统中包括的服务器(计算设备)、客户端的数量和类型不做限定。示例的,云计算数据中心110还可以包括更多或更少的计算设备,如云计算数据中心110包括两个计算设备,一个计算设备用于实现上述服务器111和服务器112的功能,另一个计算设备用于实现上述服务器113和服务器114的功能。
在一些可行的实现方式中,云计算数据中心110包含的服务器还可利用虚拟化技术处理云计算数据中心110中硬件所提供的资源,获得一个或多个资源池,其中的一个资源池包含的资源可由云计算数据中心110中一个或多个服务器提供。示例性的,该一个或多个资源池可包括第一资源池。作为一种可选的实现方式,该云计算数据中心110提供的资源池还可包括第二资源池或其他资源池,不予限定。
在一些情形中,云计算数据中心110可支持实现资源调度的功能,如该云计算数据中心110包含资源调度系统,该资源调度系统可用于分配云计算数据中心110所包含的服务器提供的资源,该资源可包括计算资源、存储资源和网络资源中至少一种。如图2所示,图2为本申请提供的资源调度系统的结构示意图,该资源调度系统200包括:资源分析与画像系统210、资源分析预测系统220以及性能诊断与优化系统230。
资源分析与画像系统210,用于获取资源池中不同规格的处理节点中可用资源的负载画像与预测信息。负载画像用于指示业务在运行过程中所占用的资源信息,预测信息用于描述业务所占用的资源信息的变化趋势。处理节点也可称为虚拟机、容器或算力实例,如处理节点为算力实例时,可以是华为TM弹性云服务器(elastic cloud server,ECS)或者其他厂商提供的弹性云服务器(elastic compute cloud,EC2),一个处理节点可用于提供业务运行所需的资源。示例性的,资源分析与画像系统210可以是指云上计算资源指标的数据分析与智能画像系统。
资源分析预测系统220,用于确定资源池中不同规格的处理节点的实际负载变化。示例性的,资源分析预测系统220可以是指云上资源分析预测的系统。
性能诊断与优化系统230,用于根据业务的特征值匹配不同的处理节点。示例性的,性能诊断与优化系统230可以是指云上计算资源的性能诊断与优化系统。
值得注意的是,资源调度系统200包含的任一系统可由图1中云计算数据中心100包含的一个或多个服务器支持实现,本申请对此不予限定。
下面将结合附图对本实施例提供的资源调度方法的具体实现方式进行详细描述。
如图3所示,图3为本申请提供的资源调度方法的流程示意图一,该资源调度方法可应用于图1所示出的云计算数据中心100,并由图2所示出的资源调度系统200来实现,示例性的,这里以资源调度方法由服务器执行为例进行说明,本实施例提供的资源调度方法包括以下步骤S310至S330。
S310,服务器根据负载画像获得业务的特征值。
这里的业务可以是指云上具有弹性资源需求的任意一种业务。
该负载画像用于指示前述业务在运行过程中所占用的资源信息。
在一种可选的情形中,如云计算数据中心100提供了多个资源池,假设业务在运行过程中所占用的资源信息是由多个资源池中的第一资源池提供的,则该负载画像可包括第一画像和第二画像。
其中的第一画像用于指示多个资源池提供的资源信息,第二画像用于指示第一资源池提供的资源信息。
在一些示例中,前述的第一画像可称为宏观画像,如该第一画像是由图2所示出的资源分析预测系统220确定的。
在另一些示例中,前述的第二画像可称为微观画像,如该第二画像是由图2所示出的资源分析与画像系统210确定的。
在一种可选的实现方式中,S310中业务的特征值可包含以下任意一项或几项的组合:CPU核数、CPU利用率、内存利用率、网络带宽、存储带宽和时延指标。
CPU核数是指业务运行所占用的核的数量,该核可以是指CPU包含的物理核,也可以是物理核虚拟化后获得的虚拟核(virtual core)。
CPU利用率用于指示业务运行所占用的CPU资源与服务器分配给该业务的CPU资源的比例。
内存利用率用于指示业务运行所占用的内存资源与服务器分配给该业务的内存资源的比例。
网络带宽用于指示业务运行所占用的网络带宽,网络带宽是指单位时间(如1秒)内能传输的数据量。如1百万字节(million bytes,MB)每秒(per second,/s),或者3MB/s。
存储带宽用于指示单位时间内,分配给该业务的存储资源的输入输出(inputoutput,IO)数据量。时延指标可以是指业务执行的时延信息,如性能劣化(slowdown)指标。
业务的类型不同,服务器根据负载画像确定的特征值可以不同。例如,若业务为计算密集型业务,如CPU敏感型,则特征值可包括CPU核数、CPU利用率等;又如,若业务为存储密集型业务,如IO敏感型,则特征值可包括内存利用率、存储带宽等。
在本实施例中,服务器可根据负载画像确定业务的特征值,针对于不同的业务类型,特征值包含的信息可以不同,从而,服务器根据资源编排策略确定与该特征值匹配的资源调度计划,避免了服务器仅能按照单一或少量类型的资源阈值为业务分配资源,导致算力被浪费。
S320,服务器根据资源编排策略确定与特征值匹配的资源调度计划。
该资源编排策略用于指示特征值与预分配资源的关联关系,
该资源调度计划用于指示将为业务分配的资源,如该资源可包括以下任意一种或组合:计算资源、网络资源和存储资源。
服务器可用每秒浮点运算次数或每秒整点运算次数来描述每个处理节点的计算能力,或者,服务器还可用处理节点所包含的vCPU数量来描述处理节点的处理能力。
服务器可用存储容量和存储带宽中至少一种来描述处理节点中存储资源的处理能力。存储容量用于指示处理节点所能存储的数据量,存储带宽也可以是指存储资源的数据访问速度,如1GB/s、5GB/s或其他等。
服务器可用网络带宽和数据传输时延中至少一种来描述处理节点中网络资源的处理能力。如数据传输时延为1毫秒(millisecond,ms)、3ms或其他等。
由于负载画像指示了业务在运行过程中所占用的资源信息,且资源编排策略指示了特征值与预分配资源的关联关系,服务器无需根据用户端指定的资源需求为业务分配资源,避免了用户端指定业务所需的资源导致资源的利用率较低的问题。
S330,服务器根据资源调度计划为业务分配资源。
服务器可根据业务在运行过程中所占用的资源信息确定业务将被分配的资源,即业务被分配的资源是根据负载画像确定的,在业务的执行过程中,服务器也可根据负载画像对业务所需的资源进行调整,避免了算力被浪费。换言之,本实施例提供的资源调度方法有效的利用了服务器提供的算力。
在一些可选的情形中,服务器为业务分配的资源来自于多个资源池中的第一资源池,该第一资源池包含的资源是由一个或多个服务器提供的。值得注意的是,为第一资源池提供资源的一个或多个服务器可包含执行本实施例提供的资源调度方法的服务器,也可不包含执行本实施例提供的资源调度方法的服务器,不予限定。
值得注意的是,当第一资源池所能提供的资源不足以满足业务的运行需求时,服务器还可将多个资源池包括的其他资源池(如第二资源池)包含的资源分配给前述业务,以保证该业务在云计算数据中心中的正常运行,减少业务运行的处理时延。此外,服务器从多个资源池中选择资源池的方式可以是由服务等级协议(service-level agreement,SLA)确定的,该SLA是由提交业务的用户与云计算数据中心的提供商签订的,SLA可用于指示该用户所能使用的资源池的标识,或者可使用的资源阈值等。
在一种可选的实现方式中,上述S330中服务器根据资源调度计划为业务分配资源的过程,可包括以下过程:服务器根据资源调度计划确定业务将被分配的资源信息,以及根据该将被分配的资源信息为业务分配一个或多个处理节点(node);该处理节点用于提供运行业务所需的资源。
示例性的,服务器为业务分配的所有处理节点提供的资源和资源调度计划指示的将为业务分配的资源是一致的。在本实施例中,服务器以处理节点的形式为业务分配资源,一个处理节点可作为一个独立的计算设备来运行业务包含的至少部分计算任务,多个处理节点可实现对业务的分布式处理,提高业务的处理速度,提高业务的处理效率。
为避免云计算数据中心100的资源被少量业务占用,导致云计算数据中心100的资源无法提供给其他业务,作为一种可选的实现方式中,在服务器为前述的业务分配资源后,本实施例还提供一种可行的示例,如图4所示,图4为本申请提供的资源调度方法的流程示意图二,本实施例提供的资源调度方法还包括以下步骤S410和S420。
如图4所示,该ELB组包含的处理节点用于运行前述的业务,如该ELB组包括节点1至节点5。其中,节点1和节点2处于空闲(idle)状态,节点3、节点4和节点5处于运行(running)状态。
S410,若特征值符合设定的条件,服务器将运行业务的节点1和节点2加入第一节点池。
可选的,特征值符合设定的条件可以是指处理节点处于空闲状态。示例性的,服务器将运行业务的一个或多个处理节点加入第一节点池,包括:服务器根据负载画像确定运行业务的多个处理节点,并将多个处理节点中处于空闲(idle)状态的处理节点加入第一节点池。
在本实施例中,服务器可将处于空闲状态的处理节点置于将被释放资源的第一节点池,使得资源池提供的资源被充分利用,减少了被闲置的资源,提高了资源利用率。
ELB组包含的各节点的状态可由服务器识别,也可由用户通过服务器提供的设置界面进行设置的,如图5所示,图5为本申请提供的资源调度界面的示意图,用户可在该资源调度界面进行业务所需的资源的:初始规格配置以及设置节点状态。如图5所示,在初始规格配置栏,用户可设置业务所需的vCPU数量、内存大小、节点的级别(规格族级别)以及节点的数量等。
此外,在设置节点状态栏,用户可在服务器提供的三种类型的节点状态设置方式中选择:智能识别、自定义设置和不指定。例如,若用户选择节点状态的设置方式为自定义设置,设置节点状态栏提供有CPU使用率的使用率阈值设置,服务器在节点的CPU使用率小于设定的使用率阈值时,确定节点处于空闲状态;或者,服务器在节点的CPU使用率大于或等于设定的使用率阈值时,确定节点处于运行状态;或者,服务器在节点的CPU使用率处于一些指定的数值或范围内时,确定节点处于其他状态,如离线(offline)状态。
值得注意的是,服务器提供给用户的初始规格配置栏和设置节点状态栏可以是在业务运行之前,为使得业务开始运行,用户为该业务指定业务所需的初始资源。在另一些示例中,业务所需的初始资源也可以是:服务器确定历史周期中与该业务的类型一致的历史业务,并根据该历史业务的负载画像,为该业务分配初始资源。由图5给出的示例可知,在本实施例中,即使用户为业务指定初始的资源信息,也可仅给出vCPU数量和内存信息,其他信息可由服务器根据vCPU数量和内存信息为业务进行其他资源的适配,避免了用户对业务的运行过程不了解,导致用户为该业务分配较多的其他资源,导致云计算数据中心的资源利用率降低、算力被浪费。
在本实施例中,用户可通过服务器提供的资源调度界面来设置节点的状态,在运行业务的节点处于空闲状态时,服务器将处于空闲状态的节点加入第一节点池,避免处于空闲状态的节点所占用的资源被持续占用,导致资源的利用率受到影响。
S420,在达到设定的时间阈值后,服务器释放第一节点池中处理节点提供的资源。
设定的时间阈值可以是10秒、1分钟或其他等,该时间阈值可以是服务器设置的,也可由用户设定的,不予限定。
在一些情形中,该第一节点池也可称为该服务器所在云计算数据中心的黑名单节点池,服务器可在设定的时间阈值后,将黑名单节点池所包括的处理节点的资源进行释放,避免部分处理节点提供的资源被闲置,导致计算资源浪费。
在一些可选的示例中,如图4所示,服务器将处于空闲状态的节点加入第一节点池后,服务器还可将第一节点池包括的处理节点移出业务的ELB组,以避免业务运行过程中还会占用节点1和节点2的资源。请继续参见图4,本实施例提供的资源调度方法还包括以下步骤S430。
S430,服务器从ELB组的剩余处理节点中选择一个或多个处理节点运行业务。
如图4所示,ELB组的剩余处理节点包括节点3、节点4和节点5,运行业务的处理节点可包含节点3、节点4和节点5中至少一个。
在本实施例中,服务器将ELB组包含的处于空闲状态的处理节点(简称:空闲节点)移除,在后续的业务运行过程中,业务由ELB组包含的剩余处理节点运行,避免了空闲节点的资源被占用,使得服务器可将该空闲节点提供的资源分配给其他业务,在不影响前述业务的运行的情况下,提高了服务器处理多个业务的能力,充分的利用了服务器提供的算力,避免了算力被浪费的问题。
值得注意的是,运行业务的处理节点中包含至少一个保留节点,该保留节点提供的资源在业务的运行过程中不会被释放。示例性的,如图4所示,该保留节点为节点3。
在业务的运行过程中,服务器始终为该业务保留至少一个保留节点,且该保留节点提供的资源在业务的运行过程中不会被释放,以避免业务运行的连续性受到影响,如业务发生中断等。
此外,在一些可行的示例中,服务器还可以对前述的负载画像、运行业务的成本信息和性能信息中至少一种进行展示。
服务器展示前述内容(负载画像、成本信息和性能信息)的方式可以包括,但不限于:将负载画像、成本信息和性能信息中至少一种发送到显示设备,由显示设备显示接收到的负载画像、成本信息和性能信息中一种或多种。
在本实施例中,服务器对负载画像、成本信息和性能信息中至少一种进行显示,使得用户可通过显示设备查看云计算数据中心的运行情况,以及针对于目标客户所需执行的业务,云计算数据中心的提供商可提供给目标客户执行该业务的成本信息和性能信息,使得目标客户可根据自身的业务需求进行资源调整,避免了目标客户仅能指定资源导致的资源浪费以及成本上升等问题。
值得注意的是,服务器为业务制定资源调度计划可以基于性能最优或成本最优等不同的策略,从而满足用户对业务运行的需求,达到更低的成本或者更优的性能的效果。
如图6所示,图6为本申请提供的性能信息的比对示意图,图6所示出的2个展示界面(A和B)可以是由与服务器通信的显示设备提供的,当服务器为个人电脑、计算机或者其他带显示功能的计算设备时,该展示界面也可以是由服务器提供的。
图6中的(A)示出了通常技术中资源调度系统为业务分配的资源量和资源利用率之间的关系,参见图6中的(A)可知,在通常技术中,若服务器采用通常技术的资源调度方案,每次需进行资源调度时,如相邻2天之间会对业务所需的资源进行调整,服务器在资源调度过程中存在较大的时延。
进一步的,服务器采用通常技术提供的资源调度方案,在业务发生一些突变时,如业务为搜索型业务,当搜索型业务中出现一些热点搜索任务时,即针对于同一个搜索词或与该搜索词相似的一类搜索词的量较多时,云计算数据中心为保证业务的正常运行,会为该业务分配更多的资源,但是资源的分配存在较大的时延,导致业务的稳定性较差。而在热点搜索任务结束后,为避免资源的浪费,服务器降低该业务所占用的资源(或称资源缩容),但业务占用的资源的缩容是根据资源利用率确定的,导致资源缩容也存在较大的时延,导致时延时间段内的资源利用率降低、算力被浪费。
比较之下,图6中的(B)示出了本申请中服务器为业务分配的资源量和资源利用率之间的关系,在相邻2天之间服务器为业务分配资源时,资源调度的时延降低,且资源利用率提高。
结合图6和下表1,对服务器分别采用通常技术和本申请的提供的资源调度方法,为业务分配的资源量、资源利用率以及资源调度时延进行说明。
表1
通常技术 | 本申请 | |
初始资源量 | M1 | N1 |
最大资源量 | M2 | N2 |
资源利用率 | R1 | R2 |
时延 | T1-i | T2-i |
其中,i为1至7中任一个正整数,如图6中(A)所示出的T1-1至T1-7。
结合图6所示出的内容,N1<M1,R1<R2。亦即是说,服务器采用通常技术为业务分配初始资源时,由于客户端难以准确的判断业务所需的资源,导致服务器为业务分配的资源远大于业务实际所需的资源,导致资源利用率(R1)较低。比较之下,本申请提供的资源调度方法中,由于服务器基于负载画像为业务分配资源,使得业务被分配的资源是根据业务在运行中实际所占用的资源信息确定的,无需用户为该业务指定资源,提高了资源利用率。
此外,在业务的运行过程中,为了充分的利用资源,会为该业务制定资源的伸缩策略,使得业务所占用的资源适应业务的需求,提高资源利用率。在通常技术中,资源的伸缩策略也是用户所指定的,由于用户认知的局限性和业务运行过程的随机性,伸缩策略通常设置为指定资源(如CPU)的利用率达到设定的阈值且持续一定的时间(如表1所示出的T1-i)后,服务器对该业务所占用的资源进行缩容(降低资源)或者伸容(增加资源),因此,业务的资源伸缩存在时延(如前述的一定的时间),导致业务的连续性受到影响。
举例来说,服务器监测到业务在连续15分钟(minate,min)内出现3次CPU利用率>70%,才会新增加一个处理节点;或者,服务器监测到业务在连续15min内出现3次cpu利用率<30%,才会减少一个处理节点,导致云计算数据中心为该业务提供的算力供给一直比业务实际的诉求延迟15min。当业务运行过程中出现多次变化时,如图6中(A)所示出的6次变化,通常技术提供的资源调度方案在每次变化都存在资源伸缩时延,导致云计算数据中心提供的资源无法实时满足业务运行的需求。
相比之下,本实施例提供的资源调度方法,由于服务器基于负载画像确定业务的特征值,并在业务的类型不同的情况下,选择不同的特征值进行资源调度计划的匹配,因此,在业务的运行过程中,服务器可根据业务运行所占用的资源信息,为该业务制定不同的伸缩策略。示例性的,当业务所占用的资源远大于业务实际所需的资源时,服务器将该业务所占用的资源中处于空闲状态的节点加入前述的黑名单节点池,避免该业务持续占用处于空闲状态的节点所提供的资源。此外,由于云计算数据中心的服务器提供商一般根据资源量以及资源使用时长对用户进行收费,在服务器根据负载画像对业务进行缩容后,也降低了用户所需付费的资源,节约了用户使用云计算数据中心运行业务所产生的成本。
值得注意的是,在本实施例提供的资源调度方法中,若业务运行过程中出现了热点搜索任务,则服务器可根据负载画像确定业务的历史信息(该历史信息指示了业务在历史运行过程中所占用的资源信息),并根据该历史信息为前述的业务分配更多的资源。如图6中的(B)所示,若在D3的时间节点上出现了一个或多个热点搜索任务,服务器根据业务的历史信息为业务分配更多的资源,使得业务的资源量达到N2,避免业务运行的连续性受到影响,降低业务运行的抖动,提高用户使用云计算数据中心执行业务的性能。
在本实施例中,资源伸缩所采用的负载画像的监测周期可以是服务器设定的,也可以是用户根据业务的类型进行设置的,不予限定。图6是以7天为一个周期对本申请提供的资源调度方法中的资源伸缩策略进行说明,但在一些可选的实现方式中,服务器还可以采用其他的周期对负载画像指示的资源信息进行监测,从而在业务运行过程中及时为业务调整资源,降低业务的资源伸缩策略导致的时延,提高业务运行的连续性。
结合图6和表1所示出的内容,在通常技术中,由于用户设定的资源调度计划过于生硬,导致服务器可能会为该业务分配较多的资源量(如M2),而该M2远大于了业务实际所需的资源量,导致资源被浪费。举例来说,在一定的时间内,假设业务占用的资源中CPU利用率在30%即可达到业务SLA的CPU利用率为60%,则其中有30%的算力被业务所浪费,导致业务在云计算数据中心运行的成本提高。
比较之下,在本实施例提供的资源调度方法中,服务器可根据负载画像为业务指定资源调度计划和资源伸缩策略,即服务器基于业务的实时负载和业务的性能边界,为该业务分配最匹配的资源,提高了业务运行中云计算数据中心的资源利用率,也降低了用户运行该业务所产生的成本。举例来说,服务器可以将负载画像输入至机器学习模型,从而在业务的运行达到指定任务(或者指定的处理流程)时,服务器根据机器学习模型输出的预测信息,对该业务所需的资源的峰值进行评估。进一步的,服务器根据该峰值为业务预置一定数量的节点,每个节点提供了一定量的资源。可以理解的是,在服务器为业务配置资源的时候,用户也可以对该峰值进行调整,从而添加或删除服务器为业务分配的节点数量(或资源量)。
此外,服务器还可以对业务的伸缩策略所选择的特征值进行记录,从而在特征值与该业务不匹配时,如该业务的特征值不应为CPU利用率、而应为网络带宽,服务器还可对该业务在运行过程中的伸缩策略进行调整,如服务器将该业务的特征值从CPU利用率更新为网络带宽,并基于负载画像指示的业务在运行过程中所占用的网络带宽为该业务分配资源(如添加或删除业务所占用的节点数量)。
可以理解的是,为了实现上述实施例中功能,服务器包括了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本申请中所公开的实施例描述的各示例的单元及方法步骤,本申请能够以硬件或硬件和计算机软件相结合的形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用场景和设计约束条件。
图7为本申请提供的资源调度装置的结构示意图,该资源调度装置可以用于实现上述方法实施例中服务器的功能,因此也能实现上述方法实施例所具备的有益效果。在本申请的实施例中,该资源调度装置可以是如图1所示的任一个服务器,也可以是如图2所示的资源调度系统200,还可以是应用于服务器或资源调度系统的模块(如芯片)。
如图7所示,资源调度装置700包括:特征单元710、策略单元720、分配单元730、释放单元740、移出单元750、执行单元760和展示单元770。该资源调度装置700用于实现上述任意一个实施例中服务器的功能。
示例性的,特征单元710,用于根据负载画像获得业务的特征值;该负载画像用于指示业务在运行过程中所占用的资源信息。策略单元720,用于根据资源编排策略确定与特征值匹配的资源调度计划;该资源编排策略用于指示特征值与预分配资源的关联关系,资源调度计划用于指示将为业务分配的资源,前述的资源包括以下任意一种或组合:计算资源、网络资源和存储资源。分配单元730,用于根据资源调度计划为业务分配资源。
当资源调度装置700用于实现图3所示的方法实施例时,特征单元710用于执行S310,策略单元720用于执行S320,分配单元730用于执行S330。
当资源调度装置700用于实现图4所示的方法实施例时,释放单元740用于执行S410和S420,执行单元760用于执行S430。
当资源调度装置700用于实现前述实施例时,移出单元750用于将第一节点池包括的处理节点移出业务的ELB组;ELB组包含的处理节点用于运行业务;展示单元770用于展示图6中(B)所示出的界面,以及图5提供的资源调度界面。
资源调度装置700通过软件实现前述附图中任一所示的资源调度方法时,资源调度装置700及其各个单元也可以为软件模块。通过处理器调用该软件模块实现上述的资源调度方法。该处理器可以是CPU,特定应用集成电路(application-specific integratedcircuit,ASIC)实现,或可编程逻辑器件(programmable logic device,PLD),上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。
有关上述资源调度装置700更详细的描述可以参考前述附图所示的实施例中相关描述,这里不加赘述。可以理解的,图7所示出的资源调度装置700仅为本实施例提供的示例,根据资源调度过程或者业务的不同,资源调度装置700可包括更多或更少的单元,本申请对此不予限定。
当资源调度装置700通过硬件实现时,该硬件可以通过处理器或芯片实现。芯片包括接口电路和控制电路。接口电路用于接收来自处理器之外的其它设备的数据并传输至控制电路,或将来自控制电路的数据发送给处理器之外的其它设备。
控制电路通过逻辑电路或执行代码指令用于实现上述实施例中任一种可能实现方式的方法。有益效果可以参见上述实施例中任一方面的描述,此处不再赘述。
可以理解的是,本申请的实施例中的处理器可以是CPU、神经处理器(neuralprocessing unit,NPU)或图形处理器(graphic processing unit,GPU),还可以是其它通用处理器、数字信号处理器(digital signal processor,DSP)、ASIC、FPGA或者其它可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于服务器的存储器中,该服务器中的处理器执行存储器存储的软件指令来实现前述实施例提供的资源调度方法。可以理解的是,存储器可以包括,但不限于:随机存取存储器(randomaccess memory,RAM)、闪存、只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备或终端设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备或终端设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序或指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,数字视频光盘(digital video disc,DVD);还可以是半导体介质,例如,固态硬盘(solid state drive,SSD)。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。在本申请的文字描述中,字符“/”,一般表示前后关联对象是一种“或”的关系;在本申请的公式中,字符“/”,表示前后关联对象是一种“相除”的关系。
可以理解的是,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定。
Claims (21)
1.一种资源调度方法,其特征在于,所述方法由服务器执行,所述方法包括:
根据负载画像获得业务的特征值;所述负载画像用于指示所述业务在运行过程中所占用的资源信息;
根据资源编排策略确定与所述特征值匹配的资源调度计划;所述资源编排策略用于指示特征值与预分配资源的关联关系,所述资源调度计划用于指示将为所述业务分配的资源,所述资源包括以下任意一种或组合:计算资源、网络资源和存储资源;
根据所述资源调度计划为所述业务分配资源。
2.根据权利要求1所述的方法,其特征在于,所述特征值包括以下任意一项或几项的组合:CPU核数、CPU利用率、内存利用率、网络带宽、存储带宽和时延指标。
3.根据权利要求1或2所述的方法,其特征在于,所述服务器为所述业务分配的资源来自于多个资源池中的第一资源池,所述第一资源池包含的资源是由一个或多个服务器提供的;
所述负载画像包括第一画像和第二画像,所述第一画像用于指示所述多个资源池提供的资源信息,所述第二画像用于指示所述第一资源池提供的资源信息。
4.根据权利要求1至3中任一项所述的方法,其特征在于,
所述根据所述资源调度计划为所述业务分配资源,包括:
根据所述资源调度计划确定所述业务将被分配的资源信息;
根据所述将被分配的资源信息为所述业务分配一个或多个处理节点,所述处理节点用于提供运行所述业务所需的资源。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
若所述特征值符合设定的条件,将运行所述业务的一个或多个处理节点加入第一节点池;
在达到设定的时间阈值后,释放所述第一节点池中处理节点提供的资源。
6.根据权利要求5所述的方法,其特征在于,
所述将运行所述业务的一个或多个处理节点加入第一节点池,包括:
根据所述负载画像确定运行所述业务的多个处理节点;
将所述多个处理节点中处于空闲状态的处理节点加入第一节点池。
7.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
将所述第一节点池包括的处理节点移出所述业务的弹性负载均衡ELB组;所述ELB组包含的处理节点用于运行所述业务;
从所述ELB组的剩余处理节点中选择一个或多个处理节点运行所述业务。
8.根据权利要求4至7中任一项所述的方法,其特征在于,运行所述业务的处理节点中包含至少一个保留节点,所述保留节点提供的资源在所述业务的运行过程中不会被释放。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述方法还包括:
展示所述负载画像;
和/或,展示运行所述业务的成本信息和性能信息中至少一种。
10.一种资源调度装置,其特征在于,所述装置应用于服务器,所述装置包括:
特征单元,用于根据负载画像获得业务的特征值;所述负载画像用于指示所述业务在运行过程中所占用的资源信息;
策略单元,用于根据资源编排策略确定与所述特征值匹配的资源调度计划;所述资源编排策略用于指示特征值与预分配资源的关联关系,所述资源调度计划用于指示将为所述业务分配的资源,所述资源包括以下任意一种或组合:计算资源、网络资源和存储资源;
分配单元,用于根据所述资源调度计划为所述业务分配资源。
11.根据权利要求10所述的装置,其特征在于,所述特征值包括以下任意一项或几项的组合:CPU核数、CPU利用率、内存利用率、网络带宽、存储带宽和时延指标。
12.根据权利要求10或11所述的装置,其特征在于,所述服务器为所述业务分配的资源来自于多个资源池中的第一资源池,所述第一资源池包含的资源是由一个或多个服务器提供的;
所述负载画像包括第一画像和第二画像,所述第一画像用于指示所述多个资源池提供的资源信息,所述第二画像用于指示所述第一资源池提供的资源信息。
13.根据权利要求10至12中任一项所述的装置,其特征在于,所述分配单元,具体用于:根据所述资源调度计划确定所述业务将被分配的资源信息;以及,根据所述将被分配的资源信息为所述业务分配一个或多个处理节点,所述处理节点用于提供运行所述业务所需的资源。
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
释放单元,用于若所述特征值符合设定的条件,将运行所述业务的一个或多个处理节点加入第一节点池;
所述释放单元,还用于在达到设定的时间阈值后,释放所述第一节点池中处理节点提供的资源。
15.根据权利要求14所述的装置,其特征在于,所述释放单元,具体用于:根据所述负载画像确定运行所述业务的多个处理节点;以及,将所述多个处理节点中处于空闲状态的处理节点加入第一节点池。
16.根据权利要求14或15所述的装置,其特征在于,所述装置还包括:
移出单元,用于将所述第一节点池包括的处理节点移出所述业务的弹性负载均衡ELB组;所述ELB组包含的处理节点用于运行所述业务;
执行单元,用于从所述ELB组的剩余处理节点中选择一个或多个处理节点运行所述业务。
17.根据权利要求13至16中任一项所述的装置,其特征在于,运行所述业务的处理节点中包含至少一个保留节点,所述保留节点提供的资源在所述业务的运行过程中不会被释放。
18.根据权利要求10至17中任一项所述的装置,其特征在于,所述装置还包括:
展示单元,用于展示所述负载画像,和/或,展示运行所述业务的成本信息和性能信息中至少一种。
19.一种资源调度系统,其特征在于,包括:至少一个服务器;
所述服务器根据负载画像获得业务的特征值;所述负载画像用于指示所述业务在运行过程中所占用的资源信息;
所述服务器根据资源编排策略确定与所述特征值匹配的资源调度计划;所述资源编排策略用于指示特征值与预分配资源的关联关系,所述资源调度计划用于指示将为所述业务分配的资源,所述资源包括以下任意一种或组合:计算资源、网络资源和存储资源;
所述服务器根据所述资源调度计划为所述业务分配资源。
20.一种服务器,其特征在于,包括:
存储器,用于存储计算机指令;
处理器,用于从存储器中调用并运行该计算机指令,以执行权利要求1至9中任一项所述的方法。
21.一种计算机可读存储介质,其特征在于,所述存储介质中存储有计算机程序或指令,当所述计算机程序或指令被服务器执行时,实现如权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210334434.XA CN116932182A (zh) | 2022-03-31 | 2022-03-31 | 资源调度方法、装置、系统、服务器和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210334434.XA CN116932182A (zh) | 2022-03-31 | 2022-03-31 | 资源调度方法、装置、系统、服务器和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116932182A true CN116932182A (zh) | 2023-10-24 |
Family
ID=88381304
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210334434.XA Pending CN116932182A (zh) | 2022-03-31 | 2022-03-31 | 资源调度方法、装置、系统、服务器和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116932182A (zh) |
-
2022
- 2022-03-31 CN CN202210334434.XA patent/CN116932182A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11429449B2 (en) | Method for fast scheduling for balanced resource allocation in distributed and collaborative container platform environment | |
CN104238712B (zh) | 分布式功率输送 | |
US9866450B2 (en) | Methods and apparatus related to management of unit-based virtual resources within a data center environment | |
US9104498B2 (en) | Maximizing server utilization within a datacenter | |
EP3129880B1 (en) | Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system | |
US8954487B2 (en) | Management server and method for providing cloud computing service | |
US10243879B2 (en) | Intelligent placement within a data center | |
US8656404B2 (en) | Statistical packing of resource requirements in data centers | |
EP4383074A1 (en) | Service processing method and apparatus, server, storage medium, and computer program product | |
US20110004500A1 (en) | Allocating a resource based on quality-of-service considerations | |
US10423217B1 (en) | Dynamic power capping of multi-server nodes in a chassis based on real-time resource utilization | |
CN112600761B (zh) | 一种资源分配的方法、装置及存储介质 | |
CN111078404B (zh) | 一种计算资源确定方法、装置、电子设备及介质 | |
US11012316B2 (en) | Methods and apparatus to generate and manage workload domains in virtual server racks | |
Issawi et al. | An efficient adaptive load balancing algorithm for cloud computing under bursty workloads | |
CN113946431A (zh) | 一种资源调度方法、系统、介质及计算设备 | |
Kwon et al. | Dynamic scheduling method for cooperative resource sharing in mobile cloud computing environments | |
CN115840649B (zh) | 划分容量块式虚拟资源分配方法及装置、存储介质和终端 | |
CN110806918A (zh) | 基于深度学习神经网络的虚拟机运行方法和装置 | |
CN115952054A (zh) | 一种仿真任务资源管理方法、装置、设备及介质 | |
CN116932182A (zh) | 资源调度方法、装置、系统、服务器和存储介质 | |
CN114675973A (zh) | 资源管理方法、设备、存储介质及程序产品 | |
CN113495680B (zh) | 数据迁移方法及装置、存储系统、存储介质 | |
CN112860442A (zh) | 资源配额调整方法、装置、计算机设备和存储介质 | |
CN114489463A (zh) | 动态调整存储卷qos的方法、装置及计算设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |