一种云平台上的资源伸缩方法和一种云平台的制作方法

文档序号:8266043阅读:541来源:国知局
一种云平台上的资源伸缩方法和一种云平台的制作方法
【技术领域】
[0001]本发明涉及信息技术领域,尤其涉及一种云平台上的资源伸缩方法和一种云平台O
【背景技术】
[0002]PaaS(platform as an service)是云计算领域的三大服务模式之一,是把云平台作为一种服务提供的商业模式。开发者开发各种各样的应用,来承载不同的业务,例如,可以开发一个Web应用来实现即时通信业务;同时,开发者可以将开发的应用部署到云平台,云平台为应用提供的运行环境和资源,例如实例、内存等,并且支持应用的多实例部署,以支持高并发的外部用户访问。
[0003]为了保证通过部署在云平台上的应用为用户提供服务时具有良好的用户体验,需要为应用分配较多系统资源,应用占用的系统资源越多,应用的运营成本越高。目前,通常利用自动扩容技术来为应用动态分配系统资源,使得在保证业务指标的前提下,提高云平台系统资源利用率,降低应用的运营成本。利用自动扩容技术来为应用动态分配系统资源是指,云平台实时收集应用的资源使用情况,例如应用的cpu占用率、内存占用率、应用的并发请求数等信息等信息,根据收集信息,实时调整为应用分配的系统资源。例如:如果CPU (Central Processing Unit)占用率超过80%,且持续I分钟,增加一个应用实例;如果CPU占用率低于20%,且持续I分钟,则减少一个应用实例,以降低应用的运营成本。
[0004]但在云平台业务流量突发的场景中,利用现有的自动扩容技术来动态调整应用的资源时,由于调整应用占用的系统资源量的过程需要一定时间,不能够快速实现应用占用的系统资源量的增加或减少,导致业务流量突发场景下部分业务无法处理,影响应用正常运行。

【发明内容】

[0005]本发明实施例提供一种云平台上的资源伸缩方法和一种云平台,用以实现为云平台上部署的应用动态分配资源,保证业务流量突发场景下应用能够正常运行。
[0006]第一方面,本发明实施例提供一种云平台上的资源伸缩方法,用于为云平台上部署的应用动态分配资源,其中,该应用用于承载相应的业务,以实现特定的业务功能,该方法包括:
[0007]在第一时刻,根据预测策略预测业务在第二时刻的业务指标的数值,以得到预测的业务指标数值,其中,预测策略用于指示业务指标数值的预测方式,第二时刻晚于第一时刻;
[0008]根据预测的业务指标数值,以及业务指标数值和应用所需资源量的映射关系,确定应用在第二时刻所需的资源量;
[0009]在第二时刻到来之前,将应用的资源量调整为应用在第二时刻所需的资源量。
[0010]结合第一方面,在第一种实现方式中,预测策略包括:基于历史数据的业务指标数值预测方式;
[0011]根据预测策略预测业务在第二时刻的业务指标的数值,包括:
[0012]获取业务在第一时刻之前的预设时间间隔内的业务指标的数值;
[0013]根据获取的数值,预测业务在第二时刻的业务指标的数值。
[0014]结合第一方面的第一种实现方式,在第一方面的第二种实现方式中,根据获取的数值,预测业务在第二时刻的业务指标的数值,包括:
[0015]根据获取的数值,确定业务在第一时刻之前的预设时间间隔内的业务指标数值的变化轨迹,根据变化轨迹,预测业务在第二时刻的业务指标的数值;
[0016]其中,预设时间间隔内包含相邻时刻第三时刻和第四时刻,变化轨迹指示业务在第三时刻的业务指标的数值与业务在第四时刻的业务指标的数值之间的大小关系,以及业务在第四时刻的业务指标的数值与业务在第三时刻的业务指标的数值相比增加或减少的数值。
[0017]结合第一方面,在第三种实现方式中,预测策略包括:基于指定时间的业务指标预测方式;
[0018]根据预测策略预测业务在第二时刻的业务指标的数值,包括:
[0019]获取业务在第一时刻之前的历史时刻的业务指标的数值,根据获取的数值预测业务在第二时刻的业务指标的数值;
[0020]其中,历史时刻中包含至少一个时刻,历史时刻中任一时刻与第二时刻之间的时间间隔为N个预设周期,N为正整数。
[0021]结合第一方面、第一方面的第一种至第三种实现方式,在第一方面的第四种实现方式中,业务的业务指标包括以下信息之一或组合:业务的并发请求数量、业务的访问流量、业务的超文本传输协议(Hyper Text Transfer Protocol,HTTP)请求数量以及业务的用户数量。
[0022]结合第一方面,在第五种实现方式中,将应用的资源量调整为应用在第二时刻所需的资源量,包括:
[0023]向云平台控制器发送指令,指令用于指示云平台控制器将应用的资源量调整为应用在第二时刻所需的资源量。
[0024]结合第一方面或第一方面的第五种实现方式,在第一方面的第六种实现方式中,应用的资源量包括以下信息之一或组合:应用部署的实例数目、应用的中央处理器CPU占用率、应用的内存占用率、应用的磁盘占用率以及应用占用的网络输入输出1设备吞吐量。
[0025]第一方面中,通过在第一时刻,根据预测策略预测业务在第二时刻的业务指标的数值,以得到预测的业务指标数值,然后根据预测的业务指标数值,以及业务指标数值和应用所需资源量的映射关系,确定应用在第二时刻所需的资源量,在第二时刻到来之前,将应用的资源量调整为应用在第二时刻所需的资源量,实现为云平台上部署的应用动态分配资源。第一方面中可以将业务流量突发时刻设置为第二时刻,因此,通过第一方面实现了在第二时刻到来之前云平台上部署的应用所需的资源量的动态调整,在保证高资源利用率的同时,保证业务流量突发场景下云平台上部署的应用分配的资源量能够维持应用进行正常业务运行。
[0026]第二方面,本发明实施例提供一种云平台上的资源伸缩方法,用于为云平台上部署的应用动态分配资源,其中,该应用用于承载相应的业务,以实现特定的业务功能,该方法包括:
[0027]在第一时刻,根据时刻与应用所需资源的映射关系,预测应用在第二时刻所需的资源量,其中,第二时刻晚于第一时刻;
[0028]在第二时刻到来之前,将应用的资源量调整为应用在第二时刻所需的资源量。
[0029]结合第二方面,在第一种实现方式中,时刻与应用所需资源量的映射关系是基于历史时刻与应用在历史时刻所需的资源量设置的。
[0030]结合第二方面,在第二种实现方式中,将应用的资源量调整为应用在第二时刻所需的资源量,包括:
[0031]向云平台控制器发送指令,指令用于指示云平台控制器将应用的资源量调整为应用在第二时刻所需的资源量。
[0032]结合第二方面或第二方面的第二种实现方式,在第二方面的第三种实现方式中,应用的资源量包括以下信息之一或组合:应用部署的实例数目、应用的中央处理器(Central Processing Unit,CPU)占用率、应用的内存占用率、应用的磁盘占用率以及应用占用的网络输入输出(In Out, 10)设备吞吐量。
[0033]第二方面中,通过在第一时刻,根据时刻与应用所需资源的映射关系,预测应用在第二时刻所需的资源量,然后在第二时刻到来之前,将应用的资源量调整为应用在第二时刻所需的资源量,实现为云平台上部署的应用动态分配资源。第二方面中可以将业务流量突发时刻设置为第二时刻,因此,通过第二方面实现了在第二时刻到来之前云平台上部署的应用所需的资源量的动态调整,在保证高资源利用率的同时,保证业务流量突发场景下云平台上部署的应用分配的资源量能够维持应用进行正常业务运行。
[0034]第三方面,本发明实施例提供一种云平台,用于为云平台上部署的应用动态分配资源,其中,该应用用于承载相应的业务,以实现特定的业务功能,该云平台包括:
[0035]收集模块,用于收集业务在第一时刻之前的业务指标的数值;
[0036]策略模块,用于配置业务指标数值和应用所需资源量的映射关系;
[0037]预测模块,用于在第一时刻,根据收集模块收集的业务在第一时刻之前的业务指标的数值,预测业务在第二时刻的业务指标的数值,以得到预测的业务指标数值,第二时刻晚于第一时刻;根据预测的业务指标数值,以及策略模块配置的业务指标数值和应用所需资源量的映射关系,确定应用在第二时刻所需的资源量;
[0038]执行模块,用于在第二时刻到来之前,将应用的资源量调整为预测模块确定的应用在第二时刻所需的资源量。
[0039]结合第三方面,在第一种实现方式中,收集模块,具体用于:
[0040]收集业务在第一时刻之前的预设时间间隔内的业务指标的数值。
[0041]结合第三方面的第一种实现方式,在第三方面的二种实现方式中,预测模块根据收集模块收集的业务在第一时刻之前的业务指标的数值,预测业务在第二时刻的业务指标的数值时,具体用于:
[0042]根据收集模块收集的业务在第一时刻之前的预设时间间隔内的业务指标的数值,确定业务在第一时刻之前的预设时间间隔内的业务指
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1