资源调度方法、资源调度装置和计算机可读存储介质制造方法及图纸

技术编号:21140588 阅读:22 留言:0更新日期:2019-05-18 05:01
本发明专利技术公开了一种资源调度方法、资源调度装置和非临时性计算机可读存储介质。资源调度方法包括:接收弹性伸缩服务发送的待扩张应用的业务扩张请求;根据业务扩张请求和应用的优先级确定待释放应用,待释放应用部署于待释放容器,待释放应用的优先级低于待扩张应用的优先级;克隆并保存待释放容器的容器信息;释放待释放容器的资源;发送资源释放消息至弹性伸缩服务以使弹性伸缩服务在释放资源后的待释放容器进行待扩张应用的业务扩张。如此,在最大限度地保证了优先级别较高的应用的稳定运行的同时,可以使得释放后的待释放应用在有资源空闲时恢复,从而更加彻底地保障弹性伸缩服务的进行。

Resource Scheduling Method, Resource Scheduling Device and Computer Readable Storage Media

【技术实现步骤摘要】
资源调度方法、资源调度装置和计算机可读存储介质
本专利技术涉及计算机
,具体涉及一种资源调度方法、资源调度装置和计算机可读存储介质。
技术介绍
相关技术的云计算平台一般包括弹性伸缩(AutoScaling)服务,也即是云计算平台根据用户的业务需求和策略,经济地自动调整弹性计算资源的管理服务。可以理解,弹性伸缩的扩张前提是必须有空余资源存在。然而,一些政企的专有云,服务器的数量是有限的且业务是分等级的。在一些场景下,例如某个重点业务在使用高峰时,可能所有资源都被使用且没有实例需要被回收,那么弹性伸缩的扩张就无法完成。而此时可能存在一些不重要的业务在运行,这些不重要的业务是可以收缩甚至停止以把资源提供给重点业务,但是当前的技术无法自动完成,必须人工进行。
技术实现思路
本专利技术的目的旨在至少在一定程度上解决上述的技术问题之一。为此,本专利技术的第一个目的在于提出一种资源调度方法。该方法在最大限度地保证了优先级别较高的应用的稳定运行的同时,可以使得释放后的待释放应用在有资源空闲时恢复,从而更加彻底地保障弹性伸缩服务的进行。本专利技术的第二个目的在于提出一种资源调度装置。本专利技术的第三个目的在于提出一种计算机可读存储介质。为达到上述目的,本专利技术第一方面实施例提出的资源调度方法,包括:接收弹性伸缩服务发送的待扩张应用的业务扩张请求;根据所述业务扩张请求和应用的优先级确定待释放应用,所述待释放应用部署于待释放容器,所述待释放应用的优先级低于所述待扩张应用的优先级;克隆并保存所述待释放容器的容器信息;释放所述待释放容器的资源;发送资源释放消息至所述弹性伸缩服务以使所述弹性伸缩服务在释放资源后的所述待释放容器进行所述待扩张应用的业务扩张。为达到上述目的,本专利技术第二方面实施例提出的资源调度装置,包括第一接收模块、第一确定模块、克隆模块、释放模块和第一发送模块,所述第一接收模块用于接收弹性伸缩服务发送的待扩张应用的业务扩张请求;所述第一确定模块用于根据所述业务扩张请求和应用的优先级确定待释放应用,所述待释放应用部署于待释放容器,所述待释放应用的优先级低于所述待扩张应用的优先级;所述克隆模块用于克隆并保存所述待释放容器的容器信息;所述释放模块用于释放所述待释放容器的资源;所述第一发送模块用于发送资源释放消息至所述弹性伸缩服务以使所述弹性伸缩服务在释放资源后的所述待释放容器进行所述待扩张应用的业务扩张。为达到上述目的,本专利技术第三方面实施例提出的非临时性计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术第一方面实施例所述的资源调度方法。本专利技术实施例的资源调度方法、资源调度装置和计算机可读存储介质,在根据优先级确定待释放应用后,克隆并保存待释放容器的容器信息,再释放待释放容器的资源以使待扩张应用进行业务扩张,在最大限度地保证了优先级别较高的应用的稳定运行的同时,可以使得释放后的待释放应用在有资源空闲时恢复,从而更加彻底地保障弹性伸缩服务的进行。本专利技术的实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实施方式的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:图1是根据本专利技术一个实施例的资源调度方法的流程示意图;图2是根据本专利技术另一个实施例的资源调度方法的流程示意图;图3是根据本专利技术又一个实施例的资源调度方法的流程示意图;图4是根据本专利技术再一个实施例的资源调度方法的流程示意图;图5是根据本专利技术另一个实施例的资源调度方法的流程示意图;图6是根据本专利技术又一个实施例的资源调度方法的流程示意图;图7是根据本专利技术再一个实施例的资源调度方法的流程示意图;图8是根据本专利技术另一个实施例的资源调度方法的流程示意图;图9是根据本专利技术一个实施例的资源调度装置的模块示意图;图10是根据本专利技术另一个实施例的资源调度装置的模块示意图;图11是根据本专利技术又一个实施例的资源调度装置的模块示意图;图12是根据本专利技术再一个实施例的资源调度装置的模块示意图;图13是根据本专利技术另一个实施例的资源调度装置的模块示意图;图14是根据本专利技术又一个实施例的资源调度装置的模块示意图;图15是根据本专利技术再一个实施例的资源调度装置的模块示意图。主要元件符号说明:资源调度装置1000、第一接收模块110、第一确定模块120、第一确定单元122、获取单元124、第二确定单元126、克隆模块130、释放模块140、第一发送模块150、缩减模块160、第二发送模块170、第二接收模块180、第一获取模块190、第三发送模块200、设置模块210、第二获取模块220、第二确定模块230和控制模块240。具体实施方式下面详细描述本专利技术的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。下面参考附图描述本专利技术实施例的资源调度方法、资源调度装置1000和计算机可读存储介质。首先,需要说明的是,弹性伸缩(AutoScaling)服务是云计算平台根据用户的业务需求和策略,经济地自动调整弹性计算资源的管理服务。目前对于弹性伸缩云的建设,一般有两种方式,一种是建设虚拟机云,另一种是建设容器云。在通过建设虚拟机云来建设弹性伸缩云的情况下,弹性伸缩在监控虚拟机集群,随时自动替换不健康的实例从而节省运维成本的同时,可以管理虚拟机集群,在高峰期自动增加云服务器(ElasticComputeService,ECS)实例,在业务回落时自动减少ECS实例,从而节省基础设施成本。弹性伸缩的具体功能包括:(1)动态伸缩模式:基于云监控性能指标(如CPU、内存利用率),自动增加或减少ECS实例;(2)定时伸缩模式:配置周期性任务,定时地增加或减少ECS实例,当周期性需求有所波动时,可同时配置动态伸缩模式以应付不可预期的变化;(3)固定数量模式:通过“最小实例数”属性,可以始终保持健康运行的ECS实例数量,自动替换不健康实例,以保证日常场景实时可用;(4)自动配置负载均衡(ServerLoadBalancer,SLB)和云数据库(RemoteDataServices,RDS):在增加或减少ECS实例时,自动向SLB实例添加或移除相应的ECS实例,且自动向RDS访问白名单添加或移出该ECS实例的互联网协议地址(InternetProtocolAddress,IP)。容器云建设有两种方式,一种是建设在虚拟机上,另一种是建设在物理机上。容器的建设管理业界同行的方案是kubernetes(K8S)和应用容器引擎(Docker),一般是作为DevOps平台存在,一方面管理物理资源,另一方面可以管理应用的开发部署。DevOps是开发(Development)和运营(Operations)的组合词,是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QualityAssurance)部门之间的沟通、协作与整合。无论是哪种容器云建设方案,当前业界具备的弹性伸缩的具体功能,与上述通过建设虚拟机云来建设弹性伸缩云的情况下的弹性伸缩的具体功本文档来自技高网...

【技术保护点】
1.一种资源调度方法,其特征在于,包括:接收弹性伸缩服务发送的待扩张应用的业务扩张请求;根据所述业务扩张请求和应用的优先级确定待释放应用,所述待释放应用部署于待释放容器,所述待释放应用的优先级低于所述待扩张应用的优先级;克隆并保存所述待释放容器的容器信息;释放所述待释放容器的资源;发送资源释放消息至所述弹性伸缩服务以使所述弹性伸缩服务在释放资源后的所述待释放容器进行所述待扩张应用的业务扩张。

【技术特征摘要】
1.一种资源调度方法,其特征在于,包括:接收弹性伸缩服务发送的待扩张应用的业务扩张请求;根据所述业务扩张请求和应用的优先级确定待释放应用,所述待释放应用部署于待释放容器,所述待释放应用的优先级低于所述待扩张应用的优先级;克隆并保存所述待释放容器的容器信息;释放所述待释放容器的资源;发送资源释放消息至所述弹性伸缩服务以使所述弹性伸缩服务在释放资源后的所述待释放容器进行所述待扩张应用的业务扩张。2.如权利要求1所述的资源调度方法,其特征在于,根据所述业务扩张请求和应用的优先级确定待释放应用,包括:根据应用的优先级和所述待扩张应用的优先级确定至少一个待选应用,所述待选应用的优先级低于所述待扩张应用的优先级;获取所述至少一个待选应用中的每个所述待选应用的实例的数量;在每个所述待选应用的实例的数量均大于零且均不大于预设数量时,确定所述至少一个待选应用中的其中一个为所述待释放应用。3.如权利要求2所述的资源调度方法,其特征在于,所述资源调度方法包括:在当前所述待选应用的实例的数量大于所述预设数量时,减少当前所述待选应用的实例的数量。4.如权利要求2所述的资源调度方法,其特征在于,所述资源调度方法包括:在每个所述待选应用的实例的数量均等于零时,发送无需处理消息至所述弹性伸缩服务以使所述弹性伸缩服务停止扩张所述待扩张应用的业务。5.如权利要求1所述的资源调度方法,其特征在于,所述资源调度方法包括:接收所述弹性伸缩服务发送的业务恢复请求并根据所述业务恢复请求确定待恢复应用;获取所述待恢复应用的恢复数据,所述恢复数据包括所述容器信息、所述容器信息的地址和所述待释放容器的服务进程信息;在获取到所述恢复数据时,发送服务回复消息至所述弹性伸缩服务以使所述弹性伸缩服务根据所述恢复数据恢复所述待恢复应用。6.如权利要求5所述的资源调度方法,其特征在于,在所述释放所述待释放容器的资源的步骤后,所述资源调度方法包括:在业务服务分级管理表中将所述待释放应用的实例的数量设置为零;接收所述弹性伸缩服务发送的业务恢复请求并根据业务恢复请求确定待恢复应用,包括:将所述业务服务分级管理表中实例的数量为零的应用确定为所述待恢复应用。7.如权利要求1所述的资源调度方法,其特征在于,在所述发送资源释放消息至所述弹性伸缩服务的步骤后,所述资源调度方法包括:获取所述弹性伸缩服务发送的资源情况消息;根据所述资源情况消息确定资源释放后的所述待释放容器是否满足所述待扩张应用的业务扩张需求;在资源释放后的所述待释放容器不满足所述待扩张应用的业务扩张需求时,进入所述根据所述业务扩张请求和所述待扩张应用的优先级确定待释放应用的步骤;在资源释放后的所述待释放容器满足所述待扩张应用的业务扩张需求时,不响应所述资源情况消息。8.一种资源调度装置,其特征在于,包括第一接收模块、第一确定模块、克隆模块、释放模块和第一发送模块,所述第一接收模块用于接收弹性伸缩服务发送的待扩张应用的业务扩张请求;所述第一确定模块用于根据所述业务扩张请求和应用的优...

【专利技术属性】
技术研发人员:曾雪明腾利民
申请(专利权)人:杭州数梦工场科技有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1