CN111611074A - 一种集群资源的调度方法及装置 - Google Patents
一种集群资源的调度方法及装置 Download PDFInfo
- Publication number
- CN111611074A CN111611074A CN202010408775.8A CN202010408775A CN111611074A CN 111611074 A CN111611074 A CN 111611074A CN 202010408775 A CN202010408775 A CN 202010408775A CN 111611074 A CN111611074 A CN 111611074A
- Authority
- CN
- China
- Prior art keywords
- service
- time dimension
- resource
- idle
- resources
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5013—Request control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及通信领域,特别涉及一种集群资源的调度方法及装置,用于保障业务可用性,该方法为:当接收到业务请求时,基于业务请求的业务操作类型,确定相应的时间维度优先级,从而进一定确定相应的时间维度资源配置信息中的时间维度限定条件,进而能够准确迅速地选取并调度符合要求的目标空闲资源处理所述业务请求。这样,便在各个业务之间实现了资源的合理分配,能够在保证资源被充分利用的前提下,为升级类操作预留出对应的资源而避免被其他类操作抢占资源,保障了升级类操作的顺利进行,进而提升整个分布式集群内业务的可用性与稳定性。
Description
技术领域
本公开涉及通信领域,特别涉及一种集群资源的调度方法及装置。
背景技术
目前,调度器广泛应用于单机系统及分布式系统中,用于实现集群资源的调度。参阅图1所示,在分布式系统中,调度器是集群资源(以下简称资源)分配的核心组件,提供了资源管理与业务分配的能力,其本质是实现资源的分时复用。具体的,调度器的主要作用即是根据配置的调度策略,将请求使用资源的业务实例(可记为Pod,以下简称为业务)调度到合适的业务服务器上进行处理,而在资源不足场景下,对业务进行优先级区分,按优选级为业务分配资源。
调度器的资源分配结果直接关系到集群的整体开销与业务的执行,因此,集群调度架构整体的演进也产生了众多的调度框架,包括:集中式调度器、双层调度器及共享状态调度器等多种,下面分别简短各种不同调度器的特点。
集中式调度器,指的是采用中心化的方式来管理资源和调度业务。
一般情况下,在同一时间内,在整个集群内,只有单个调度器在主导着调度过程,这个实时运行的调度器有着整个集群的资源配置信息和业务配置信息。而一般考虑高可用场景,会设置多个备用调度器,在主用调度器出现异常时,完成主备的自动切换。
分层调度器,主要是解决为了集中式调度器的性能瓶颈问题,集中式调度框架内所有调度的计算和容错均由单个调度器完成,因此,单个调度器的处理能力会是集群规模及调度时延的制约所在。
那么,在一般的数据密集型应用中,最直接的解决方式就是划分多区域,利用切分资源域和业务域来解决上述瓶颈,因而也就产生了双层调度器的架构。在双层调度器的实现中,资源的使用状态由分区调度器和中央调度器同时管理,第一级的中央调度器主要负责大规模的资源划分,而第二级的分区调度器则负责在分区内完成业务的资源最终分配。
共享状态调度器,指的是系统中每个调度器都拥有一份集群状态副本,并且每个调度器会独立地对本地保存的集群状态副本进行更新,而当调度器本地的集群状态副本产生了变化时,调度器会发布一个事务去通知其他调度器更新整个集群的状态。
由此可见,无论采用何种调度器框架,实现的核心都主要有两部分构成:
首先,各个集群内的业务服务器均维护自身的资源状态,并定期将自身的资源(包括可用资源、已用资源及总资源数据)发布到单独的资源管理平台,或者,直接发布到对业务服务器有管理权限的调度器或代理服务平台上。
其次,调度器从资源管理平台获取可用资源,并结合各类业务需求进行业务服务器的过滤,在选择出可用的业务服务器后,再依据配置策略进行排序,最终为业务绑定合适的业务服务器进行处理,并分配对应的资源。
此外,在业务不断丰富的前提下,集群资源会进入整体偏紧的状态。在集群资源总体紧张的前提下,要保证所有业务都被调度成功是不可能完成的任务,因此,优先保证部分业务的资源调度需求就显得尤为迫切,这也就引入了业务的分级管理。
事实上分级管理最直接的策略是按业务的重要性:核心业务分配高优先级,边缘业务分配低优先级。即已有技术下,各类业务的优先级是固定的,一旦设定,后续将不会改变;并且,各种优先级的业务执行升级类操作后,会立即释放相关资源。
然而,上述优先级策略却存在以下问题:
业务在不同处理阶段,对资源需求的迫切性是不同的,若在业务处理赛程中均按照统一的优先级进行资源分配,会令具有高优先级的业务,始终抢占优质资源,不利于实现资源均衡。
另一方面,若具有第一优先级的第一业务在升级后立刻释放相关资源,其释放的资源有可能被具有第二优先级的第二业务抢占,即使第二优先级低于第一优先级,第二业务也不会立即释放相关资源,而此时,如果第一业务在升级后尚未启动,则会因为资源不足而引起业务中断,严重时会危及业务的可用性。
例如,在分布式集群中,升级类操作伴随着业务的“先删除-再重建”的过程,在删除过程中,业务所占用的资源会被释放,成为集群内的可用资源,此时,若有并发的其他业务的创建类操作,则有可能资源被创建类操作抢占,导致升级滚动停止。
有鉴于此,需要设计一种新的集群资源的调度方法,以克服上述缺陷。
发明内容
本公开实施例提供一种集群资源的调度方法,用以在集群系统中的各个业务之间,实现资源合理分配,以及在业务升级后有效保障的业务可用性。
本公开实施例提供的具体技术方案如下:
第一方面,一种集群资源的调度方法,包括:
接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度所述目标空闲资源处理所述业务请求。
可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级,包括:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源,包括:
在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲资源,作为侯选空闲资源;
基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器;
基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器;
将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
可选的,进一步包括:
若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。
第二方面,一种集群资源的调度装置,包括:
第一处理单元,用于接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
第二处理单元,用于确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
选取单元,用于基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度单元,用于调度所述目标空闲资源处理所述业务请求。
可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级时,所述第一处理单元用于:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源时,所述选取单元用于:
在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲资源,作为侯选空闲资源;
基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器;
基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器;
将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
可选的,所述选取单元进一步用于:
若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。
第三方面,一种网络设备,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现上述第一方面中任一项所述的方法。
第四方面,一种存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行上述第一方面中任一项所述的方法。
综上所述,本公开实施例中,针对不同业务操作类型分别设置了不同的时间维度优先级,以及针对不同的时间维度优先级分别设置了不同的时间维度资源配置信息,这样,当接收到业务请求时,基于业务请求的业务操作类型,即可以确定相应的时间维度优先级,从而进一定确定相应的时间维度资源配置信息中的时间维度限定条件,进而能够准确迅速地选取并调度符合要求的目标空闲资源处理所述业务请求。
显然,采用上述技术方案,同一业务在流程的不同阶段具有不同的时间维度优先级,从而可以在不同的范围内使用相应的空闲资源,这样,便在各个业务之间实现了资源的合理分配,能够在保证资源被充分利用的前提下,为升级类操作预留出对应的资源而避免被其他类操作抢占资源,保障了升级类操作的顺利进行,进而提升整个分布式集群内业务的可用性与稳定性。
附图说明
图1为已有技术下集群系统架构示意图;
图2为本公开实施例中集群资源的分配流程图;
图3为本公开实施例中调度器实体架构示意图;
图4为本公开实施例中调度器逻辑架构示意图。
具体实施方式
在集群系统中,为了在各个业务之间实现资源合理分配,以及在业务升级后有效保障的业务可用性,本公开实施例中,针对同一个业务,在处理的不同阶段,设置不同的处理优先级,即同一个业务的升级类操作和创建类操作,具有不同的处理优先级,而业务特性保持不变,同时,一个业务的升级类操作过程中释放的资源,需要为所述一个业务的升级类操作之后的启动操作预先保留。
下面结合附图对本公开优先的实施方式做出进一步详细说明。
在实际业务运行中,通常会细分出多种优先级场景,例如:在公司集群中出现的需求:优先保证升级类型的业务得到处理,降低创建类型的业务的优选级。这是因为,业务方在集群中通常会有一批稳定的长期需要使用的业务实例正在运行,此类业务的服务级别协议(Service Level Agreement,SLA)一般会有较高要求,一旦业务升级过程中资源被抢占,会直接危及业务的可用性;而创建类的业务相对并不敏感,在创建之前,系统视业务不存在,即对业务的可用性需求尚未建立,则此时调度业务失败带来的影响是相对可接受的,继续执行资源申请流程更为合适。
有鉴于此,本公开实施例中,重点要解决的就是在分布式集群中,在保持业务类型不变的前提下,针对同一业务的不同类型的操作,动态的调整优先级,从而保证业务的升级类操作可以顺序执行完毕,不因在升级过程中有资源释放操作,而导致资源被其他创建类操作抢占。从而保证整体集群内各个业务的SLA,提升业务的整体稳定性。
具体的,本公开实施例中,所谓动态地调整不同类型操作的优先级,实质是在资源维度之上,又添加了时间维度,这里有两层含义:
同一业务,在不同的操作时间维度上,优先级不同,升级类操作的优先级,高于创建类操作的优先级。
例如,业务X在创建阶段,其处理优先级是B级,而在升级阶段,其处理优先级是A级,A级高于B级。
相应的,资源的可用性,不应该仅参考数据量这一个维度衡量,还应该勇者时间维度,即执行了升级类操作的业务,在升级后释放后的资源只对升级后的业务可见,即保留一个资源预留的过程。
这一点,是为了保证调度器不在升级类操作的资源释放环节中,将资源分配给其他类操作,即资源带有时间戳。
而调度器结合业务的时间优先级和资源时间戳,实现业务的资源分配,从而灵活配置资源分配策略,实现对动态优先级的支持。
本公开实施例中,为集群空闲资源增加时间维度的资源配置信息,资源由“数据”单维度扩展到“数据+时间”双重维度。
下面以单个业务服务器为例,介绍资源配置信息的建立与实现。
在业务服务器上,通过系统调用获取集群总资源,以及在扣除各类预留资源计算得出可用的空闲资源,即:
空闲资源=业务服务器总资源–各类预留资源–sum(既有业务占用资源)
第1次资源上报:资源上报进程(ResourceReporter)运行在各个业务服务器上,在资源上报进程启动时,执行初次上报过程,将第一空闲资源Resource1添加时间戳TimeStamp1后一起上报,同时,业务服务器将此次上报结果缓存在本地,缓存数据记为{Resource1,timestamp 1}。
第2次资源上报:按照相同方式计算出第二空闲资源。
若第二空闲资源Resource2=Resource1,则表示资源配置信息无变化,业务服务器上报并同时缓存{Resource1,timestamp1};
若第二空闲资源Resource2>Resource1,则表示空闲资源增大,业务服务器新增部分的空闲资源(即最新释放出的资源),按当前时间戳上报,原资源继承缓存内上一次的时间戳,即业务服务器上报并同时缓存{(Resource1,timestamp1),{Resource2–Resource1,timestamp2)};
若Resource2<Resource1,则表示空闲资源减少,但实际当前的空闲资源仍为上次未分配的,则继承缓存内上一次的时间戳,即业务服务器睥了并同时缓存{Resource1–Resource2,timestamp1)};
以此类推……;
第n次资源上报,过程与第2次资源上报过程相同,只有在第n次资源上报以及第n-1次资源上报之间释放的资源,才会打上当前时间戳,否则都将继承缓存中的时间戳。
经过以上过程,最终在资源管理平台获得的资源配置信息中,单个业务服务器的资源是分层的,以资源A为例,其结构将如表1所示:
表1
资源类型 | 空闲容量 | 所属业务服务器 | 时间戳 |
ResourceA | Capacity1 | nodeA | Timestamp1 |
ResourceA | Capacity2 | nodeA | Timestamp2 |
…… | …… | …… | …… |
ResourceA | Capacityn | nodeA | Timestampn |
上述表1仅以资源A为例进行说明,针对其他类型的资源同样设置有如表1所示的资源配置信息,在此不再一一赘述。
相应的,针对不同的操作类型,也会设置相应的时间维度优先级与不同的操作类型(即业务操作时机)之间建立绑定关系,具体如表2所示(仅为举例):
表2
从表2中可以看出,本公开实施例中,
若所述业务请求的业务操作类型为创建类操作,则所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多,即可调度的空闲资源越多。
在建立了支持时间维度的资源配置信息,并设定好时间维度优先级与资源配置信息之间的对应关系后,即可进入到通用的调度器调度资源的流程了,参阅图2所示,本公开实施例中,具体流程如下:
步骤200:调度器接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级。
例如,以表1为例,假设调度器接收到业务方x发送的业务请求x1,用于请求针对业务x执行创造类操作,则调度器将业务请求x1的时间维度优先级设置为V3,即最低优先级。
又例如,以表1为例,假设调度器又接收到业务方x发送的业务请求x2,用于请求针对业务x执行升级类操作,则调度器将业务请求x2的时间维度优先级设置为V1,即最高优先级。
由此可见,同一类型的业务,在流程的不同阶段,其时间维度优先级是不同的。
步骤210:调度器进一步确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件。
实际应用中,时间维度资源配置信息中记录的可使用的空闲资源对应的时间维度限定条件,可以有多种配置方式,可选的,本公开实施例中,以时间维度资源配置信息中规定了空闲资源的已空闲时长范围为例进行说明,所谓已空闲时长即是指空闲资源的被释放时间到当前时间的时长,其中,被释放时间可以由空闲资源的时间戳获知。
例如,以表1为例,由于上述业务请求x1的时间维度优先级设置为V3,则相应的时间维度资源配置信息为“已空闲15分钟以上资源”,即调度器根据各个资源的时间戳,确定各个资源的已空闲时长,已空闲时长符合“已空闲15分钟以上”的资源,可以为业务请求x1调度。
又例如,仍以表1为例,由于上述业务请求x2的时间维度优先级设置为V1,则相应的时间维度资源配置信息为“全部空闲资源”,即调度器根据各个资源的时间戳,确定各个资源的已空闲时长,已空闲时长符合“已空闲15分钟以上”的资源,可以为业务请求x1调度。
由此可见,操作类型不同的业务请求具有不同时间维度优先级,因此,可用的空闲资源集合也不相同,这样,可以有效避免业务之间发生资源冲突,为重要业务提供了可靠的资源保障。
步骤220:调度器基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源。
具体的,在执行步骤220时,分为以下几个步骤:
S1,调度器在当前可使用的空闲资源中,筛选出符合上述时间维度优先级对应的时间维度资源配置信息的各个空闲资源,作为候选空闲资源。
例如,假设业务方x发送的业务请求x1,需要分配中央处理器(CentralProcessing Unit,CPU)类型的资源进行处理,而CPU类型的资源在系统中称为资源A,假设系统中当前存在的可使用的CPU类型的空闲资源为:资源A1、资源A2、资源A3、资源A4和资源A5,则调度器根据时间维度资源配置信息,确定业务请求x2的时间维度优先级是V3,只有权限使用已空闲15分钟以上的空闲资源,假设上述各个资源中,仅有资源A1、资源A4和资源A5符合要求,因此,调度器将资源A1、资源A4和资源A5视为业务请求x1的候选空闲资源。
又例如,假设业务方x发送的业务请求x2,也需要分配CPU类型的资源进行处理,而CPU类型的资源在系统中称为资源A,假设系统中当前存在的可使用的CPU类型的空闲资源为:资源A1、资源A2、资源A3、资源A4和资源A5,则调度器根据时间维度资源配置信息,确定业务请求x2的时间维度优先级是V1,有权限使用全部的空闲资源,因此,调度器将资源A1-资源A5均视为业务请求x2的候选空闲资源。
S2,调度器基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器。
例如,假设业务方x发送的业务请求x1,调度器确定在资源A1、资源A4和资源A5中,资源A4和资源A5的大小能够用于处理业务请求x1,而资源A4和资源A5分别对应业务服务器4和业务服务器5,因此,调度器最终选定业务服务器4和业务服务器5。
又例如,假设业务方x发送的业务请求x2,调度器确定在资源A1-资源A5中,确定资源A1和资源A3的大小能够用于处理业务请求x2,而资源A1和资源A3分别对应业务服务器1和业务服务器3,因此,调度器最终选定业务服务器1和业务服务器3。
S3,调度器基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器。
本公开实施例中,可以根据实际应用场景的不同而灵活设置业务维度优先级,因此,可以从不同角度设置业务维度优先级。
如,可以按照业务服务器已调度次数设置业务维度优先级,已调度次数越少,业务维度优先级越高。
又如,可以按照业务服务器的空闲资源的大小设置业务维度优先级,空闲资源的数量越大,业务维度优先级越高。
……
以此类推,在此不再赘述。
另一方面,本公开实施例中,若存在多个业务维度优先级相同的业务服务器,则调度器可以随机从中选取一个,也可以采用论询方式(round-robin)从中选取一个,在此不再赘述。
具体的,上述S3可以按照以下方式执行。
例如,假设业务方x发送的业务请求x1,调度器确定选定的业务服务器4和业务服务器5的业务维度优先级的排序为:业务服务器4>业务服务器5,则最终将业务服务器4作为目标业务服务器。
又例如,假设业务方x发送的业务请求x2,调度器确定选定的业务服务器1和业务服务器3的业务维度优先级的排序为:业务服务器1=业务服务器3,则最终采用轮询方式从中选取业务服务器1作为目标业务服务器。
S4,调度器将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
例如,假设业务方x发送的业务请求x1,则调度器最终选取业务服务器4提供的资源4作为目标空闲资源,并将业务请求x1调度至业务服务器4进行处理。
又例如,假设业务方x发送的业务请求x2,则调度器最终选取业务服务器1提供的资源1作为目标空闲资源,并将业务请求x2调度至业务服务器1进行处理。
步骤230:调度器调度所述目标空闲资源处理所述业务请求。
基于上述实施例,参阅图3所示,本公开实施例中,调度器至少包括:
第一处理单元30,用于接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
第二处理单元31,用于确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
选取单元32,用于基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度单元33,用于调度所述目标空闲资源处理所述业务请求。
可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级时,所述第一处理单元30用于:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源时,所述选取单元32用于:
在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲资源,作为侯选空闲资源;
基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器;
基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器;
将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
可选的,所述选取单元32进一步用于:
若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。
基于同一发明构思,参阅图4所示,本申请实施例提供一种调度器,至少包括:
存储器40,用于存储可执行指令;
处理器41,用于读取并执行所述存储器中存储的可执行指令,以实现以下流程:
接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度所述目标空闲资源处理所述业务请求。
可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级时,所述处理器41用于:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源时,所述处理器41用于:
在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲资源,作为侯选空闲资源;
基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器;
基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器;
将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
可选的,所述处理器41进一步用于:
若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。
基于同一发明构思,本申请实施例提供一种存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行如上述实施例中任一项所述的方法。
综上所述,本公开实施例中,针对不同业务操作类型分别设置了不同的时间维度优先级,以及针对不同的时间维度优先级分别设置了不同的时间维度资源配置信息,这样,当接收到业务请求时,基于业务请求的业务操作类型,即可以确定相应的时间维度优先级,从而进一定确定相应的时间维度资源配置信息中的时间维度限定条件,进而能够准确迅速地选取并调度符合要求的目标空闲资源处理所述业务请求。
显然,采用上述技术方案,同一业务在流程的不同阶段具有不同的时间维度优先级,从而可以在不同的范围内使用相应的空闲资源,这样,便在各个业务之间实现了资源的合理分配,能够在保证资源被充分利用的前提下,为升级类操作预留出对应的资源而避免被其他类操作抢占资源,保障了升级类操作的顺利进行,进而提升整个分布式集群内业务的可用性与稳定性。
进一步,上述过程对于现有技术构架并没有很大的变化,无需对调度器的算法结构进行较大调整,实现了平滑的功能扩展,从而有效控制了运维成本,具有广泛地应用空间。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本公开的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本公开范围的所有变更和修改。
显然,本领域的技术人员可以对本公开实施例进行各种改动和变型而不脱离本公开实施例的精神和范围。这样,倘若本公开实施例的这些修改和变型属于本公开权利要求及其等同技术的范围之内,则本公开也意图包含这些改动和变型在内。
Claims (10)
1.一种集群资源的调度方法,其特征在于,包括:
接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
基于所述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度所述目标空闲资源处理所述业务请求。
2.如权利要求1所述的方法,其特征在于,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级,包括:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
3.如权利要求1所述的方法,其特征在于,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
4.如权利要求1、2或3所述的方法,其特征在于,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源,包括:
在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲资源,作为侯选空闲资源;
基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使用需求的候选空闲资源,并确定所归属的业务服务器;
基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选取出业务维度优先级最高的业务服务器,作为目标业务服务器;
将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。
5.如权利要求4所述的方法,其特征在于,进一步包括:
若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。
6.一种集群资源的调度装置,其特征在于,包括:
第一处理单元,用于接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级;
第二处理单元,用于确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件;
选取单元,用于基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源;
调度单元,用于调度所述目标空闲资源处理所述业务请求。
7.如权利要求6所述的装置,其特征在于,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预设的时间维度优先级时,所述第一处理单元用于:
若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间维度优先级为最低级;
若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间维度优先级为最高级;
其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越多。
8.如权利要求6所述的装置,其特征在于,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件,包括:
所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时长为空闲资源的被释放时间到当前时间的时长。
9.一种网络设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如权利要求1至5中任一项所述的方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010408775.8A CN111611074A (zh) | 2020-05-14 | 2020-05-14 | 一种集群资源的调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010408775.8A CN111611074A (zh) | 2020-05-14 | 2020-05-14 | 一种集群资源的调度方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111611074A true CN111611074A (zh) | 2020-09-01 |
Family
ID=72196804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010408775.8A Pending CN111611074A (zh) | 2020-05-14 | 2020-05-14 | 一种集群资源的调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111611074A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112769643A (zh) * | 2020-12-28 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN113220448A (zh) * | 2021-04-15 | 2021-08-06 | 广州广哈通信股份有限公司 | 一种双机系统及其控制方法 |
WO2022057001A1 (zh) * | 2020-09-15 | 2022-03-24 | 网宿科技股份有限公司 | 一种设备纳管方法、系统及纳管集群 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970587A (zh) * | 2014-04-21 | 2014-08-06 | 华为技术有限公司 | 一种资源调度的方法、设备和系统 |
CN105100025A (zh) * | 2014-05-22 | 2015-11-25 | 中兴通讯股份有限公司 | 业务分发方法和系统 |
CN106293941A (zh) * | 2016-08-09 | 2017-01-04 | 上海新炬网络信息技术有限公司 | 一种数据库系统资源的分配方法 |
CN106789421A (zh) * | 2016-12-17 | 2017-05-31 | 深圳中广核工程设计有限公司 | 协同设计的方法和装置 |
US20170161117A1 (en) * | 2015-12-07 | 2017-06-08 | Fujitsu Limited | Apparatus and method to determine a service to be scaled out based on a predicted virtual-machine load and service importance |
CN108270837A (zh) * | 2017-01-04 | 2018-07-10 | 北京京东尚科信息技术有限公司 | 一种利用闲置资源的分布式任务调度方法及系统 |
-
2020
- 2020-05-14 CN CN202010408775.8A patent/CN111611074A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103970587A (zh) * | 2014-04-21 | 2014-08-06 | 华为技术有限公司 | 一种资源调度的方法、设备和系统 |
CN105100025A (zh) * | 2014-05-22 | 2015-11-25 | 中兴通讯股份有限公司 | 业务分发方法和系统 |
US20170161117A1 (en) * | 2015-12-07 | 2017-06-08 | Fujitsu Limited | Apparatus and method to determine a service to be scaled out based on a predicted virtual-machine load and service importance |
CN106293941A (zh) * | 2016-08-09 | 2017-01-04 | 上海新炬网络信息技术有限公司 | 一种数据库系统资源的分配方法 |
CN106789421A (zh) * | 2016-12-17 | 2017-05-31 | 深圳中广核工程设计有限公司 | 协同设计的方法和装置 |
CN108270837A (zh) * | 2017-01-04 | 2018-07-10 | 北京京东尚科信息技术有限公司 | 一种利用闲置资源的分布式任务调度方法及系统 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022057001A1 (zh) * | 2020-09-15 | 2022-03-24 | 网宿科技股份有限公司 | 一种设备纳管方法、系统及纳管集群 |
CN112769643A (zh) * | 2020-12-28 | 2021-05-07 | 北京达佳互联信息技术有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN112769643B (zh) * | 2020-12-28 | 2023-12-29 | 北京达佳互联信息技术有限公司 | 资源调度方法、装置、电子设备及存储介质 |
CN113220448A (zh) * | 2021-04-15 | 2021-08-06 | 广州广哈通信股份有限公司 | 一种双机系统及其控制方法 |
CN113220448B (zh) * | 2021-04-15 | 2023-02-17 | 广州广哈通信股份有限公司 | 一种双机系统及其控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110647394B (zh) | 一种资源分配方法、装置及设备 | |
US11868793B2 (en) | Tenant-controlled cloud updates | |
CN109936604B (zh) | 一种资源调度方法、装置和系统 | |
CN110515704B (zh) | 基于Kubernetes系统的资源调度方法及装置 | |
CN111611074A (zh) | 一种集群资源的调度方法及装置 | |
CN113918270A (zh) | 基于Kubernetes的云资源调度方法及系统 | |
US10686728B2 (en) | Systems and methods for allocating computing resources in distributed computing | |
CN107168777B (zh) | 分布式系统中资源的调度方法以及装置 | |
CN104301257B (zh) | 一种资源分配方法、装置及设备 | |
WO2016095535A1 (zh) | 资源分配方法、装置和服务器 | |
CN112463375A (zh) | 一种数据处理的方法和装置 | |
CN101227416A (zh) | 一种通信网络中链路带宽分配方法 | |
CN107665143B (zh) | 资源管理方法、装置及系统 | |
CN110971623A (zh) | 微服务实例弹性伸缩方法、装置以及存储介质 | |
CN111427670A (zh) | 任务调度方法和系统 | |
CN113760549B (zh) | 一种pod部署方法及装置 | |
CN112214288B (zh) | 基于Kubernetes集群的Pod调度方法、装置、设备和介质 | |
CN114416355A (zh) | 资源调度方法、装置、系统、电子设备及介质 | |
CN116680078A (zh) | 云计算资源调度方法、装置、设备以及计算机存储介质 | |
CN111813564B (zh) | 集群资源管理方法、装置及容器集群管理系统 | |
CN115878910A (zh) | 线路查询方法、装置和存储介质 | |
CN112616143A (zh) | 一种分配通信号码的方法、装置、电子设备及存储介质 | |
CN110784335B (zh) | 一种云场景下的网元资源预留系统 | |
CN115063282A (zh) | 一种gpu资源调度方法、装置、设备及存储介质 | |
CN114253663A (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 |