
技术摘要:
本公开涉及通信领域,特别涉及一种集群资源的调度方法及装置,用于保障业务可用性,该方法为:当接收到业务请求时,基于业务请求的业务操作类型,确定相应的时间维度优先级,从而进一定确定相应的时间维度资源配置信息中的时间维度限定条件,进而能够准确迅速地选取并 全部
背景技术:
目前,调度器广泛应用于单机系统及分布式系统中,用于实现集群资源的调度。参 阅图1所示,在分布式系统中,调度器是集群资源(以下简称资源)分配的核心组件,提供了 资源管理与业务分配的能力,其本质是实现资源的分时复用。具体的,调度器的主要作用即 是根据配置的调度策略,将请求使用资源的业务实例(可记为Pod,以下简称为业务)调度到 合适的业务服务器上进行处理,而在资源不足场景下,对业务进行优先级区分,按优选级为 业务分配资源。 调度器的资源分配结果直接关系到集群的整体开销与业务的执行,因此,集群调 度架构整体的演进也产生了众多的调度框架,包括:集中式调度器、双层调度器及共享状态 调度器等多种,下面分别简短各种不同调度器的特点。 集中式调度器,指的是采用中心化的方式来管理资源和调度业务。 一般情况下,在同一时间内,在整个集群内,只有单个调度器在主导着调度过程, 这个实时运行的调度器有着整个集群的资源配置信息和业务配置信息。而一般考虑高可用 场景,会设置多个备用调度器,在主用调度器出现异常时,完成主备的自动切换。 分层调度器,主要是解决为了集中式调度器的性能瓶颈问题,集中式调度框架内 所有调度的计算和容错均由单个调度器完成,因此,单个调度器的处理能力会是集群规模 及调度时延的制约所在。 那么,在一般的数据密集型应用中,最直接的解决方式就是划分多区域,利用切分 资源域和业务域来解决上述瓶颈,因而也就产生了双层调度器的架构。在双层调度器的实 现中,资源的使用状态由分区调度器和中央调度器同时管理,第一级的中央调度器主要负 责大规模的资源划分,而第二级的分区调度器则负责在分区内完成业务的资源最终分配。 共享状态调度器,指的是系统中每个调度器都拥有一份集群状态副本,并且每个 调度器会独立地对本地保存的集群状态副本进行更新,而当调度器本地的集群状态副本产 生了变化时,调度器会发布一个事务去通知其他调度器更新整个集群的状态。 由此可见,无论采用何种调度器框架,实现的核心都主要有两部分构成: 首先,各个集群内的业务服务器均维护自身的资源状态,并定期将自身的资源(包 括可用资源、已用资源及总资源数据)发布到单独的资源管理平台,或者,直接发布到对业 务服务器有管理权限的调度器或代理服务平台上。 其次,调度器从资源管理平台获取可用资源,并结合各类业务需求进行业务服务 器的过滤,在选择出可用的业务服务器后,再依据配置策略进行排序,最终为业务绑定合适 的业务服务器进行处理,并分配对应的资源。 此外,在业务不断丰富的前提下,集群资源会进入整体偏紧的状态。在集群资源总 体紧张的前提下,要保证所有业务都被调度成功是不可能完成的任务,因此,优先保证部分 4 CN 111611074 A 说 明 书 2/11 页 业务的资源调度需求就显得尤为迫切,这也就引入了业务的分级管理。 事实上分级管理最直接的策略是按业务的重要性:核心业务分配高优先级,边缘 业务分配低优先级。即已有技术下,各类业务的优先级是固定的,一旦设定,后续将不会改 变;并且,各种优先级的业务执行升级类操作后,会立即释放相关资源。 然而,上述优先级策略却存在以下问题: 业务在不同处理阶段,对资源需求的迫切性是不同的,若在业务处理赛程中均按 照统一的优先级进行资源分配,会令具有高优先级的业务,始终抢占优质资源,不利于实现 资源均衡。 另一方面,若具有第一优先级的第一业务在升级后立刻释放相关资源,其释放的 资源有可能被具有第二优先级的第二业务抢占,即使第二优先级低于第一优先级,第二业 务也不会立即释放相关资源,而此时,如果第一业务在升级后尚未启动,则会因为资源不足 而引起业务中断,严重时会危及业务的可用性。 例如,在分布式集群中,升级类操作伴随着业务的“先删除-再重建”的过程,在删 除过程中,业务所占用的资源会被释放,成为集群内的可用资源,此时,若有并发的其他业 务的创建类操作,则有可能资源被创建类操作抢占,导致升级滚动停止。 有鉴于此,需要设计一种新的集群资源的调度方法,以克服上述缺陷。
技术实现要素:
本公开实施例提供一种集群资源的调度方法,用以在集群系统中的各个业务之 间,实现资源合理分配,以及在业务升级后有效保障的业务可用性。 本公开实施例提供的具体技术方案如下: 第一方面,一种集群资源的调度方法,包括: 接收到业务请求时,确定所述业务请求的业务操作类型,以及确定对应所述业务 操作类型预设的时间维度优先级; 确定对应所述时间维度优先级设置的时间维度资源配置信息,其中,一个时间维 度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条件; 基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空闲资源; 调度所述目标空闲资源处理所述业务请求。 可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预 设的时间维度优先级,包括: 若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间 维度优先级为最低级; 若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间 维度优先级为最高级; 其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越 多。 可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间 维度限定条件,包括: 所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时 5 CN 111611074 A 说 明 书 3/11 页 长为空闲资源的被释放时间到当前时间的时长。 可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空 闲资源,包括: 在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲 资源,作为侯选空闲资源; 基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使 用需求的候选空闲资源,并确定所归属的业务服务器; 基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选 取出业务维度优先级最高的业务服务器,作为目标业务服务器; 将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。 可选的,进一步包括: 若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服 务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。 第二方面,一种集群资源的调度装置,包括: 第一处理单元,用于接收到业务请求时,确定所述业务请求的业务操作类型,以及 确定对应所述业务操作类型预设的时间维度优先级; 第二处理单元,用于确定对应所述时间维度优先级设置的时间维度资源配置信 息,其中,一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间维度限定条 件; 选取单元,用于基于述时间维度资源配置信息,在当前可使用的空闲资源中选取 目标空闲资源; 调度单元,用于调度所述目标空闲资源处理所述业务请求。 可选的,确定所述业务请求的业务操作类型,以及确定对应所述业务操作类型预 设的时间维度优先级时,所述第一处理单元用于: 若所述业务请求的业务操作类型为创建类操作,则确定所述业务请求对应的时间 维度优先级为最低级; 若所述业务请求的业务操作类型为升级类操作,则确定所述业务请求对应的时间 维度优先级为最高级; 其中,时间维度优先级越高,相应的时间维度资源配置信息所对应的空闲资源越 多。 可选的,所述一个时间维度资源配置信息中记录了可使用的空闲资源对应的时间 维度限定条件,包括: 所述时间维度资源配置信息中规定了空闲资源的已空闲时长范围,所述已空闲时 长为空闲资源的被释放时间到当前时间的时长。 可选的,基于述时间维度资源配置信息,在当前可使用的空闲资源中选取目标空 闲资源时,所述选取单元用于: 在当前可使用的空闲资源中,筛选出符合所述时间维度资源配置信息的各个空闲 资源,作为侯选空闲资源; 基于获得的各个候选空闲资源的大小及分布位置,筛选出符合所述业务请求的使 6 CN 111611074 A 说 明 书 4/11 页 用需求的候选空闲资源,并确定所归属的业务服务器; 基于确定的各个业务服务器的业务维度优先级,对各个业务服务器进行排序,选 取出业务维度优先级最高的业务服务器,作为目标业务服务器; 将所述目标业务服务器提供的候选空闲资源,确定为目标空闲资源。 可选的,所述选取单元进一步用于: 若存在两个及以上的业务服务器的业务维度优先级相同,则随机选取一个业务服 务器作为目标业务服务器,或者,采用轮询方式选取一个作为目标业务服务器。 第三方面,一种网络设备,包括: 存储器,用于存储可执行指令; 处理器,用于读取并执行所述存储器中存储的可执行指令,以实现上述第一方面 中任一项所述的方法。 第四方面,一种存储介质,当所述存储介质中的指令由处理器执行时,使得所述处 理器能够执行上述第一方面中任一项所述的方法。 综上所述,本公开实施例中,针对不同业务操作类型分别设置了不同的时间维度 优先级,以及针对不同的时间维度优先级分别设置了不同的时间维度资源配置信息,这样, 当接收到业务请求时,基于业务请求的业务操作类型,即可以确定相应的时间维度优先级, 从而进一定确定相应的时间维度资源配置信息中的时间维度限定条件,进而能够准确迅速 地选取并调度符合要求的目标空闲资源处理所述业务请求。 显然,采用上述技术方案,同一业务在流程的不同阶段具有不同的时间维度优先 级,从而可以在不同的范围内使用相应的空闲资源,这样,便在各个业务之间实现了资源的 合理分配,能够在保证资源被充分利用的前提下,为升级类操作预留出对应的资源而避免 被其他类操作抢占资源,保障了升级类操作的顺利进行,进而提升整个分布式集群内业务 的可用性与稳定性。 附图说明 图1为已有技术下集群系统架构示意图; 图2为本公开实施例中集群资源的分配流程图; 图3为本公开实施例中调度器实体架构示意图; 图4为本公开实施例中调度器逻辑架构示意图。