一种应用部署方法和装置的制造方法

文档序号:9921854阅读:236来源:国知局
一种应用部署方法和装置的制造方法
【技术领域】
[0001]本申请涉及网络技术,特别涉及一种应用部署方法和装置。
【背景技术】
[0002]随着云计算技术的发展,开发者开发的应用可以部署到云平台,由云平台为应用的运行提供资源,如实例、内存、处理器等。比如,开发者可以开发一个用于实现即时通信业务的Web应用,并将该应用程序包上传至云平台。相关技术中,在将应用程序上传至云平台之后,还需要由部署人员进行一些应用的部署工作,例如,部署人员可以在云平台为应用配置弹性资源伸缩策略,以使得随着应用负载的变化及时调整应用的资源占用,提高云平台的资源利用率。但是,这种由部署人员进行应用部署的手工配置方式,使得应用部署效率较低。

【发明内容】

[0003]有鉴于此,本申请提供一种应用部署方法和装置,以提高应用部署效率。
[0004]具体地,本申请是通过如下技术方案实现的:
[0005]第一方面,提供一种应用部署方法,包括:
[0006]接收对目标应用的应用部署请求,所述应用部署请求包括:应用配置文件,所述应用配置文件中包含所述目标应用在云平台的应用部署信息;
[0007]解析所述应用配置文件,获得所述应用部署信息;
[0008]根据所述应用部署信息,在云平台部署所述目标应用。
[0009]第二方面,提供一种应用部署装置,包括:
[0010]请求接收模块,用于接收对目标应用的应用部署请求,所述应用部署请求包括:应用配置文件,所述应用配置文件中包含所述目标应用在云平台的应用部署信息;
[0011 ]配置解析模块,用于解析所述应用配置文件,获得所述应用部署信息;
[0012]部署控制模块,用于根据所述应用部署信息,在云平台部署目标应用。
[0013]本申请提供的应用部署方法和装置,通过由云平台根据应用配置文件解析获得应用部署信息,并据此部署应用,相对于部署人员手工配置的方式,显著提高了应用部署的效率。
【附图说明】
[0014]图1是本申请一示例性实施例示出的一种云平台示意图;
[0015]图2是本申请一示例性实施例示出的一种应用部署方法的流程图;
[0016]图3是本申请一示例性实施例示出的一种应用部署装置的结构图。
【具体实施方式】
[0017]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0018]云平台可以为开发者开发的应用提供服务,开发者可以只需要开发用于承载某种业务的应用程序,并将该应用程序上传至云平台。云平台中包括各种丰富的资源,例如,处理器、内存等,可以将应用部署在云平台,由云平台为应用分配运行资源。应用在云平台的部署,可以包括:例如,为应用分配处理器、内存等资源,以及配置应用的资源弹性伸缩策略等,比如,当应用处于高访问量时,负载较大,此时可以扩展应用的资源,而当应用的访问量较低时,可以回收一些应用资源。
[0019]为了解决相关技术中在云平台部署应用时需要由部署人员手工配置导致的应用部署效率低的问题,本申请实施例提供了一种应用部署方法,可以由云平台自动执行应用的部署,以提高在云平台部署应用的效率。请参见图1,图1示例了一种云平台,在该云平台中可以设置用于执行本申请的应用部署方法的应用部署装置11,还包括平台资源12(如,内存、处理器等),当然云平台还可以包括其他组件,不再详述。在本例子中,应用部署装置11可以接收到应用部署请求,请求在云平台部署某个应用,那么应用部署装置11可以执行本申请的应用部署方法来实现应用的部署。
[0020]图2示例了本申请实施例的应用部署方法的流程,可以包括:
[0021 ]在步骤201中,接收对目标应用的应用部署请求,该应用部署请求包括:应用配置文件,应用配置文件中包含目标应用在云平台的应用部署信息。
[0022]例如,本例子中,可以将请求在云平台部署的应用称为“目标应用”,当开发者开发完成目标应用时,可以将该目标应用上传至云平台,此时可以认为云平台接收到对于该目标应用的应用部署请求。
[0023]其中,应用部署请求中包括的应用配置文件,主要可以包含用于在云平台部署目标应用时所需的一些信息,可以称为应用部署信息。在本例子中,并不限制该应用部署信息的内容,只要是应用部署相关的信息即可。示例性的,例如,该应用部署信息可以包括目标应用的资源需求信息,比如,需要的内存大小是xl,需要占用的磁盘大小是x2;又例如,该应用部署信息还可以包括目标应用的资源弹性伸缩策略信息,比如,当该应用的CPU占用率高于30 %时,增加两个应用实例,或者在CPU占用率低于10 %时,减少两个应用实例。其他例子不再详举。
[0024]示例性的,在本步骤中,应用配置文件可以和应用程序包一起打包上传至云平台。比如,开发者通常比较了解目标应用的应用场景和业务特点,能够很清楚该目标应用需要设置何种资源弹性伸缩策略或者应用所需资源,以一个高考分数查询应用为例,作为开发者,可以清楚在7月份和8月份该应用的访问量可能较大,因此可以设置对应这两个月的资源弹性伸缩策略,当应用负载较大时扩展应用资源。因此,应用配置文件可以由开发者可以在开发目标应用时,将应用配置文件也一并创建,或者当然也可以由其他人员在合适的时间创建,并将应用配置文件随着应用程序包一起上传至云平台,可选的,应用配置文件和应用程序包也可以分别上传。
[0025]在步骤202中,解析应用配置文件,获得应用部署信息。
[0026]本步骤中,云平台的应用部署装置在接收到应用配置文件后,对应用配置文件进行解析,得到其中包含的应用部署信息。比如,以应用配置文件包含的应用部署信息为目标应用的资源弹性伸缩策略信息为例,经过解析便可以得到该资源弹性伸缩策略信息的内容,例如,当该应用的CPU占用率高于30 %时,增加两个应用实例。
[0027]在步骤203中,根据应用部署信息,在云平台部署目标应用。
[0028]例如,应用部署装置在获得应用配置文件中的应用部署信息后,可以根据该信息在云平台部署应用。比如,若获知应用配置文件中的应用部署信息包括的目标应用资源需求是:所需的内存大小是xl,需要占用的磁盘大小是x2时,则可以据此为目标应用分配资源,比如,由云平台分配xl大小的内存和x2大小的磁盘给该目标应用。
[0029]本例子的应用部署方法,通过由云平台根据应用配置文件解析获得应用部署信息,并据此部署应用,相对于部署人员手工配置的方式,将显著提高应用部署的效率。
[0030]如下以向云平台部署目标应用的资源弹性伸缩策略为例,来说明本申请实施例中的应用配置文件的格式设置:资源弹性伸缩是提高云平台的资源利用率的一种方式,比如,在一定的高负荷阈值时,可以扩展应用的资源,包括增加应用实例的个数、内存、CPU(Central Processing Unit,处理器)、磁盘占用等;在一定的低负荷阈值时,可以回收应用的资源,包括减少应用实例的个数、内存、CPU、磁盘占用等。至于高负荷阈值、低负荷阈值等可以根据应用的业务特点和场景确定。
[0031]在本例子中,应用部署信息是资源弹性伸缩策略信息时,例如,可以包括如下一些参数:伸缩度量参数、对应所述伸缩度量参数的弹性动作阈值和弹性动作幅度限值、策略时间信息等。具体如下:
[0032]其中,伸缩度量参数:可以用于依据这些参数来决定是否对应用的资源进行扩展或回收。可以包括:文件描述符数量、线程/进程数量、应用访问请求数量、网络带宽使用量、处理器利用率、内存利用率等。在应用配置文件中,设置哪些伸缩度量参数,可以根据应用承载的业务的实际情况确定。
[0033]比如,当应用访问请求数量越多,或者内存利用率越多时,表明当前应用的负载较大,可以对应用扩展资源;或者当应用访问请求数量越少时,表示可以回收应用资源。因此,云平台可以根据伸缩度量参数,实时监控这些参数的状态,据此掌握应用的资源使用情况,并调整应用资源的分配。
[0034]对应伸缩度量参数的弹性动作阈值:上述的伸缩度量参数是作为是否扩展或回收资源的参考,但是具体何时进行资源的变动,还需要设置一个对应该伸缩度量参数的阈值。例如,当伸缩度量参数为内存利用率时,若设置当内存利用率高于30 %时,扩展一个应用实例,那么该30%就是对应该内存利用率的阈值,即当到达该阈值时才执行扩展或回收。
[0035]本例子中,将上述的扩展资源或回收资源可以称为弹性动作,那么上述阈值可以称为弹性动作阈值,比如,超过某个弹性动作阈值,可以执行弹性动作进行扩展或回收。在具体实施中,对于每个伸缩度量参数,设置的弹性动作阈值可以包括一个扩展阈值和一个回收阈值,超过扩展阈值时进行资源扩展,低于回收阈值时进行资源回收。
[0036]对应伸缩度量参数的弹性动作幅度限值:上面提到的弹性动作阈值,可以用于限定何种条件下开始执行弹性动作,而这里的弹性动作幅度限值可以用于限定在执行弹性动作时需要满足的条件,例如,在扩展资源时的扩展上限,在回收资源时的回收下限,或者单次扩展或回收的步进值等。
[0037]示例性的,当弹性动作为扩展应用的实例个数时,可以设置扩展实例的上限即最大实例个数是10个,以及减少实例的下限即最小实例个数是2个;并且还可以设置每次扩展时只能增加一个应用实例,即单次扩展的步进值是I。对于弹性动作可以同时设置上述的上限、下限及扩展步进值等。
[0038]策略时间信息:上述通过伸缩度量参数、弹性动作阈值和幅度限值,可以了解当某个伸缩度量参数达到怎样的弹性动作阈值时,开始执行弹性动作,并且可以根据幅度限值执行该弹性动作,而这里的策略时间信息可以用于限定何时执行上述的设置。比如,并不是任何一天都需要按照应用配置文件上的伸缩度量参数来执行弹性动作,根据应用的业务特点,可能只需要在一些特定的时间执行该弹性伸缩策略即可。
[0039]该策略时间信息可以设置年、月、日、时、分、秒及周几等方式,在应用配置文件中,可以用具体的数值表示上述的时间信息,或者用*表示任何时间;还可以按照时间段、时间点的方式配置时间,比如1-2可以表示I号和2号。当策略时间信息中包括了年、月、周几等多种类型的时间配置项时,各个时间配置项之间可以通过分隔符分割,比如用“,”分割。
[0040]上述
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1