CN114528085A - 资源调度方法、装置、计算机设备、存储介质和程序产品 - Google Patents
资源调度方法、装置、计算机设备、存储介质和程序产品 Download PDFInfo
- Publication number
- CN114528085A CN114528085A CN202210158996.3A CN202210158996A CN114528085A CN 114528085 A CN114528085 A CN 114528085A CN 202210158996 A CN202210158996 A CN 202210158996A CN 114528085 A CN114528085 A CN 114528085A
- Authority
- CN
- China
- Prior art keywords
- cluster
- target
- resource
- scheduler
- 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/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
Abstract
本申请涉及一种资源调度方法、装置、计算机设备、存储介质和程序产品,属于大数据技术领域。所述方法用于集群管理平台中,集群管理平台部署于第一集群中,集群管理平台包括调度器、绑定控制器和部署控制器,集群管理平台用于管理多个第二集群,该方法包括:调度器获取待进行调度的资源模板;调度器根据资源模板从多个第二集群中确定目标集群;绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;部署控制器根据重写后的资源模板在目标集群中创建资源。采用本方法能够实现在多个集群中部署业务。
Description
技术领域
本申请涉及大数据技术领域,特别是涉及一种资源调度方法、装置、计算机设备、存储介质和程序产品。
背景技术
现有的kubernetes(简称:k8s)是一种开源的容器管理平台,k8s集群中部署有多个容器,容器中封装有功能程序,用于实现功能程序对应的业务。现有技术中,集群监控系统主要是针对单个k8s集群进行监控,这样会导致用户可以清晰的感知到每个k8s集群的存在,并且,在某个k8s集群出现宕机的情况下,其他正常运行的k8s集群无法继续运行出现宕机的k8s集群中的业务。基于上述问题,如何在多个k8s集群中的部署业务,已成为一个亟需解决的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种资源调度方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种资源调度方法,用于集群管理平台中,集群管理平台部署于第一集群中,集群管理平台包括调度器、绑定控制器和部署控制器,集群管理平台用于管理多个第二集群,该方法包括:调度器获取待进行调度的资源模板;调度器根据资源模板从多个第二集群中确定目标集群;绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;部署控制器根据重写后的资源模板在目标集群中创建资源。
在其中一个实施例中,调度器根据资源模板从多个第二集群中确定目标集群,包括:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在其中一个实施例中,该方法还包括:调度器根据资源模板创建绑定资源;调度器将目标集群写入绑定资源中。
在其中一个实施例中,绑定控制器按照目标重写策略对资源模板中的目标字段进行重写之前,该方法还包括:绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
在其中一个实施例中,该方法还包括:绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,部署控制器根据重写后的资源模板在目标集群中创建资源,包括:部署控制器根据工作资源在目标集群中创建资源。
在其中一个实施例中,部署控制器根据工作资源在目标集群中创建资源,包括:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
在其中一个实施例中,集群管理平台还包括对外服务节点和分布式键值数据库,调度器获取待进行调度的资源模板之前,该方法还包括:对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,调度器获取待进行调度的资源模板,包括:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
在其中一个实施例中,集群管理平台还包括分布式键值数据库,调度器获取待进行调度的资源模板之前,该方法还包括:在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,调度器获取待进行调度的资源模板,包括:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
在其中一个实施例中,该方法还包括:调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
第二方面,本申请还提供了一种资源调度装置,用于集群管理平台中,集群管理平台部署于第一集群中,集群管理平台包括调度器、绑定控制器和部署控制器,集群管理平台用于管理多个第二集群,该装置包括:获取模块,用于调度器获取待进行调度的资源模板;第一确定模块,用于调度器根据资源模板从多个第二集群中确定目标集群;重写模块,用于绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;第一创建模块,用于部署控制器根据重写后的资源模板在目标集群中创建资源。
在其中一个实施例中,该第一确定模块,具体用于:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在其中一个实施例中,该装置还包括:第二创建模块,用于调度器根据资源模板创建绑定资源;写入模块,用于调度器将目标集群写入绑定资源中。
在其中一个实施例中,该装置还包括:第二确定模块,用于绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
在其中一个实施例中,该装置还包括:第三创建模块,用于绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,第一创建模块,具体用于:部署控制器根据工作资源在目标集群中创建资源。
在其中一个实施例中,第一创建模块,具体用于:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
在其中一个实施例中,集群管理平台还包括对外服务节点和分布式键值数据库,该装置还包括:解析模块,用于对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;创建存储模块,用于集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,获取模块,具体用于:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
在其中一个实施例中,集群管理平台还包括分布式键值数据库,调度器获取待进行调度的资源模板之前,该装置还包括:第一删除模块,用于在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;第二删除模块,用于绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,获取模块,具体用于:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
在其中一个实施例中,该装置还包括:故障判断模块,用于调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
第三方面,本申请还提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行该计算机程序时实现上述第一方面任一项所述的方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项所述的方法的步骤。
第五方面,本申请还提供了一种计算机程序产品。该计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述第一方面任一项所述的方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,设置有集群管理平台,且集群管理平台部署于第一集群中,该集群管理平台用于管理多个第二集群,其中,集群管理平台包括调度器、绑定控制器和部署控制器。在本申请实施例中,首先,通过调度器获取待进行调度的资源模板;其次,调度器根据资源模板从多个第二集群中确定目标集群;再次,绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;最后,部署控制器根据重写后的资源模板在目标集群中创建资源。由此可见,第一集群通过集群管理平台,从多个第二集群中确定出了待进行业务部署的目标集群,并基于在目标集群中创建资源将业务部署于目标集群中,实现了在多个集群中部署业务,如此,本申请实施例提供了一种多集群的部署业务的方式。
附图说明
图1为本申请实施例提供的一种实施环境的示意图;
图2为本申请实施例提供的第一种资源调度方法的流程图;
图3为本申请实施例提供的一种创建资源的技术过程的流程图;
图4为本申请实施例提供的第一种获取待进行调度的资源模板的技术过程的流程图;
图5为本申请实施例提供的第二种获取待进行调度的资源模板的技术过程的流程图;
图6为本申请实施例提供的第二种资源调度方法的流程图;
图7为本申请实施例提供的第三种资源调度方法的流程图;
图8为本申请实施例提供的一种资源调度装置的框图;
图9为本申请实施例提供的另一种资源调度装置的框图;
图10为本申请实施例提供的一种计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
现有的kubernetes(简称:k8s)是一种开源的容器管理平台,k8s集群中部署有多个容器,容器中封装有功能程序,用于实现功能程序对应的业务。现有技术中,集群监控系统主要是针对单个k8s集群进行监控,这样会导致用户可以清晰的感知到每个k8s集群的存在,并且,在某个k8s集群出现宕机的情况下,其他正常运行的k8s集群无法继续运行出现宕机的k8s集群中的业务。基于上述问题,如何在多个k8s集群中的部署业务,已成为一个亟需解决的问题。
有鉴于此,本申请实施例提供了一种资源调度方法、装置、计算机设备、存储介质和程序产品,利用该资源调度方法能够实现在多个集群中部署业务。
请参见图1,其示出了本申请实施例提供的资源调度方法所涉及的实施环境的示意图。如图1所示,本申请实施例提供的资源调度方法的执行主体可以是集群管理平台,该集群管理平台部署于第一集群中,且该集群管理平台用于管理多个第二集群,第一集群和第二集群皆为k8s集群,其中,该集群管理平台包括对外服务节点、调度器、监视器、绑定控制器、部署控制器、集群控制器、策略控制器和分布式键值数据库。其中,外服务节点用于接收客户端发送的调度信息并对调度信息进行解析,以及用于调用第二集群中的子集群对外服务节点,并且,外服务节点能够处理任何原生的API调用请求,在原生资源的基础上,可以检查校验分发资源等自定义的资源类型,并将资源存储到分布式键值数据库中,等待后续的调度等操作;调度器用于周期性访问分布式键值数据库,并从多个第二集群中确定目标集群;绑定控制器用于对资源进行重写,以及用于将分布式键值数据库内的数据变化抽象成资源的更新,并结合相关分发资源进行调度分发操作;部署控制器用于在目标集群中创建资源。第二集群中包括子集群对外服务节点以及集群客户端,其中,集群客户端用于收集第二集群内的各种事件和监控数据,并将采集到的数据存储至第二集群中的分布式键值数据库中。
请参见图2,其示出了本申请实施例提供的第一种资源调度方法的流程图,该资源调度方法可以应用于集群管理平台中。如图2所示,该资源调度方法可以包括以下步骤:
步骤201、调度器获取待进行调度的资源模板。
可选的,调度器获取待进行调度的资源模板可以包括两种方式:第一种,调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板;第二种,在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。其中,分布式键值数据库是一种通常应用于分布式系统中存储数据的数据库。
步骤202、调度器根据资源模板从多个第二集群中确定目标集群。
可选的,调度器根据资源模板从多个第二集群中确定目标集群的流程可以包括:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。其中,第二集群的集群参数可以包括第二集群的属性参数和集群客户端监控到的监控数据等参数。
步骤203、绑定控制器按照目标重写策略对资源模板中的目标字段进行重写。
可选的,绑定控制器按照目标重写策略对资源模板中的目标字段进行重写之前可以进行的步骤为:绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。其中,预先设定的多个重写策略可以是第一集群和第二集群中本就含有的,也可以是开发人员在开发集群管理平台的情况下写入第一集群中的,对此本申请实施例不作限定,只要最终确定的目标重写策略能够对资源模板中的目标字段进行重写即可。可选的,覆盖策略(Override Policy)指定了资源模板在不同第二集群上的某些字段的替换值,比如有两个第二集群,一个华为云和一个阿里云,他们的镜像仓库地址是不一样的,可以通过配置覆盖策略进行全量替换。
步骤204、部署控制器根据重写后的资源模板在目标集群中创建资源。
在本申请实施例中,设置有集群管理平台,且集群管理平台部署于第一集群中,该集群管理平台用于管理多个第二集群,其中,集群管理平台包括调度器、绑定控制器和部署控制器。在本申请实施例中,首先,通过调度器获取待进行调度的资源模板;其次,调度器根据资源模板从多个第二集群中确定目标集群;再次,绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;最后,部署控制器根据重写后的资源模板在目标集群中创建资源。由此可见,第一集群通过集群管理平台,从多个第二集群中确定出了待进行业务部署的目标集群,并基于在目标集群中创建资源将业务部署于目标集群中,实现了在多个集群中部署业务,如此,本申请实施例提供了一种多集群的部署业务的方式。
在本申请其中一个实施例中,提供了一种创建工作资源的方式,可选的方式为:绑定控制器根据绑定资源和重写后的资源模板,创建工作资源。对应地,部署控制器根据重写后的资源模板在目标集群中创建资源,包括:部署控制器根据工作资源在目标集群中创建资源。
请参见图3,其示出了本申请的可选实施例提供的一种创建资源的技术过程。如图3所示,该创建资源的技术过程可以包括以下步骤:
步骤301、部署控制器从工作资源提取目标对象。
步骤302、部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
其中,集群客户端用于收集第二集群内的各种事件和监控数据,并将采集到的数据存储至第二集群中的分布式键值数据库中。
在本申请其中一个实施例中,提供了两种获取待进行调度的资源模板的技术过程。其中,第一种为调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板,第二种为调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
请参见图4,在本申请的可选实施例中提供了第一种获取待进行调度的资源模板的技术过程。如图4所示,该技术过程可以包括以下步骤:
步骤401、对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果。
步骤402、集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库。
步骤403、调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
其中,调度器与分布式键值数据库之间建立有长联系,因此,调度器与分布式键值数据库之间始终保持着联系。
请参见图5,在本申请的可选实施例中提供了第二种获取待进行调度的资源模板的技术过程。如图5所示,该技术过程可以包括以下步骤:
步骤501、在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除。
其中,调度器可以根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。可选的,集群客户端用于收集第二集群内的监控数据。
现有技术中,通常是以单个集群为最小维度进行监控,这样使得调度上统一的API形成了割裂,导致用户能够感知到多个第二集群的存在。而本申请实施例中,第一集群中的调度器可以根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障,也就是说,第一集群中可以对第二集群是否出现故障进行判断,如此,用户可以只感受到第一集群的存在,提高了监控的准确性。
步骤502、绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除。
步骤503、在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
请参见图6,其示出了本申请实施例提供的第二种资源调度方法的流程图,该资源调度方法可以应用于集群管理平台中。如图6所示,该资源调度方法可以包括以下步骤:
步骤601、对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果。
步骤602、集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库。
步骤603、调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
步骤604、调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略。
其中,分发策略包含确定目标集群以及为目标集群分配何种业务的逻辑。
步骤605、调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
步骤606、调度器根据资源模板创建绑定资源。
步骤607、调度器将目标集群写入绑定资源中。
步骤608、绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
步骤609、绑定控制器按照目标重写策略对资源模板中的目标字段进行重写。
步骤610、绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;
步骤611、部署控制器从工作资源提取目标对象;
步骤612、部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
现有技术中的多集群通常是通过定制化的API接口,将集群管理所需要的资源封装在原生的资源对象里,比如kubefed v2作为一种多集群管理方式是直接在Pod中增加了调度信息的相关字段,从而正确调度Pod到合适的集群和节点,其中,Pod是容器的集合。而本申请实施例,是在现有的第一集群中部署了集群管理平台,该第一集群作为k8s集群其本身具有原生API接口,并且,集群管理平台中包括的对外服务节点、调度器、监视器、绑定控制器、部署控制器、集群控制器、策略控制器和分布式键值数据库,都是k8s集群原本就包含的,因此,本申请实施例在通过第一集群管理多个第二集群的情况下,第一集群中的API接口仍然可以使用,提高了原生API接口的兼容性。
请参见图7,其示出了本申请实施例提供的第三种资源调度方法的流程图,该资源调度方法可以应用于集群管理平台中。如图7所示,该资源调度方法可以包括以下步骤:
步骤701、在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除。
步骤702、绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除。
步骤703、在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
步骤704、调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略。
步骤705、调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
步骤706、调度器根据资源模板创建绑定资源。
步骤707、调度器将目标集群写入绑定资源中。
步骤708、绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
步骤709、绑定控制器按照目标重写策略对资源模板中的目标字段进行重写。
步骤710、绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;
步骤711、部署控制器从工作资源提取目标对象;
步骤712、部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
现有技术中,多集群管理项目不支持在不同的集群内进行容器的迁移调度,当某个集群大面积宕机,无法将本集群上的容器调度到其他集群,也就是说,因为无法通过在各子集群之间分析资源的使用情况,很难找到适合的集群和节点进行重新迁移调度。而在本申请实施例中,在调度器监控到多个第二集群中的候选集群出现故障的情况下,调度器可以将存在故障的第二集群所对应的资源模板获取为待进行调度的资源模板,并基于该资源模板在目标集群中创建资源,以使得目标集群可以继续运行资源对应的业务,因此,本申请实施例可以对多个集群进行集中式操作和管理,以使得在某一集群出现故障的情况下,业务仍可以正常运行。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
请参见图8,其示出了本申请实施例提供的一种资源调度装置800的框图,该资源调度装置可以用于集群管理平台中,集群管理平台部署于第一集群中,集群管理平台包括调度器、绑定控制器和部署控制器,集群管理平台用于管理多个第二集群。如图8所示,该资源调度装置800包括获取模块801、第一确定模块802、重写模块803以及第一创建模块804。
其中,获取模块801,用于调度器获取待进行调度的资源模板;第一确定模块802,用于调度器根据资源模板从多个第二集群中确定目标集群;重写模块803,用于绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;第一创建模块804,用于部署控制器根据重写后的资源模板在目标集群中创建资源。
在其中一个实施例中,该第一确定模块802,具体用于:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在其中一个实施例中,第一创建模块804,具体用于:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
请参见图9,其示出了本申请实施例提供的另一种资源调度装置900的框图,该资源调度装置用于集群管理平台中,其中,集群管理平台除了包括调度器、绑定控制器和部署控制器之外,还包括对外服务节点和分布式键值数据库。资源调度装置900除了包括资源调度装置800的各模块外,还包括第二创建模块805、第二确定模块806、第三创建模块807、解析模块808、创建存储模块809、第一删除模块810、第二删除模块811以及故障判断模块812。
其中,第二创建模块805,用于调度器根据资源模板创建绑定资源;写入模块,用于调度器将目标集群写入绑定资源中;第二确定模块806,用于绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略;第三创建模块807,用于绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,第一创建模块804,具体用于:部署控制器根据工作资源在目标集群中创建资源;解析模块808,用于对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;创建存储模块809,用于集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,获取模块801,具体用于:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板;第一删除模块810,用于在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;第二删除模块811,用于绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,获取模块801,具体用于:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板;故障判断模块812,用于调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
本申请实施例提供的资源调度装置,可以实现上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
上述资源调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种资源调度方法。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本申请的一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:调度器获取待进行调度的资源模板;调度器根据资源模板从多个第二集群中确定目标集群;绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;部署控制器根据重写后的资源模板在目标集群中创建资源。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:调度器根据资源模板创建绑定资源;调度器将目标集群写入绑定资源中。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,部署控制器根据重写后的资源模板在目标集群中创建资源,包括:部署控制器根据工作资源在目标集群中创建资源。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
在本申请的一个实施例中,集群管理平台还包括对外服务节点和分布式键值数据库,该处理器执行计算机程序时还实现以下步骤:对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,调度器获取待进行调度的资源模板,包括:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,调度器获取待进行调度的资源模板,包括:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
在本申请的一个实施例中,该处理器执行计算机程序时还实现以下步骤:调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:调度器获取待进行调度的资源模板;调度器根据资源模板从多个第二集群中确定目标集群;绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;部署控制器根据重写后的资源模板在目标集群中创建资源。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据资源模板创建绑定资源;调度器将目标集群写入绑定资源中。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,部署控制器根据重写后的资源模板在目标集群中创建资源,包括:部署控制器根据工作资源在目标集群中创建资源。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
在本申请的一个实施例中,集群管理平台还包括对外服务节点和分布式键值数据库,计算机程序被处理器执行时还实现以下步骤:对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,调度器获取待进行调度的资源模板,包括:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,调度器获取待进行调度的资源模板,包括:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
本实施例提供的计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
在本申请的一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:调度器获取待进行调度的资源模板;调度器根据资源模板从多个第二集群中确定目标集群;绑定控制器按照目标重写策略对资源模板中的目标字段进行重写;部署控制器根据重写后的资源模板在目标集群中创建资源。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;调度器根据目标分发策略以及各第二集群的集群参数,确定目标集群。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据资源模板创建绑定资源;调度器将目标集群写入绑定资源中。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:绑定控制器根据资源模板的配置信息和目标集群的集群参数,从预先设定的多个重写策略中确定目标重写策略。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:绑定控制器根据绑定资源和重写后的资源模板,创建工作资源;对应地,部署控制器根据重写后的资源模板在目标集群中创建资源,包括:部署控制器根据工作资源在目标集群中创建资源。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:部署控制器从工作资源提取目标对象;部署控制器调用目标集群中的集群客户端,以使集群客户端根据目标对象在目标集群中创建资源。
在本申请的一个实施例中,集群管理平台还包括对外服务节点和分布式键值数据库,计算机程序被处理器执行时还实现以下步骤:对外服务节点接收客户端发送的调度信息,并对调度信息进行解析,得到解析结果;集群管理平台根据解析结果创建待进行调度的资源模板,并将创建的资源模板存储至分布式键值数据库;对应地,调度器获取待进行调度的资源模板,包括:调度器周期性地从分布式键值数据库中拉取待进行调度的资源模板。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:在调度器监控到多个第二集群中的候选集群出现故障后,将候选集群中部署的资源从分布式键值数据库删除;绑定控制器中监测到资源从分布式键值数据库删除后,将被删除的资源对应的绑定资源从分布式键值数据库删除;对应地,调度器获取待进行调度的资源模板,包括:在调度器监测到资源和资源所对应的绑定资源从分布式键值数据库中删除后,调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
在本申请的一个实施例中,计算机程序被处理器执行时还实现以下步骤:调度器根据各第二集群中的集群客户端上报的集群监控数据判断各第二集群是否出现故障。
本实施例提供的计算机程序产品,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (13)
1.一种资源调度方法,其特征在于,用于集群管理平台中,所述集群管理平台部署于第一集群中,所述集群管理平台包括调度器、绑定控制器和部署控制器,所述集群管理平台用于管理多个第二集群,所述方法包括:
所述调度器获取待进行调度的资源模板;
所述调度器根据所述资源模板从所述多个第二集群中确定目标集群;
所述绑定控制器按照目标重写策略对所述资源模板中的目标字段进行重写;
所述部署控制器根据重写后的资源模板在所述目标集群中创建资源。
2.根据权利要求1所述的方法,其特征在于,所述调度器根据所述资源模板从所述多个第二集群中确定目标集群,包括:
所述调度器根据所述资源模板中的配置信息从预先设定的多个分发策略中确定目标分发策略;
所述调度器根据所述目标分发策略以及各所述第二集群的集群参数,确定所述目标集群。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述调度器根据所述资源模板创建绑定资源;
所述调度器将所述目标集群写入所述绑定资源中。
4.根据权利要求3所述的方法,其特征在于,所述绑定控制器按照目标重写策略对所述资源模板中的目标字段进行重写之前,所述方法还包括:
所述绑定控制器根据所述资源模板的配置信息和所述目标集群的集群参数,从预先设定的多个重写策略中确定所述目标重写策略。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
所述绑定控制器根据所述绑定资源和所述重写后的资源模板,创建工作资源;
对应地,所述部署控制器根据重写后的资源模板在所述目标集群中创建资源,包括:
所述部署控制器根据所述工作资源在所述目标集群中创建资源。
6.根据权利要求5所述的方法,其特征在于,所述部署控制器根据所述工作资源在所述目标集群中创建资源,包括:
所述部署控制器从所述工作资源提取目标对象;
所述部署控制器调用所述目标集群中的集群客户端,以使所述集群客户端根据所述目标对象在所述目标集群中创建资源。
7.根据权利要求1至6任一所述的方法,其特征在于,所述集群管理平台还包括对外服务节点和分布式键值数据库,所述调度器获取待进行调度的资源模板之前,所述方法还包括:
所述对外服务节点接收客户端发送的调度信息,并对所述调度信息进行解析,得到解析结果;
所述集群管理平台根据所述解析结果创建待进行调度的资源模板,并将创建的资源模板存储至所述分布式键值数据库;
对应地,所述调度器获取待进行调度的资源模板,包括:
所述调度器周期性地从所述分布式键值数据库中拉取待进行调度的资源模板。
8.根据权利要求1至6任一所述的方法,其特征在于,所述集群管理平台还包括分布式键值数据库,所述调度器获取待进行调度的资源模板之前,所述方法还包括:
在所述调度器监控到所述多个第二集群中的候选集群出现故障后,将所述候选集群中部署的资源从所述分布式键值数据库删除;
所述绑定控制器中监测到资源从所述分布式键值数据库删除后,将被删除的资源对应的绑定资源从所述分布式键值数据库删除;
对应地,所述调度器获取待进行调度的资源模板,包括:
在所述调度器监测到资源和资源所对应的绑定资源从所述分布式键值数据库中删除后,所述调度器将被删除的资源所对应的资源模板获取为待进行调度的资源模板。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
所述调度器根据各所述第二集群中的集群客户端上报的集群监控数据判断各所述第二集群是否出现故障。
10.一种资源调度装置,其特征在于,用于集群管理平台中,所述集群管理平台部署于第一集群中,所述集群管理平台包括调度器、绑定控制器和部署控制器,所述集群管理平台用于管理多个第二集群,所述装置包括:
获取模块,用于所述调度器获取待进行调度的资源模板;
第一确定模块,用于所述调度器根据所述资源模板从所述多个第二集群中确定目标集群;
重写模块,用于所述绑定控制器按照目标重写策略对所述资源模板中的目标字段进行重写;
第一创建模块,用于所述部署控制器根据重写后的资源模板在所述目标集群中创建资源。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述的方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
13.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至9中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158996.3A CN114528085A (zh) | 2022-02-21 | 2022-02-21 | 资源调度方法、装置、计算机设备、存储介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210158996.3A CN114528085A (zh) | 2022-02-21 | 2022-02-21 | 资源调度方法、装置、计算机设备、存储介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114528085A true CN114528085A (zh) | 2022-05-24 |
Family
ID=81625561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210158996.3A Pending CN114528085A (zh) | 2022-02-21 | 2022-02-21 | 资源调度方法、装置、计算机设备、存储介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114528085A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115248826A (zh) * | 2022-09-21 | 2022-10-28 | 杭州悦数科技有限公司 | 一种大规模分布式图数据库集群运维管理的方法和系统 |
CN115964176A (zh) * | 2023-01-05 | 2023-04-14 | 海马云(天津)信息技术有限公司 | 云计算集群调度方法、电子设备和存储介质 |
CN116800819A (zh) * | 2023-07-06 | 2023-09-22 | 中电金信软件有限公司 | 集群资源调度方法、装置、计算机设备和存储介质 |
-
2022
- 2022-02-21 CN CN202210158996.3A patent/CN114528085A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115248826A (zh) * | 2022-09-21 | 2022-10-28 | 杭州悦数科技有限公司 | 一种大规模分布式图数据库集群运维管理的方法和系统 |
CN115964176A (zh) * | 2023-01-05 | 2023-04-14 | 海马云(天津)信息技术有限公司 | 云计算集群调度方法、电子设备和存储介质 |
CN115964176B (zh) * | 2023-01-05 | 2023-05-26 | 海马云(天津)信息技术有限公司 | 云计算集群调度方法、电子设备和存储介质 |
CN116800819A (zh) * | 2023-07-06 | 2023-09-22 | 中电金信软件有限公司 | 集群资源调度方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11226847B2 (en) | Implementing an application manifest in a node-specific manner using an intent-based orchestrator | |
US11086725B2 (en) | Orchestration of heterogeneous multi-role applications | |
CN114528085A (zh) | 资源调度方法、装置、计算机设备、存储介质和程序产品 | |
CN109120678B (zh) | 用于分布式存储系统的服务托管的方法和装置 | |
CN108768728B (zh) | 运维任务处理方法、装置、计算机设备和存储介质 | |
CN108845884B (zh) | 物理资源分配方法、装置、计算机设备和存储介质 | |
US11113158B2 (en) | Rolling back kubernetes applications | |
CN111966305A (zh) | 持久卷分配方法、装置、计算机设备和存储介质 | |
US11347684B2 (en) | Rolling back KUBERNETES applications including custom resources | |
CN109298868B (zh) | 测绘影像数据处理软件智能动态部署及卸载方法 | |
US20090013321A1 (en) | Managing virtual computers | |
CN111176818B (zh) | 分布式预测的方法、装置、系统、电子设备及存储介质 | |
CN112328170B (zh) | 一种云硬盘的扩容方法、装置、计算机设备和存储介质 | |
CN111143133A (zh) | 虚拟机备份方法和备份虚拟机恢复方法 | |
CN114443332B (zh) | 一种存储池的检测方法、装置、电子设备及存储介质 | |
CN112199178B (zh) | 一种基于轻量化容器的云服务动态调度方法及系统 | |
US11108638B1 (en) | Health monitoring of automatically deployed and managed network pipelines | |
CN113849266A (zh) | 多Kubernetes集群的业务部署方法及装置 | |
CN114356750A (zh) | 测试方法、装置、计算机设备和存储介质 | |
CN108111559B (zh) | 一种应用软件部署系统及方法 | |
CN109697112B (zh) | 分布式集约化一站式作业系统和实现方法 | |
CN113608838A (zh) | 应用镜像文件的部署方法、装置、计算机设备和存储介质 | |
CN116881012A (zh) | 一种容器应用垂直扩容方法、装置、设备及可读存储介质 | |
CN115134238B (zh) | 业务系统发布方法、装置、计算机设备和存储介质 | |
CN115080309A (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 |