CN114756347A - 基于集群的服务器资源调度方法、装置、云平台及介质 - Google Patents
基于集群的服务器资源调度方法、装置、云平台及介质 Download PDFInfo
- Publication number
- CN114756347A CN114756347A CN202210408260.7A CN202210408260A CN114756347A CN 114756347 A CN114756347 A CN 114756347A CN 202210408260 A CN202210408260 A CN 202210408260A CN 114756347 A CN114756347 A CN 114756347A
- Authority
- CN
- China
- Prior art keywords
- server
- target
- resource
- servers
- primary selection
- 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
Images
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/5038—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 execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Abstract
本申请提供一种基于集群的服务器资源调度方法、装置、云平台及介质。该方法包括:获取用户当前申请的集群的需求资源参数;所述需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;所述初选服务器为满足节点中各种需求资源对应需求规格的服务器;确定各初选服务器的剩余资源情况,并根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,所述目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;将各目标服务器的资源调度给集群中的对应节点。采用本申请的方法,能够使服务器资源得以均衡调度。
Description
技术领域
本申请涉及云计算技术,尤其涉及一种基于集群的服务器调度方法、装置及电子设备。
背景技术
随着资源调度技术的发展,为了对整个数据中心和云环境进行资源管理和调度,出现了服务器资源调度技术。
目前,对服务器资源进行调度可以通过资源调度框架实现,例如,主流的资源调度框架包括开源分布式资源管理框架(即,Mesos)和开源的Linux容器自动化运维平台(即,Kubernetes)。其中,开源分布式资源管理框架在各台服务器上运行,并为安装于服务器上的应用程序(例如Hadoop,Spark,Kafka,Elasticsearch)提供API接口,从而实现服务器资源的调度。
然而,传统方式中,开源分布式资源管理框架在限定容器资源的情况下,只要主机资源满足计算资源需求,即可调度成功,调度方式比较随机。这种方式下,可能会出现以下情况:许多应用程序依赖资源池中某部分服务器为其提供资源,而另一部分服务器存在大量剩余资源却处于空闲状态。可见,这种方式下,没有对资源池中服务器资源进行均衡调度。
发明内容
本申请提供一种基于集群的服务器调度方法、装置及电子设备,用以解决现有技术中,服务器资源未能均衡调度的技术问题。
第一方面,本申请提供一种基于集群的服务器资源调度方法,包括:
获取用户当前申请的集群的需求资源参数;所述需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;
基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;所述初选服务器为满足节点中各种需求资源对应需求规格的服务器;
确定各初选服务器的剩余资源情况,并根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,所述目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;
将各目标服务器的资源调度给集群中的对应节点。
第二方面,本申请提供一种云平台,包括:存储器,处理器;所述存储器用于存储所述处理器可执行指令的存储器;所述处理器用于运行计算机程序或指令,以实现第一方面所述的基于集群的服务器资源调度方法。
第三方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现第一方面所述的基于集群的服务器资源调度方法。
本申请提供的基于集群的服务器资源调度方法、装置、云平台及介质,通过获取用户当前申请的集群的需求资源参数;需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;基于节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;初选服务器为满足节点中各种需求资源对应需求规格的服务器;确定各初选服务器的剩余资源情况,并根据剩余资源情况从初选服务器中筛选出多个目标服务器,目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;将各目标服务器的资源调度给集群中的对应节点。从目标资源池中筛选出的各初选服务器,由于是能够满足节点中各种需求资源对应需求规格的服务器,因此能够满足集群中各节点的资源需求,初选服务器中任一个均可以用于为节点调度资源。再根据各初选服务器的剩余资源情况,从初选服务器中筛选出多个目标服务器,且目标服务器的个数是基于节点的数量筛选出的,能够使得各目标服务器给各节点调度资源后满足调度均衡要求。因此,本申请在一定程度上优化了服务器的资源调度,使各服务器资源能均衡调度。由于是从初选服务器中筛选多个目标服务器调度资源,而不是仅利用剩余资源情况最好的一个目标服务器为各节点调度资源,因此还可以有效避免集群中服务器部署过多节点,在故障时可能造成集群不可用的情况。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为可以实现本申请实施例的基于集群的服务器资源调度方法的一种整体架构图;
图2为本申请一实施例的基于集群的服务器资源调度方法的流程示意图;
图3为本申请另一实施例的基于集群的服务器资源调度方法的流程示意图;
图4为本申请再一实施例的基于集群的服务器资源调度方法的流程示意图;
图5为本申请一实施例的基于集群的服务器资源调度装置的结构示意图;
图6是用来实现本申请实施例的基于集群的服务器资源调度方法中的云平台的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
首先对本申请所涉及的名词进行解释:
目标资源池:位于云平台中,具有多个资源池,目标资源池为集群节点调度服务器资源对应的资源池。在目标资源池中具有多个服务器。
节点:是指集群中的节点,是由资源池中的服务器的资源调度得到的。
集群:由多个节点组成,可以包括管理节点和中间节点。每个节点的资源由对应目标服务器的资源进行调度获取到的。
为了清楚理解本申请的技术方案,首先对现有技术的方案进行详细介绍。
传统方式中,开源分布式资源管理框架在限定容器资源的情况下,只要服务器资源满足节点的计算资源需求,即可调度成功,调度方式比较随机。这种方式下,可能会出现一个应用程序对应集群的多个节点可能较多地集中由某个服务器调度资源。在为多个应用程序调度服务器资源时,可能会出现许多应用程序依赖资源池中某部分服务器为其提供资源,而另一部分服务器拥有大量剩余资源却处于空闲状态。可见,这种方式下,没有对资源池中的服务器资源进行均衡调度。
所以在面对现有技术的技术问题时,发明人通过创造性的研究后发现,为了实现对资源池中的服务器资源均衡调度,设置云平台,云平台基于获取的用户当前申请的集群中节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器,以满足节点中各种需求资源及对应的需求规格。再确定各初选服务器的剩余资源情况,并根据剩余资源情况从初选服务器中筛选出多个目标服务器,将各目标服务器的资源调度给集群中的对应节点。由于目标服务器是基于各初选服务器的剩余资源情况以及节点的数量筛选得到,并且满足将资源调度给对应节点后调度均衡要求。因此,本申请能够实现对资源池中的服务器资源进行均衡调度,使服务器的资源调度得到较大程度上的优化。
如图1所示,本申请实施例提供的基于集群的服务器资源调度方法的应用场景,在该应用场景中对应的网络架构中包括云平台10、用户终端20。在云平台10中包括为目标应用程序构建的集群30。在集群30中包括多个节点31。示例性的,如图1所示,如节点可以包括节点1到节点p,在图1中只显示了节点1和节点p。云平台10上设置有至少一个资源池,在至少一个资源池中包括目标资源池12,目标资源池12中具有多个服务器,服务器可以用于提供资源。示例性的,如图1所示,在目标资源池中包括n个服务器。其中,只示例出了服务器1和服务器n。此处用户是指构建集群30的构建用户,用户终端20与云平台10进行通信连接。用户可通过用户终端20可以向云平台10发送申请构建集群30的指令,云平台10响应于该指令并基于该指令获取用户当前申请的集群30的需求资源参数,之后基于节点的需求资源种类和对应的需求规格筛选多个初选服务器,再基于各初选服务器的剩余资源情况筛选出多个目标服务器,最后将目标服务器的资源调度给集群30中的对应节点。此时,用户终端20所需的集群30构建完成,可以得到构建好的集群30。示例性的,如图1所示,从初选服务器中筛选出的目标服务器为目标服务器1到目标服务器m。其中,只显示了目标服务器1和目标服务器m。从多个服务器中筛选出的初选服务器为初选服务器1到初选服务器m+1。其中,初选服务器2到初选服务器m+1分别作为了目标服务器1到目标服务器m,所以在图1中并未显示。在对目标服务器的资源调度集群中对应的节点时,示例性的,如在图1中,只显示了将目标服务器1的资源调度给集群30中的节点1,将目标服务器m的资源调度给集群20中的节点p。其中,n,m和p均为不为0的自然数。n>m。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
以下各实施例中,初选服务器、第一初选服务器、第二初选服务器、第三初选服务器、再筛选服务器、目标服务器、第一目标服务器、第二目标服务器等,均是目标资源池中的服务器,为了便于区别因此设置不同命名。
图2是本申请一实施例提供的基于集群的服务器资源调度方法,如图2所示,本实施例提供的基于集群的服务器资源调度方法的执行主体是云平台。则本实施例提供的基于集群的服务器资源调度方法包括以下步骤:
步骤101,获取用户当前申请的集群的需求资源参数;需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格。
其中,需求资源参数是指构建集群所需要的资源参数,需求资源参数包括集群节点数量、节点的需求资源种类以及需求资源种类对应的需求规格。需求资源种类是指节点需要的资源的种类,需求资源种类包括cpu、硬盘和内存等。需求规格是指节点需要的需求资源种类的大小规格。需求规格例如可以是50核cpu。
在一个实施例中,获取用户当前申请的集群的需求资源参数的方式,可以是用户以触控/键盘/语音等输入方式,通过用户终端识别并向云平台发送申请构建集群的指令,该指令包括用户当前申请的集群的需求资源参数。
步骤102,基于节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;初选服务器为满足节点中各种需求资源对应需求规格的服务器。
其中,目标资源池是指云平台上的为集群节点调度服务器资源对应的资源池,其中具有许多服务器。各服务器上均有相应的资源,但各服务器上各种资源的规格可能不尽相同。其中,有些服务器上某种需求资源可能达不到集群中节点所需要的需求规格。在构建集群时,这些服务器无法用于调度资源。因此,需要先将这些不满足集群中节点所需的需求规格的服务器排除,筛选得到能够满足节点中各种资源的需求规格的服务器。初选服务器即被筛选出的满足节点中的各种需求资源种类对应需求规格的服务器。
步骤103,确定各初选服务器的剩余资源情况,并根据剩余资源情况从初选服务器中筛选出多个目标服务器,目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求。
其中,剩余资源情况是指服务器上剩余资源种类及对应规格的情况。目标服务器是指用于调度资源给节点的服务器。
本申请中,根据各初选服务器的剩余资源情况,从初选服务器中筛选出多个目标服务器,进一步优中择优,为各节点能够从各初选服务器中确定得到更合适的初选服务器,更合适的各初选服务器即各目标服务器。目标服务器的数量是根据节点的数量筛选出的,以确保各节点均有目标服务器可以为其调度资源。并且,由于不再是仅以剩余资源情况最佳作为目标服务器的选择标准,而是将其余符合条件的初选服务器也纳入考量,作为目标服务器之一。因此,其他作为目标服务器的初选服务器,可以为剩余资源情况最佳的目标服务器分担相应的资源调度工作。在各目标服务器为各节点调度资源之后,能使各目标服务器均衡地为集群中各节点调度资源,满足调度均衡要求。由于是从初选服务器中筛选多个目标服务器调度资源,而不是仅利用剩余资源情况最好的一个目标服务器为各节点调度资源,因此基于此改进的方案,不会出现某一台或多台服务器负载节点过多,容易导致集群故障不可用的情况。
步骤104,将各目标服务器的资源调度给集群中的对应节点。
其中,每台服务器上均有大量的资源和端口,资源种类包括cpu、硬盘和内存等,将各目标服务器的资源调度给集群中的对应节点,是指将各目标服务器上的各种资源和端口调度给集群中的对应节点。
本实施例提供的基于集群的服务器资源调度方法,通过获取用户当前申请的集群的需求资源参数;需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;基于节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;初选服务器为满足节点中各种需求资源对应需求规格的服务器;确定各初选服务器的剩余资源情况,并根据剩余资源情况从初选服务器中筛选出多个目标服务器,目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;将各目标服务器的资源调度给集群中的对应节点。从目标资源池中筛选出的各初选服务器,由于是能够满足节点中各种需求资源对应需求规格的服务器,因此能够满足集群中各节点的资源需求,初选服务器中任一个均可以用于为节点调度资源。再根据各初选服务器的剩余资源情况,从初选服务器中筛选出多个目标服务器,且目标服务器的个数是基于节点的数量筛选出的,能够使得各目标服务器给各节点调度资源后满足调度均衡要求。因此,本申请在一定程度上优化了服务器的资源调度,由于是从初选服务器中筛选多个目标服务器调度资源,而不是仅利用剩余资源情况最好的一个目标服务器为各节点调度资源,因此还可以有效避免集群中服务器部署过多节点,在故障时可能造成集群不可用的情况。
作为一种可选实施方式,本实施例中,节点包括管理节点和中间节点,步骤102包括以下几个步骤:
步骤201,基于管理节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第一初选服务器;第一初选服务器为满足管理节点中各种需求资源对应需求规格的服务器。
其中,集群中节点包括管理节点和中间节点,管理节点统筹管理各中间节点。以kafka集群为例,集群中节点包括zookeeper节点和broker节点,一个集群中zookeeper节点负责主节点的选举,并管理broker节点,例如指示broker节点存储元数据等。因此需要分别基于管理节点和中间节点的需求资源种类和需求规格,筛选得到符合各自需求的初选服务器。具体的,一个集群中,由于管理节点仅需统筹管理各中间节点,中间节点需要负责对外提供服务。因此管理节点所需的需求资源种类对应的需求规格,一般要小于中间节点所需的需求资源种类对应的需求规格。对于管理节点,根据其需求资源种类和需求规格,从目标资源池的各服务器中进行筛选,可以筛选得到第一初选服务器。第一初选服务器是基于管理节点的需求资源种类及需求规格,进行初步筛选所得到的初选服务器。因此,第一初选服务器能够满足管理节点中各种需求资源对应的需求规格。
步骤202,基于中间节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第二初选服务器;第二初选服务器为满足中间节点中各种需求资源对应需求规格的服务器。
其中,对于中间节点,根据其需求资源种类,从目标资源池的各服务器中进行筛选,可以筛选得到第二初选服务器。第二初选服务器是基于中间节点的需求资源种类及需求规格,进行初步筛选所得到的初选服务器。因此,第二初选服务器能够满足中间节点中各种需求资源对应的需求规格。
本实施例提供的基于集群的服务器资源调度方法,通过基于管理节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第一初选服务器;第一初选服务器为满足管理节点中各种需求资源对应需求规格的服务器;基于中间节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第二初选服务器;第二初选服务器为满足中间节点中各种需求资源对应需求规格的服务器。由于管理节点和中间节点各自的需求资源种类及需求规格不相同,且资源池中各服务器的剩余资源会随着资源调度而发生变化。因此根据在调度资源给管理节点之后,再基于中间节点的需求资源种类及需求规格筛选,能够在后续调度资源给中间节点时,保证第二初选服务器筛选的准确性。同时,由于管理节点和中间节点调度资源的先后顺序,还可以是先调度资源给中间节点,再调度资源给管理节点,因此,也能够在后续调度资源给管理节点时,保证第一初选服务器筛选的准确性。
作为一种可选实施方式,本实施例中,步骤103中的确定各初选服务器的剩余资源情况,包括以下几个步骤:
步骤301,获取各初选服务器中与需求资源种类匹配的至少一种目标资源的第一剩余规格。
其中,目标资源是指初选服务器中与需求资源种类匹配的资源。初选服务器中包括多种资源,通常,初选服务器中的资源种类不少于节点所需的资源种类,以保证能够满足节点的资源种类需求。将初选服务器中各资源种类与节点所需的需求资源种类进行匹配,并将初选服务器中与需求资源种类匹配的任一种资源确定为目标资源。若初选服务器中与需求资源种类匹配的资源种类包括多种,则将与需求资源匹配的多种资源确定为多种目标资源。第一剩余规格是指至少一种目标资源的剩余大小规格。各初选服务器均有对应的第一剩余规格。
步骤302,根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况。
其中,各初选服务器的至少一种目标资源的第一剩余规格,分别表示各初选服务器与需求资源种类匹配的至少一种目标资源的剩余大小规格。因此,根据各初选服务器的至少一种目标资源的第一剩余规格,可以确定各初选服务器的剩余资源情况。
本实施例提供的基于集群的服务器资源调度方法,通过获取各初选服务器中与需求资源种类匹配的至少一种目标资源的第一剩余规格;根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况。由于各初选服务器的剩余资源情况,是根据各初选服务器中与节点的需求资源种类匹配的至少一种目标资源的第一剩余规格得到的。即,以节点的需求资源种类为准,确定各初选服务器的剩余资源情况。因此,基于此得到的初选服务器的剩余资源情况,能够合理地作为后续筛选的依据。
作为一种可选实施方式,本实施例中,步骤302,包括以下几个步骤:
步骤401,获取至少一种目标资源分别对应的初始规格阈值,初始规格阈值是为至少一种目标资源分别设置的达到调度资源满分时所对应的规格阈值。
其中,云平台构建资源池之初,即为资源池中服务器上的各种资源设置了对应的调度资源满分所对应的规格阈值。规格阈值是指每种资源达到调度资源满分时,对应的大小规格。初始规格阈值是为至少一种目标资源分别设置的达到调度资源满分时所对应的规格阈值。示例性地,对于目标资源cpu的初始规格阈值可以设置调度资源满分为60核。调度资源满分对应的初始规格阈值是在云平台构建好后,根据云平台最初具有该种资源且对应的规格靠前的各服务器,取预设个数的中位数得到。在无法取得中位数的情况下,就取平均。例如cpu对应的初始规格阈值,是根据云平台最初具有cpu量靠前的各服务器,取预设个数的中位数得到。
步骤402,根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值。
具体地,在一个实施例中,步骤402,包括:获取至少一种目标资源的第一剩余规格与对应的初始阈值规格的占比;根据至少一个占比分别确定各初选服务器中至少一种目标资源的调度分值。其中,占比是指每种目标资源的第一剩余规格相对于其对应的初始阈值规格的剩余比例。
示例性地,若cpu的初始规格阈值为60核,对应的调度资源满分为100分,初选服务器中cpu的第一剩余规格是30核,占比即30核相对于60核的剩余比例,即50%,则初选服务器中cpu的调度分值为50%*100=50分。
步骤403,将各初选服务器中至少一种资源的调度分值与对应的预设权重进行加权求和运算,分别获得各初选服务器的剩余资源状况。
其中,针对资源池中各种资源,分别设置有对应的预设权重。对于各初选服务器,在获得其对应的剩余资源状况时,是将该初选服务器中至少一种目标资源的调度分值与对应的预设权重进行加权求和运算,从而分别得到各初选服务器的剩余资源状况。示例性地,初选服务器包括cpu和内存两种目标资源,cpu的预设权重为60%,其调度得分为50分,内存的预设权重为40%,其调度得分为70分。则初选服务器的剩余资源状况为:50*60%+70*40%=58分。
本实施例提供的基于集群的服务器资源调度方法,通过获取至少一种目标资源分别对应的初始规格阈值,初始规格阈值是为至少一种目标资源分别设置的达到调度资源满分时所对应的规格阈值;根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值;将各初选服务器中至少一种目标资源的调度分值与对应的预设权重进行加权求和运算,分别获得各初选服务器的剩余资源状况。通过获取各初选服务器中至少一种目标资源的调度分值,与对应的预设权重进行加权求和运算,从而使得到的各初选服务器的剩余资源状况综合考虑了各种目标资源,因此,可以使得到的初选服务器的剩余资源情况更合理准确。
作为一种可选实施方式,本实施例中,基于集群的服务器资源调度方法,还包括以下步骤:
步骤501,根据集群的特征参数断是否更新目标资源池中至少一种目标资源对应的预设权重。
其中,集群的特征参数是指基于集群的特性所确定的参数。为了更合理地为各种集群调度服务器资源,可以在为集群调度服务器资源之前,先根据集群的特征参数确定是否需要更新目标资源池中各种资源对应的预设权重。可选地,当获取用户当前申请的集群的需求资源参数时,同时获取的还包括集群的种类,根据集群的种类和预存储的各种集群的特征参数,确定当前集群的种类所对应的特征参数。例如,对于kafka集群,由于其持久化数据比较多,对磁盘的消耗较大。因此,针对kafka集群,在为其调度服务器资源时,可以提高磁盘的预设权重,而相对降低其他种类资源对应的预设权重。
步骤502,若确定更新目标资源池中至少一种目标资源对应的预设权重,则更新目标资源池中至少一种目标资源对应的预设权重。
其中,更新至少一种目标资源对应的预设权重之后,步骤403中,将各初选服务器中至少一种目标资源的调度分值与对应的更新后的预设权重进行加权求和运算,分别获得各初选服务器的剩余资源状况。
本实施例中提供的基于集群的服务器资源调度方法,通过根据集群的特征参数断是否更新目标资源池中至少一种目标资源对应的预设权重;若确定更新目标资源池中至少一种目标资源对应的预设权重,则更新目标资源池中至少一种目标资源对应的预设权重。由于至少一种目标资源对应的预设权重是可以根据集群的特征参数进行相应调整的,因此,使服务器调度资源给集群时更灵活合理。
作为一种可选实施方式,本实施例中,基于集群的服务器资源调度方法,还包括以下步骤:
步骤601,分别获取至少一种目标资源在所有资源池中的平均剩余规格。
其中,云平台包括多个资源池,资源池分布在各地区,也可理解为多个数据中心。平均剩余规格是指在一种资源在所有资源池中的剩余规格的平均值。每种目标资源均有对应的平均剩余规格。
步骤602,根据各平均剩余规格,判断是否存在至少一种目标资源达到预设紧缺程度。
其中,紧缺程度包括非常紧缺,略微紧缺等情况,设置非常紧缺为预设紧缺程度。某种资源达到预设紧缺程度时,表明该种资源在所有资源池中的平均剩余规格非常紧缺。
步骤603,若存在至少一种目标资源达到预设紧缺程度,则更新至少一种目标资源对应的预设权重。
其中,若存在至少一种目标资源的平均剩余规格达到预设紧缺程度,则提高至少一种目标资源对应的预设权重。预设紧缺程度时,提高对应的预设权重,可以提高初选服务器中该种目标资源的调度分值。若该种目标资源在至少一种目标资源中的调度分值较高,则提高该种目标资源的预设权重之后,初选服务器的剩余资源状况也会随之提高。若该种目标资源在至少一种目标资源中的调度分值较低,则提高该种目标资源的预设权重之后,初选服务器的剩余资源状况反而会降低。即,对于某种资源紧缺情况,通过提高该种资源的预设权重,可以增大具有该种目标资源的各初选服务器之间的差距,使得具有更高比例该种目标资源的初选服务器的剩余资源状况相对更好,从而被优先选择。
本实施例中提供的基于集群的服务器资源调度方法,通过分别获取至少一种目标资源在所有资源池中的平均剩余规格;根据各平均剩余规格,判断是否存在至少一种目标资源达到预设紧缺程度;若存在至少一种目标资源达到预设紧缺程度,则更新至少一种目标资源对应的预设权重。当某种目标资源紧缺时,通过提高其对应的预设权重,可以使具有更高比例该种目标资源的初选服务器被优先选择。
作为一种可选实施方式,如图3所示,本实施例中,步骤103的根据剩余资源情况从初选服务器中筛选出多个目标服务器,包括以下步骤:
步骤701,根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器;第一目标服务器的数量与管理节点的数量相同。
其中,第一目标服务器是根据各第一初选服务器的剩余资源情况,从第一初选服务器中筛选得到的目标服务器。第一目标服务器用于调度资源给管理节点,在调度资源时,使第一目标服务器的数量和管理节点的数量相同,从而可以使各第一目标服务器能均衡地为管理节点提供资源。
步骤702,确定第一目标服务器中调度给对应管理节点的资源,并根据调度给对应管理节点的资源更新第一目标服务器的剩余资源情况。
其中,在将各第一目标服务器调度资源调度给各管理节点之后,云平台确定各第一目标服务器调度给对应管理节点的资源,并基于此更新资源池中第一目标服务器的剩余资源情况。将各第一目标服务器在未调度给对应管理节点之前的剩余资源情况,分别减去调度给对应管理节点的资源,即更新各第一目标服务器的剩余资源情况。
步骤703,将更新剩余资源情况后的第一目标服务器及未筛选出的第一初选服务器确定为第三初选服务器。
其中,未筛选出的第一初选服务器,是第一初选服务器中未被筛选为第一目标服务器的各第一初选服务器。第三初选服务器包括更新剩余资源情况后的第一目标服务器和未筛选出的第一初选服务器。
步骤704,根据第三初选服务器及第二初选服务器的剩余资源情况从第三初选服务器及第二初选服务器中筛选出第二目标服务器。
其中,第二目标服务器用于给中间节点调度资源。在通过第一目标服务器调度资源给对应的管理节点之后,为了使各第一目标服务器和第二目标服务器均衡调度资源。在为各中间节点确定第二目标服务器时,需要综合第三初选服务器和第二初选服务器的剩余资源情况考虑。因此,在确定第二目标服务器时,是根据第三初选服务器和第二初选服务器的剩余资源情况,从第三初选服务器和第二初选服务器中筛选得到。
本实施例中提供的基于集群的服务器资源调度方法,通过根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器;第一目标服务器的数量与管理节点的数量相同;确定第一目标服务器中调度给对应管理节点的资源,并根据调度给对应管理节点的资源更新第一目标服务器的剩余资源情况;将更新剩余资源情况后的第一目标服务器及未筛选出的第一初选服务器确定为第三初选服务器;根据第三初选服务器及第二初选服务器的剩余资源情况从第三初选服务器及第二初选服务器中筛选出第二目标服务器。由于筛选得到第一目标服务器是基于第一初选服务器的剩余资源情况得到的。因此,可使确定的第一目标服务器更符合管理节点的要求,或者增加了管理节点的选择。第一目标服务器的数量与管理节点的数量相同,从而使各第一目标服务器能均衡地调度资源。对于第二目标服务器,综合考虑了第三初选服务器和第二初选服务器的剩余资源情况,从而有利于避免第二目标服务器和第一目标服务器在资源调度上出现冲突,可以提高服务器中资源调度的均衡性。
作为一种可选实施方式,本实施例中,步骤701,包括以下步骤:
步骤801,将第一初选服务器按照剩余资源情况由大到小的顺序进行排序。
其中,第一初选服务器的剩余资源情况越好,排序越前。按此规律,剩余资源情况最好的第一初选服务器排在第一位。
步骤802,选取排序在前N个的第一初选服务器作为第一目标服务器,N为第一目标服务器的数量。
其中,N是不为0的自然数,此处,N为第一目标服务器的数量。由于排序越前,对应第一初选服务器的剩余资源情况越好。因此,将排序在前N个的第一初选服务器确定为第一目标服务器。如前述,管理节点所需的资源需求规格相对较小,但仍可将排序在第一位的第一初选服务器作为第一目标服务器,以保证管理节点具有充足的剩余资源。在后续增加中间节点时,不容易出现管理各中间节点时出现资源不够的情况。
本实施例中提供的基于集群的服务器资源调度方法,通过将第一初选服务器按照剩余资源情况由大到小的顺序进行排序;选取排序在前N个的第一初选服务器作为第一目标服务器,N为第一目标服务器的数量。由于将排序在前N个的第一初选服务器选座第一目标服务器,因而能够使得调度给各管理节点的资源充足。
作为一种可选实施方式,如图4所示,本实施例中,步骤704,包括以下步骤:
步骤901,判断第三初选服务器及第二初选服务器中是否包括相同的服务器。
其中,管理节点和中间节点均是通过资源池中的各服务器调度资源得到,因此,第三初选服务器和第二初选服务器可能存在相同的服务器。第三初选服务器包括更新剩余资源情况后的第一目标服务器和未筛选出的第一初选服务器。第二初选服务器包括各第二初选服务器。第二初选服务器和第三初选服务器可能包括相同的服务器的情况是:存在至少一个服务器,同时满足管理节点的需求规格和中间节点的需求规格,既属于第二初选服务器,也属于第三初选服务器。示例性地,某服务器,同时满足管理节点的需求规格和中间节点的需求规格。因此,在为管理节点调度资源并进行更新之后,属于第三初选服务器。该服务器后续又可作为中间节点的候选调度服务器,属于第二初选服务器。
步骤902,若确定包括相同的服务器,则将第二初选服务器中的相同的服务器进行删除,以获得再筛选服务器,再筛选服务器包括去重处理后的第三初选服务器及第二初选服务器。
其中,若第二初选服务器和第三初选服务器中存在相同的服务器,则需要将至少一个相同的服务器进行去重处理。去重处理即删除第二初选服务器中与第三初选服务器相同的服务器,以得到再筛选服务器。可知,再筛选服务器包括去重处理后的第三初选服务器及第二初选服务器。去重处理的目的是,使同一个服务器在再筛选服务器中不会出现多个的情况,而是将最准确的一种保留下来。
步骤903,根据再筛选服务器的剩余资源情况从再筛选服务器中筛选出第二目标服务器。
如前述,第二目标服务器是用于为中间节点调度资源的服务器。根据再筛选服务器的剩余资源情况,从再筛选服务器中筛选出第二目标服务器为各中间节点调度资源。
本实施例中提供的基于集群的服务器资源调度方法,通过判断第三初选服务器及第二初选服务器中是否包括相同的服务器;若确定包括相同的服务器,则将第二初选服务器中的相同的服务器进行删除,以获得再筛选服务器,再筛选服务器包括去重处理后的第三初选服务器及第二初选服务器;根据再筛选服务器的剩余资源情况从再筛选服务器中筛选出第二目标服务器。通过对第三初选服务器和第二初选服务器进行去重处理,删除其中相同的服务器,得到再筛选服务器,再根据再筛选服务器的剩余资源情况筛选出第二目标服务器,从而有利于均衡各服务器调度资源。
作为一种可选实施方式,本实施例中,步骤903,包括以下步骤:
步骤1001,确定再筛选服务器的数量。
步骤1002,若确定再筛选服务器的数量大于或等于中间节点的数量,则将再筛选服务器按照剩余资源状况由大到小的顺序进行排列。
其中,若再筛选服务器的数量大于或者等于中间节点的数量,表明再筛选服务器可以逐一地为各中间节点调度资源,而不需要一个再筛选服务器同时为两个或两个以上的中间节点调度资源。此时,在为各中间节点调度服务器资源时,只进行一轮调度即可。先将再筛选服务器按照剩余资源状况由大到小的顺序进行排列,从而得到各再筛选服务器的整体的剩余资源状况。
步骤1003,将排在前M个的再筛选服务器确定为第二目标服务器,M为第二目标服务器的数量。
其中,M是不为0的自然数,此处,M为第二目标服务器的数量。将排在前M个的再筛选服务器确定为第二目标服务器。由于排序越前,对应再筛选服务器的剩余资源情况越好,资源更充足。因此,将排序在前M个的再筛选服务器确定为第二目标服务器。由于中间节点负责对外提供服务,需要更多的资源。因此,将资源更充足的再筛选服务器确定为第二目标服务器,为各中间节点调度资源,能满足中间节点的需求。并且,由于第二目标服务器是资源相对更充足的再筛选服务器,因此使得资源更充足的再筛选服务器优先被调度资源,在一定程度上,也是对服务器资源调度的优化。
本实施例中提供的基于集群的服务器资源调度方法,通过确定再筛选服务器的数量;若确定再筛选服务器的数量大于或等于中间节点的数量,则将再筛选服务器按照剩余资源状况由大到小的顺序进行排列;将排在前M个的再筛选服务器确定为第二目标服务器,M为第二目标服务器的数量。由于第二目标服务器是根据再筛选服务器的剩余资源情况,将排序在前M个的再筛选服务器,确定为第二目标服务器。因此,使调度给各中间节点的资源更充足,同时也优化了各服务器的资源调度。
作为一种可选实施方式,基于集群的服务器资源调度方法,还包括以下步骤:
步骤1101,若确定再筛选服务器的数量小于中间节点的数量,则将每个再筛选服务器确定为对应的一个中间节点的第二目标服务器。
其中,若再筛选服务器的数量小于中间节点的数量,表明再筛选服务器无法逐一地为各中间节点调度资源,可能会出现一个再筛选服务器同时为两个或两个以上的中间节点调度资源的情况。为避免此种情况,需要对服务器资源进行多轮调度。此时,将每个再筛选服务器确定为对应的一个中间节点的第二目标服务器,可看作第一轮资源调度。第一轮资源调度之后,还有部分中间节点没有得到资源调度。
步骤1102,确定第二目标服务器中调度给对应中间节点的资源,并根据调度给对应中间节点的资源更新第二目标服务器的剩余资源情况。
其中,在第一轮资源调度之后,确定第二目标服务器中调度给对应中间节点的资源,并更新资源池中各第二目标服务器的剩余资源情况。
步骤1103,从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器。
其中,更新第二目标服务器的剩余资源情况之后,基于剩余中间节点的需求规格,从资源池中筛选出满足剩余中间节点的需求规格的第二目标服务器。此时,由于第二目标服务器在第一轮调度之后更新了剩余资源情况,其在第二轮调度中可能达不到剩余中间节点的需求规格,不会被再次选为第二目标服务器。若第二目标服务器在更新剩余资源情况后,其在第二轮调度中仍能达到剩余中间节点的需求规格,也能被再次选为第二目标服务器。
示例性地,再筛选服务器的数量是5个,中间节点是8个,再筛选服务器的数量小于中间节点的数量。先确定5个再筛选服务器为第二目标服务器,分别一一对应地为其中5个中间节点调度资源。之后,更新5个第二目标服务器的剩余资源情况,若这5个第二目标服务器仍全部满足3个剩余中间节点的需求规格,则从这5个第二目标服务器中筛选出与3个剩余中间节点对应的第二目标服务器。若这5个第二目标服务器只有2个能满足剩余中间节点的需求规格,则只有能满足剩余中间节点的需求规格的这2个第二目标服务器,再次作为第二目标服务器为3个剩余中间节点进行资源调度。
本实施例中提供的基于集群的服务器资源调度方法,通过若确定再筛选服务器的数量小于中间节点的数量,则将每个再筛选服务器确定为对应的一个中间节点的第二目标服务器;确定第二目标服务器中调度给对应中间节点的资源,并根据调度给对应中间节点的资源更新第二目标服务器的剩余资源情况;从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器。在再筛选服务器的数量小于中间节点的数量时,进行多轮调度,从而有利于均衡各服务器进行资源调度。
作为一种可选实施方式,本实施例中,步骤1103,包括以下步骤:
步骤1201,若确定第二目标服务器的数量大于或等于剩余中间节点的数量,则将第二目标服务器按照更新后的剩余资源状况由大到小的顺序进行排列。
具体地,在第二轮调度中,在确定好各剩余中间节点对应的第二目标服务器之后,再比较第二目标服务器的数量和剩余中间节点的数量。若确定第二目标服务器的数量大于或者等于剩余中间节点的数量,则按照第一轮调度的方式,先将第二目标服务器按照更新后的剩余资源状况由大到小的顺序进行排列。
步骤1202,将排在前L个的第二目标服务器确定为剩余中间节点对应的第二目标服务器,L为剩余中间节点对应的第二目标服务器的数量。
其中,L是不为0的自然数,此处,L为剩余中间节点对应的第二目标服务器的数量。
具体地,第二轮调度中,第二目标服务器的数量大于或者等于剩余中间节点的数量时,与第一轮调度中再筛选服务器的数量大于或者等于中间节点的数量时的调度方式相同。在对第二目标服务器排列之后,将排在前L个的第二目标服务器确定为剩余中间节点对应的第二目标服务器。
本实施例中提供的基于集群的服务器资源调度方法,通过若确定第二目标服务器的数量大于或等于剩余中间节点的数量,则将第二目标服务器按照更新后的剩余资源状况由大到小的顺序进行排列;将排在前L个的第二目标服务器确定为剩余中间节点对应的第二目标服务器,L为剩余中间节点对应的第二目标服务器的数量。在进行第二轮调度时,若确定第二目标服务器的数量不小于剩余中间节点的数量,则按照第一轮调度的方式调度服务器资源,由于一次性为各剩余中间节点调度服务器资源,从而有利于提高服务器资源调度的效率。
作为一种可选实施方式,本实施例中,基于集群的服务器资源调度方法,还包括以下步骤:
步骤1301,若确定第二目标服务器的数量小于剩余中间节点的数量,则确定第二目标服务器中调度给对应剩余中间节点的资源,并根据调度给对应剩余中间节点的资源再次更新第二目标服务器的剩余资源情况。
具体地,第二轮调度中,第二目标服务器的数量小于剩余中间节点的数量时,与第一轮调度中再筛选服务器的数量小于中间节点的数量时的调度方式相同。第二轮调度中,先确定第二目标服务器调度给对应的剩余中间节点的资源,再更新第二目标服务器的剩余资源情况。
步骤1302,从再次更新剩余资源情况后的第二目标服务器中筛选出未实现资源调度的中间节点对应的第二目标服务器。
其中,未实现资源调度的中间节点,是指第二轮调度中,剩余中间节点中暂未实现资源调度的中间节点。为了使在第二轮调度中未实现资源调度的中间节点也能实现资源调度,确定进行第三轮调度。第三轮调度中,再次更新第二目标服务器的剩余资源情况,更新之后,基于未实现资源调度的中间节点的需求规格,从资源池中筛选出满足这些未实现资源调度的中间节点的需求规格的第二目标服务器。之后的过程与第一轮调度中再筛选服务器的数量小于中间节点的数量时的后续过程基本一致。若第三轮调度仍有中间节点未实现资源调度,则再进行一轮或者多轮调度,直至所有中间节点均实现资源调度。其中,多轮调度的原则与一轮调度的原则保持一致。
本实施例中提供的基于集群的服务器资源调度方法,通过若确定第二目标服务器的数量小于剩余中间节点的数量,则确定第二目标服务器中调度给对应剩余中间节点的资源,并根据调度给对应剩余中间节点的资源再次更新第二目标服务器的剩余资源情况;从再次更新剩余资源情况后的第二目标服务器中筛选出未实现资源调度的中间节点对应的第二目标服务器。第二轮调度中,若第二目标服务器的数量小于剩余中间节点的数量时,则按照第一轮调度中再筛选服务器的数量小于中间节点的数量的方式进行资源调度,从而保证各服务器均衡调度资源。
作为一种可选实施方式,本实施例中,基于集群的服务器资源调度方法,在步骤104之后,还包括:启动集群,以实现管理节点和中间节点的启动。
其中,传统方式中在调度服务器资源给管理节点之后,云平台先启动管理节点,之后再确定中间节点,启动中间节点。由于管理节点启动需要一定时间,因此,整个集群启动的速度较慢。本实施例在调度服务器资源管理节点和中间节点之后,云平台启动各管理节点和中间节点,不会出现先启动的管理节点占用时间的情况,因此,整个集群启动时的速度相对较快。
云平台启动集群之后,用户终端即可拉起该集群的服务。例如,集群是kafka集群,云平台启动kafka集群之后,用户终端即可拉起kafka集群的消息服务。
本实施例中提供的基于集群的服务器资源调度方法,通过将各目标服务器的资源调度给集群中的对应节点之后,再启动集群,以实现管理节点和中间节点的启动。由于先给管理节点和中间节点调度服务器资源之后,再启动集群,因此不会出现因管理节点先启动而占用集群整体的启动时间,因此,能在一定程度上提高集群启动的效率。
图5是本申请一实施例提供的基于集群的服务器资源调度装置的结构示意图,如图5所示,本实施例提供的基于集群的服务器资源调度装置位于云平台中,则本实施例提供的基于集群的服务器资源调度装置50,包括:资源参数获取模块51,初选服务器筛选模块52,目标服务器筛选模块53和资源调度模块54。
其中,资源参数获取模块51,用于获取用户当前申请的集群的需求资源参数;所述需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格。初选服务器筛选模块52,用于基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;所述初选服务器为满足节点中各种需求资源对应需求规格的服务器。目标服务器筛选模块53,用于确定各初选服务器的剩余资源情况,并根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,所述目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求。资源调度模块54,用于将各目标服务器的资源调度给集群中的对应节点。
可选地,所述节点包括:管理节点和中间节点;初选服务器筛选模块52,基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器,具体用于:基于管理节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第一初选服务器;所述第一初选服务器为满足管理节点中各种需求资源对应需求规格的服务器;基于中间节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第二初选服务器;所述第二初选服务器为满足中间节点中各种需求资源对应需求规格的服务器。
可选地,目标服务器筛选模块53,确定各初选服务器的剩余资源情况,具体用于:获取各初选服务器中与所述需求资源种类匹配的至少一种目标资源的第一剩余规格;根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况。
可选地,目标服务器筛选模块53,根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况,具体用于:获取至少一种目标资源分别对应的初始规格阈值,所述初始规格阈值是为至少一种目标资源分别设置的达到调度资源满分时所对应的规格阈值;根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值;将各初选服务器中至少一种目标资源的调度分值与对应的预设权重进行加权求和运算,分别获得各初选服务器的剩余资源状况。
可选地,目标服务器筛选模块53,根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值,具体用于:获取至少一种目标资源的第一剩余规格与对应的初始规格阈值的占比;根据至少一个占比分别确定各初选服务器中至少一种目标资源的调度分值。
可选地,基于集群的服务器资源调度装置50,还包括权重调整装置,具体用于根据所述集群的特征参数断是否更新所述目标资源池中至少一种目标资源对应的预设权重;若确定更新所述目标资源池中至少一种目标资源对应的预设权重,则更新所述目标资源池中至少一种目标资源对应的预设权重。
可选地,权重调整装置,具体用于分别获取至少一种目标资源在所有资源池中的平均剩余规格;根据各所述平均剩余规格,判断是否存在至少一种目标资源达到预设紧缺程度;若存在至少一种目标资源达到预设紧缺程度,则更新所述至少一种目标资源对应的预设权重。
可选地,目标服务器筛选模块53,根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,具体用于:根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器;所述第一目标服务器的数量与所述管理节点的数量相同;确定第一目标服务器中调度给对应管理节点的资源,并根据所述调度给对应管理节点的资源更新第一目标服务器的剩余资源情况;将更新剩余资源情况后的第一目标服务器及未筛选出的第一初选服务器确定为第三初选服务器;根据第三初选服务器及第二初选服务器的剩余资源情况从所述第三初选服务器及所述第二初选服务器中筛选出第二目标服务器。
可选地,目标服务器筛选模块53,根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器,具体用于:将第一初选服务器按照剩余资源情况由大到小的顺序进行排序;选取排序在前N个的第一初选服务器作为第一目标服务器,所述N为第一目标服务器的数量。
可选地,目标服务器筛选模块53,根据第三初选服务器及第二初选服务器的剩余资源情况从所述第三初选服务器及所述第二初选服务器中筛选出第二目标服务器,具体用于:判断第三初选服务器及所述第二初选服务器中是否包括相同的服务器;若确定包括相同的服务器,则将所述第二初选服务器中的相同的服务器进行删除,以获得再筛选服务器,所述再筛选服务器包括去重处理后的第三初选服务器及所述第二初选服务器;根据所述再筛选服务器的剩余资源情况从所述再筛选服务器中筛选出第二目标服务器。
可选地,目标服务器筛选模块53,根据所述再筛选服务器的剩余资源情况从所述再筛选服务器中筛选出第二目标服务器,具体用于:确定所述再筛选服务器的数量;若确定所述再筛选服务器的数量大于或等于所述中间节点的数量,则将所述再筛选服务器按照剩余资源状况由大到小的顺序进行排列;将排在前M个的再筛选服务器确定为第二目标服务器,所述M为第二目标服务器的数量。
可选地,基于集群的服务器资源调度装置50,还包括第二目标服务器筛选模块,用于若确定所述再筛选服务器的数量小于所述中间节点的数量,则将每个再筛选服务器确定为对应的一个中间节点的第二目标服务器;确定第二目标服务器中调度给对应中间节点的资源,并根据所述调度给对应中间节点的资源更新第二目标服务器的剩余资源情况;从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器。
可选地,第二目标服务器筛选模块,从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器,具体用于:若确定第二目标服务器的数量大于或等于剩余中间节点的数量,则将所述第二目标服务器按照更新后的剩余资源状况由大到小的顺序进行排列;将排在前L个的第二目标服务器确定为剩余中间节点对应的第二目标服务器,所述L为剩余中间节点对应的第二目标服务器的数量。
可选地,第二目标服务器筛选模块,还具体用于:若确定第二目标服务器的数量小于剩余中间节点的数量,则确定第二目标服务器中调度给对应剩余中间节点的资源,并根据所述调度给对应剩余中间节点的资源再次更新第二目标服务器的剩余资源情况;从再次更新剩余资源情况后的第二目标服务器中筛选出未实现资源调度的中间节点对应的第二目标服务器。
可选地,基于集群的服务器资源调度装置50,还包括集群启动模块,用于启动所述集群,以实现管理节点和所述中间节点的启动。
图6是根据一示例性实施例示出的一种云平台的框图,该设备可以是如图6所示,所述电子设备,包括:存储器61,处理器62;存储器61用于存储所述处理器可执行指令的存储器;所述处理器62用于运行计算机程序或指令,以实现如上任意一个实施例提供的基于集群的服务器资源调度方法。
其中,存储器61,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器61可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
其中,处理器62可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本公开实施例的一个或多个集成电路。
可选的,在具体实现上,如果存储器61和处理器62独立实现,则存储器61和处理器62可以通过总线相互连接并完成相互间的通信。所述总线可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(PeripheralComponent,简称为PCI)总线或扩展工业标准体系结构(Extended Industry StandardArchitecture,简称为EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器61和处理器62集成在一块芯片上实现,则存储器61和处理器62可以通过内部接口完成相同间的通信。
本申请的另一实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如上述任一实施例提供的基于集群的服务器资源调度方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (18)
1.一种基于集群的服务器资源调度方法,其特征在于,所述方法包括:
获取用户当前申请的集群的需求资源参数;所述需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;
基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;所述初选服务器为满足节点中各种需求资源对应需求规格的服务器;
确定各初选服务器的剩余资源情况,并根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,所述目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;
将各目标服务器的资源调度给集群中的对应节点。
2.根据权利要求1所述的方法,其特征在于,所述节点包括:管理节点和中间节点;
基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器,包括:
基于管理节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第一初选服务器;所述第一初选服务器为满足管理节点中各种需求资源对应需求规格的服务器;
基于中间节点的需求资源种类及需求规格从目标资源池的各服务器中筛选出第二初选服务器;所述第二初选服务器为满足中间节点中各种需求资源对应需求规格的服务器。
3.根据权利要求1或2所述的方法,其特征在于,所述确定各初选服务器的剩余资源情况,包括:
获取各初选服务器中与所述需求资源种类匹配的至少一种目标资源的第一剩余规格;
根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况。
4.根据权利要求3所述的方法,其特征在于,所述根据各初选服务器的至少一种目标资源的第一剩余规格,确定各初选服务器的剩余资源情况,包括:
获取至少一种目标资源分别对应的初始规格阈值,所述初始规格阈值是为至少一种目标资源分别设置的达到调度资源满分时所对应的规格阈值;
根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值;
将各初选服务器中至少一种目标资源的调度分值与对应的预设权重进行加权求和运算,分别获得各初选服务器的剩余资源状况。
5.根据权利要求4所述的方法,其特征在于,所述根据至少一种目标资源的第一剩余规格及对应的初始规格阈值,分别确定各初选服务器中至少一种目标资源的调度分值,包括:
获取至少一种目标资源的第一剩余规格与对应的初始规格阈值的占比;
根据至少一个占比分别确定各初选服务器中至少一种目标资源的调度分值。
6.根据权利要求4所述的方法,其特征在于,还包括:
根据所述集群的特征参数判断是否更新所述目标资源池中至少一种目标资源对应的预设权重;
若确定更新所述目标资源池中至少一种目标资源对应的预设权重,则更新所述目标资源池中至少一种目标资源对应的预设权重。
7.根据权利要求4所述的方法,其特征在于,所述方法还包括:
分别获取至少一种目标资源在所有资源池中的平均剩余规格;
根据各所述平均剩余规格,判断是否存在至少一种目标资源达到预设紧缺程度;
若存在至少一种目标资源达到预设紧缺程度,则更新所述至少一种目标资源对应的预设权重。
8.根据权利要求2所述的方法,其特征在于,所述根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,包括:
根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器;所述第一目标服务器的数量与所述管理节点的数量相同;
确定第一目标服务器中调度给对应管理节点的资源,并根据所述调度给对应管理节点的资源更新第一目标服务器的剩余资源情况;
将更新剩余资源情况后的第一目标服务器及未筛选出的第一初选服务器确定为第三初选服务器;
根据第三初选服务器及第二初选服务器的剩余资源情况从所述第三初选服务器及所述第二初选服务器中筛选出第二目标服务器。
9.根据权利要求8所述的方法,其特征在于,所述根据第一初选服务器的剩余资源情况从第一初选服务器中筛选出第一目标服务器,包括:
将第一初选服务器按照剩余资源情况由大到小的顺序进行排序;
选取排序在前N个的第一初选服务器作为第一目标服务器,所述N为第一目标服务器的数量。
10.根据权利要求8所述的方法,其特征在于,所述根据第三初选服务器及第二初选服务器的剩余资源情况从所述第三初选服务器及所述第二初选服务器中筛选出第二目标服务器,包括:
判断第三初选服务器及所述第二初选服务器中是否包括相同的服务器;
若确定包括相同的服务器,则将所述第二初选服务器中的相同的服务器进行删除,以获得再筛选服务器,所述再筛选服务器包括去重处理后的第三初选服务器及所述第二初选服务器;
根据所述再筛选服务器的剩余资源情况从所述再筛选服务器中筛选出第二目标服务器。
11.根据权利要求10所述的方法,其特征在于,所述根据所述再筛选服务器的剩余资源情况从所述再筛选服务器中筛选出第二目标服务器,包括:
确定所述再筛选服务器的数量;
若确定所述再筛选服务器的数量大于或等于所述中间节点的数量,则将所述再筛选服务器按照剩余资源状况由大到小的顺序进行排列;
将排在前M个的再筛选服务器确定为第二目标服务器,所述M为第二目标服务器的数量。
12.根据权利要求11所述的方法,其特征在于,还包括:
若确定所述再筛选服务器的数量小于所述中间节点的数量,则将每个再筛选服务器确定为对应的一个中间节点的第二目标服务器;
确定第二目标服务器中调度给对应中间节点的资源,并根据所述调度给对应中间节点的资源更新第二目标服务器的剩余资源情况;
从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器。
13.根据权利要求12所述的方法,其特征在于,所述从更新剩余资源情况后的第二目标服务器中筛选出剩余中间节点对应的第二目标服务器,包括:
若确定第二目标服务器的数量大于或等于剩余中间节点的数量,则将所述第二目标服务器按照更新后的剩余资源状况由大到小的顺序进行排列;
将排在前L个的第二目标服务器确定为剩余中间节点对应的第二目标服务器,所述L为剩余中间节点对应的第二目标服务器的数量。
14.根据权利要求12所述的方法,其特征在于,还包括:
若确定第二目标服务器的数量小于剩余中间节点的数量,则确定第二目标服务器中调度给对应剩余中间节点的资源,并根据所述调度给对应剩余中间节点的资源再次更新第二目标服务器的剩余资源情况;
从再次更新剩余资源情况后的第二目标服务器中筛选出未实现资源调度的中间节点对应的第二目标服务器。
15.根据权利要求4-14任一项所述的方法,其特征在于,所述将各目标服务器的资源调度给集群中的对应节点之后,还包括:
启动所述集群,以实现管理节点和所述中间节点的启动。
16.一种基于集群的服务器资源调度装置,其特征在于,包括:
资源参数获取模块,用于获取用户当前申请的集群的需求资源参数;所述需求资源参数中包括集群中节点数量、节点中的需求资源种类及需求规格;
初选服务器筛选模块,用于基于所述节点中的需求资源种类及需求规格从目标资源池的各服务器中筛选出多个初选服务器;所述初选服务器为满足节点中各种需求资源对应需求规格的服务器;
目标服务器筛选模块,用于确定各初选服务器的剩余资源情况,并根据所述剩余资源情况从初选服务器中筛选出多个目标服务器,所述目标服务器是基于节点的数量筛选出的,并满足将资源调度给对应节点后调度均衡要求;
资源调度模块,用于将各目标服务器的资源调度给集群中的对应节点。
17.一种云平台,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求中1至15任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至15任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210408260.7A CN114756347A (zh) | 2022-04-19 | 2022-04-19 | 基于集群的服务器资源调度方法、装置、云平台及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210408260.7A CN114756347A (zh) | 2022-04-19 | 2022-04-19 | 基于集群的服务器资源调度方法、装置、云平台及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114756347A true CN114756347A (zh) | 2022-07-15 |
Family
ID=82330647
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210408260.7A Pending CN114756347A (zh) | 2022-04-19 | 2022-04-19 | 基于集群的服务器资源调度方法、装置、云平台及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114756347A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979282A (zh) * | 2022-07-28 | 2022-08-30 | 北京金山云网络技术有限公司 | 任务调度方法、装置、存储介质以及电子设备 |
CN115562870A (zh) * | 2022-10-25 | 2023-01-03 | 北京京航计算通讯研究所 | 一种集群的任务节点资源构建方法 |
CN115794337A (zh) * | 2022-11-14 | 2023-03-14 | 北京百度网讯科技有限公司 | 资源调度方法、装置、云平台、设备及存储介质 |
CN116708035A (zh) * | 2023-08-07 | 2023-09-05 | 钛合联(深圳)科技有限公司 | 一种网络数据安全加密方法及系统 |
CN117331678A (zh) * | 2023-12-01 | 2024-01-02 | 之江实验室 | 面向异构算力联邦的多集群作业资源规格计算方法和系统 |
-
2022
- 2022-04-19 CN CN202210408260.7A patent/CN114756347A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114979282A (zh) * | 2022-07-28 | 2022-08-30 | 北京金山云网络技术有限公司 | 任务调度方法、装置、存储介质以及电子设备 |
CN115562870A (zh) * | 2022-10-25 | 2023-01-03 | 北京京航计算通讯研究所 | 一种集群的任务节点资源构建方法 |
CN115562870B (zh) * | 2022-10-25 | 2023-07-21 | 北京京航计算通讯研究所 | 一种集群的任务节点资源构建方法 |
CN115794337A (zh) * | 2022-11-14 | 2023-03-14 | 北京百度网讯科技有限公司 | 资源调度方法、装置、云平台、设备及存储介质 |
CN115794337B (zh) * | 2022-11-14 | 2023-09-26 | 北京百度网讯科技有限公司 | 资源调度方法、装置、云平台、设备及存储介质 |
CN116708035A (zh) * | 2023-08-07 | 2023-09-05 | 钛合联(深圳)科技有限公司 | 一种网络数据安全加密方法及系统 |
CN116708035B (zh) * | 2023-08-07 | 2023-10-03 | 钛合联(深圳)科技有限公司 | 一种网络数据安全加密方法及系统 |
CN117331678A (zh) * | 2023-12-01 | 2024-01-02 | 之江实验室 | 面向异构算力联邦的多集群作业资源规格计算方法和系统 |
CN117331678B (zh) * | 2023-12-01 | 2024-04-19 | 之江实验室 | 面向异构算力联邦的多集群作业资源规格计算方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114756347A (zh) | 基于集群的服务器资源调度方法、装置、云平台及介质 | |
CN111966500B (zh) | 资源调度方法、装置、电子设备及存储介质 | |
CN112015536B (zh) | Kubernetes集群容器组调度方法、装置及介质 | |
CN109471705A (zh) | 任务调度的方法、设备及系统、计算机设备 | |
CN109525410B (zh) | 分布式存储系统升级管理的方法、装置及分布式存储系统 | |
CN108965014A (zh) | QoS感知的服务链备份方法及系统 | |
CN111274033B (zh) | 一种资源部署方法、装置、服务器以及存储介质 | |
CN110389843B (zh) | 一种业务调度方法、装置、设备及可读存储介质 | |
CN104050043A (zh) | 基于共享缓存感知的虚拟机调度方法和装置 | |
CN114153580A (zh) | 一种跨多集群的工作调度方法及装置 | |
US20240028415A1 (en) | Instance deployment method and apparatus, cloud system, computing device, and storage medium | |
CN111767145A (zh) | 容器调度系统、方法、装置和设备 | |
CN115391023A (zh) | 多任务容器集群的计算资源优化方法及装置 | |
CN112231223A (zh) | 基于mqtt的分布式自动化软件测试方法及系统 | |
CN112860383A (zh) | 集群资源调度方法、装置、设备及存储介质 | |
CN111209098A (zh) | 一种智能渲染调度方法、服务器、管理节点及存储介质 | |
CN114979282B (zh) | 任务调度方法、装置、存储介质以及电子设备 | |
CN114443057B (zh) | 对话模型的部署和对话方法、装置、电子设备及存储介质 | |
CN116010051A (zh) | 一种联邦学习多任务调度方法及装置 | |
CN112395269B (zh) | MySQL高可用组的搭建方法及装置 | |
CN114995974A (zh) | 任务调度方法、装置、存储介质及计算机设备 | |
CN114489970A (zh) | Kubernetes中利用Coscheduling插件实现队列排序的方法及系统 | |
CN113407401A (zh) | 一种自动化测试方法及装置、电子设备及存储介质 | |
CN112835989A (zh) | 一种单应用多MySQL Set的部署方法及系统 | |
CN113204434B (zh) | 基于k8s的计划任务执行方法、装置及计算机设备 |
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 |