应用系统的自动部署系统和自动部署方法

文档序号:7861901阅读:229来源:国知局
专利名称:应用系统的自动部署系统和自动部署方法
技术领域
本发明涉及云计算技术领域,具体而言,涉及一种应用系统的自动部署系统和一种应用系统的自动部署方法。
背景技术
云计算是一种基于互联网的计算新方式,通过互联网上异构、自治的服务为个人和企业用户提供按需即取的计算。云计算的出现在某种意义上剥离了软件与硬件之间的联系。虚拟化,则是云计算的基石。一个云计算的应用必定是基于虚拟化的。虚拟化是一个抽象层,它将物理硬件与操作系统分开,从而提供更高的IT资源利用率和灵活性。云计算的关键在于提供应用服务,也就是企业级的应用部署在云端。搭建应用系统的过程我们需要进行计算资源的分配,应用的部署。
然而在传统的方式下,需要手工进行计算资源的分配,也就是需要先创建虚拟机,预估一个资源分配给该虚拟机,然后上传应用,进行应用系统的部署,整个过程都需要人工的干预,操作上相对复杂,而且对计算资源的预估并不一定准确。因此,需要一种新的应用系统的自动部署技术,可以由云计算系统自动对应用系统实现部署,节省时间和人力资源,提高部署效率。

发明内容
本发明正是基于上述问题,提出了一种新的应用系统的自动部署技术,可以由云计算系统自动对应用系统实现部署,节省时间和人力资源,提高部署效率。有鉴于此,本发明提出了一种应用系统的自动部署系统,包括参数预定义单元,用于为不同的应用系统预定义对应的部署参数;参数获取单元,用于根据云计算系统当前需要部署的应用系统,确定对应的部署参数;自动部署单元,用于利用所述参数获取单元获取的部署参数,完成相应的部署工作。在该技术方案中,每个应用系统在进行部署时,需要不同的部署参数,若通过手动设置,则一方面费时费力,另一方面不一定能够准确地满足该应用系统的需求。因此,通过事先对每个应用系统进行测试,获取其实际所需的部署参数,然后根据当前所需部署的应用系统,直接获取对应的部署参数、完成部署即可,而不需要再进行实时的计算和分配等。在上述技术方案中,优选地,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。在该技术方案中,每个应用系统对应于不同的虚拟机模板和计算资源,通过预先测试和预定义,从而可以得到最准确的数值,以用于实际的部署过程中,避免人工干预的过程中,无法准确预估实际所需的计算资源,导致资源浪费或不足。在上述任一技术方案中,优选地,所述参数预定义单元还用于为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及所述参数获取单元还用于根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以由所述自动部署单元完成所述部署工作。在该技术方案中,在不同的负载情况下,应用系统所需的计算资源也存在差异,因而通过对其实际所需移动负载情况,选择对应的计算资源,从而进一步提升资源分配的准确性。在上述任一技术方案中,优选地,还包括级别预定义单元,用于为每个所述应用系统和计算资源分别预定义对应的级别;以及所述自动部署单元用于根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。在该技术方案中,对于重要级别的应用系统,可以分配更为优质的计算资源,而对于一般的应用系统,则可以分配一般的计算资源,从而实现资源更为合理的分配。在上述任一技术方案中,优选地,还包括资源计算单元,用于根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当前需要部署的应用系统的计算资源。 在该技术方案中,在现有资源有限的情况下,可以在当前需要部署的应用系统对应的计算资源的基础上进行适当的缩减实际分配的资源;在现有资源充足的情况下,为了避免应用系统运行过程中可能存在的过载情况,可以适当分配更多的计算资源。根据本发明的又一方面,还提出了一种应用系统的自动部署方法,包括步骤202,为不同的应用系统预定义对应的部署参数;步骤204,根据云计算系统当前需要部署的应用系统,确定对应的部署参数,以完成相应的部署工作。在该技术方案中,每个应用系统在进行部署时,需要不同的部署参数,若通过手动设置,则一方面费时费力,另一方面不一定能够准确地满足该应用系统的需求。因此,通过事先对每个应用系统进行测试,获取其实际所需的部署参数,然后根据当前所需部署的应用系统,直接获取对应的部署参数、完成部署即可,而不需要再进行实时的计算和分配等。在上述技术方案中,优选地,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。在该技术方案中,每个应用系统对应于不同的虚拟机模板和计算资源,通过预先测试和预定义,从而可以得到最准确的数值,以用于实际的部署过程中,避免人工干预的过程中,无法准确预估实际所需的计算资源,导致资源浪费或不足。在上述任一技术方案中,优选地,所述步骤202还包括为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及所述步骤204还包括根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以完成所述部署工作。在该技术方案中,在不同的负载情况下,应用系统所需的计算资源也存在差异,因而通过对其实际所需移动负载情况,选择对应的计算资源,从而进一步提升资源分配的准确性。在上述任一技术方案中,优选地,所述步骤202还包括为每个所述应用系统和计算资源分别预定义对应的级别;以及所述步骤204还包括根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。在该技术方案中,对于重要级别的应用系统,可以分配更为优质的计算资源,而对于一般的应用系统,则可以分配一般的计算资源,从而实现资源更为合理的分配。
在上述任一技术方案中,优选地,所述步骤204还包括根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当前需要部署的应用系统的计算资源。在该技术方案中,在现有资源有限的情况下,可以在当前需要部署的应用系统对应的计算资源的基础上进行适当的缩减实际分配的资源;在现有资源充足的情况下,为了避免应用系统运行过程中可能存在的过载情况,可以适当分配更多的计算资源。通过以上技术方案,可以由云计算系统自动对应用系统实现部署,节省时间和人力资源,提高部署效率。


图I示出了根据本发明的实施例的应用系统的自动部署系统的框图;图2示出了根据本发明的实施例的应用系统的自动部署方法的流程图; 图3示出了根据本发明的实施例的自动部署应用系统的具体流程图;图4示出了根据本发明的实施例的应用模板的示意图。
具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式
对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。图I示出了根据本发明的实施例的应用系统的自动部署系统的框图。如图I所示,根据本发明的实施例的应用系统的自动部署系统100,包括参数预定义单元102,用于为不同的应用系统预定义对应的部署参数;参数获取单元104,用于根据云计算系统当前需要部署的应用系统,确定对应的部署参数;自动部署单元106,用于利用所述参数获取单元获取的部署参数,完成相应的部署工作。在该技术方案中,每个应用系统在进行部署时,需要不同的部署参数,若通过手动设置,则一方面费时费力,另一方面不一定能够准确地满足该应用系统的需求。因此,通过事先对每个应用系统进行测试,获取其实际所需的部署参数,然后根据当前所需部署的应用系统,直接获取对应的部署参数、完成部署即可,而不需要再进行实时的计算和分配等。在上述技术方案中,优选地,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。在该技术方案中,每个应用系统对应于不同的虚拟机模板和计算资源,通过预先测试和预定义,从而可以得到最准确的数值,以用于实际的部署过程中,避免人工干预的过程中,无法准确预估实际所需的计算资源,导致资源浪费或不足。在上述任一技术方案中,优选地,所述参数预定义单元102还用于为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及所述参数获取单元104还用于根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以由所述自动部署单元106完成所述部署工作。在该技术方案中,在不同的负载情况下,应用系统所需的计算资源也存在差异,因而通过对其实际所需移动负载情况,选择对应的计算资源,从而进一步提升资源分配的准确性。在上述任一技术方案中,优选地,还包括级别预定义单元108,用于为每个所述应用系统和计算资源分别预定义对应的级别;以及所述自动部署单元106用于根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。在该技术方案中,对于重要级别的应用系统,可以分配更为优质的计算资源,而对于一般的应用系统,则可以分配一般的计算资源,从而实现资源更为合理的分配。在上述任一技术方案中,优选地,还包括资源计算单元110,用于根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当前需要部署的应用系统的计算资源。 在该技术方案中,在现有资源有限的情况下,可以在当前需要部署的应用系统对应的计算资源的基础上进行适当的缩减实际分配的资源;在现有资源充足的情况下,为了避免应用系统运行过程中可能存在的过载情况,可以适当分配更多的计算资源。图2示出了根据本发明的实施例的应用系统的自动部署方法的流程图。如图2所示,根据本发明的实施例的应用系统的自动部署方法,包括步骤202,为不同的应用系统预定义对应的部署参数;步骤204,根据云计算系统当前需要部署的应用系统,确定对应的部署参数,以完成相应的部署工作。在该技术方案中,每个应用系统在进行部署时,需要不同的部署参数,若通过手动设置,则一方面费时费力,另一方面不一定能够准确地满足该应用系统的需求。因此,通过事先对每个应用系统进行测试,获取其实际所需的部署参数,然后根据当前所需部署的应用系统,直接获取对应的部署参数、完成部署即可,而不需要再进行实时的计算和分配等。在上述技术方案中,优选地,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。在该技术方案中,每个应用系统对应于不同的虚拟机模板和计算资源,通过预先测试和预定义,从而可以得到最准确的数值,以用于实际的部署过程中,避免人工干预的过程中,无法准确预估实际所需的计算资源,导致资源浪费或不足。在上述任一技术方案中,优选地,所述步骤202还包括为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及所述步骤204还包括根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以完成所述部署工作。在该技术方案中,在不同的负载情况下,应用系统所需的计算资源也存在差异,因而通过对其实际所需移动负载情况,选择对应的计算资源,从而进一步提升资源分配的准确性。在上述任一技术方案中,优选地,所述步骤202还包括为每个所述应用系统和计算资源分别预定义对应的级别;以及所述步骤204还包括根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。在该技术方案中,对于重要级别的应用系统,可以分配更为优质的计算资源,而对于一般的应用系统,则可以分配一般的计算资源,从而实现资源更为合理的分配。在上述任一技术方案中,优选地,所述步骤204还包括根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当前需要部署的应用系统的计算资源。在该技术方案中,在现有资源有限的情况下,可以在当前需要部署的应用系统对应的计算资源的基础上进行适当的缩减实际分配的资源;在现有资源充足的情况下,为了避免应用系统运行过程中可能存在的过载情况,可以适当分配更多的计算资源。图3示出了根据本发明的实施例的自动部署应用系统的具体流程图。如图3所示,根据本发明的实施例的自动部署应用系统的具体流程如下步骤302,确定云计算系统需要部署的应用系统。
步骤304,选择对应于需要部署的应用系统的应用模板。当应用系统应用于不同的负载下时,其实际所需的计算资源也将发生变化,因而在该步骤中,选择的不同的应用模板实际上对应于不同的计算资源,具体地,如图4所示。图4示出了根据本发明的实施例的应用模板的示意图。为了确定不同负载下的应用系统所需的计算资源,可以通过负载测试的方式来确定。负载测试通常描述一种特定类型的压力测试——增加用户数量以对应用程序进行压力测试。通过负载测试,可以确定不同负载下的应用模型,例如某个应用模板,分别定义了最小,50人,100人和手动的应用模型,最小表示该应用运行所需最小的计算资源,比如具体确定为需要一个server,对应于2CPU和4G内存,50人则确定该应用需要2个server,4个CPU和8G内存,100人则确定该应用需要4个server,8个CPU和16G内存。步骤306,根据选定的应用模板以及对应的应用模型,自动分配计算资源。例如当选择50人的应用模型时,根据图4所示,所需要的计算资源为4CPU和SG内存,确定所需的计算资源后,需要从计算资源池中获取所需资源,创建虚拟机为该应用系统服务。同时,在具体的计算资源分配过程中,还可以引入应用系统的重要级别,如果应用系统为关键应用,可以分配优质资源给该应用,同理如果该应用为一般应用,可以分配普通的计算资源给该应用。步骤308,选择虚拟机模板。计算资源分配完成之后,将根据应用对应的虚拟机模板(镜像)进行虚拟机的自动创建。每一个应用系统都存在对应的虚拟机模板,当用户选定要创建某个应用系统时,便已经确定了使用哪个虚拟机模板进行虚拟机的创建,这样用户就不要关心虚拟机创建的过程,整个过程实现自动化。步骤310,自动完成部署。当计算资源已经准备好之后,也就是虚拟机都创建完成之后,可以通过执行自动部署程序完成整个应用的部署。当用户选定了应用模型之后,便已经知道了整个应用系统的结构,这样使得应用部署的自动化变为可能。当然,应用的自动部署需要该应用支持自动部署的方式。以上结合附图详细说明了本发明的技术方案,考虑到相关技术中需要手动部署应用系统,因此,本发明提供了一种应用系统的自动部署系统和一种应用系统的自动部署方法,可以由云计算系统自动对应用系统实现部署,节省时间和人力资源,提高部署效率。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含 在本发明的保护范围之内。
权利要求
1.一种应用系统的自动部署系统,其特征在于,包括 参数预定义单元,用于为不同的应用系统预定义对应的部署参数; 参数获取单元,用于根据云计算系统当前需要部署的应用系统,确定对应的部署参数; 自动部署单元,用于利用所述参数获取单元获取的部署参数,完成相应的部署工作。
2.根据权利要求I所述的应用系统的自动部署系统,其特征在于,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。
3.根据权利要求2所述的应用系统的自动部署系统,其特征在于,所述参数预定义单元还用于 为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及 所述参数获取单元还用于根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以由所述自动部署单元完成所述部署工作。
4.根据权利要求2或3所述的应用系统的自动部署系统,其特征在于,还包括 级别预定义单元,用于为每个所述应用系统和计算资源分别预定义对应的级别;以及所述自动部署单元用于根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。
5.根据权利要求2或3所述的应用系统的自动部署系统,其特征在于,还包括 资源计算单元,用于根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当前需要部署的应用系统的计算资源。
6.一种应用系统的自动部署方法,其特征在于,包括 步骤202,为不同的应用系统预定义对应的部署参数; 步骤204,根据云计算系统当前需要部署的应用系统,确定对应的部署参数,以完成相应的部署工作。
7.根据权利要求6所述的应用系统的自动部署方法,其特征在于,所述部署参数包括每个应用系统被部署时所需的虚拟机模板和计算资源。
8.根据权利要求7所述的应用系统的自动部署方法,其特征在于,所述步骤202还包括 为每个所述应用系统预定义至少一个应用模型,其中,每个应用模型对应于指定负载下所需的计算资源;以及所述步骤204还包括 根据所述当前需要部署的应用系统对应的负载情况,选择相应的应用模型,以完成所述部署工作。
9.根据权利要求7或8所述的应用系统的自动部署方法,其特征在于,所述步骤202还包括 为每个所述应用系统和计算资源分别预定义对应的级别;以及 所述步骤204还包括 根据所述当前需要部署的应用系统的级别,分配对应级别的计算资源,以完成所述部署工作。
10.根据权利要求7或8所述的应用系统的自动部署方法,其特征在于,所述步骤204还包括 根据所述当前需要部署的应用系统对应的计算资源、所述云计算系统中的现有资源,计算实际得到能够分配给所述当 前需要部署的应用系统的计算资源。
全文摘要
本发明提供了一种应用系统的自动部署系统,包括参数预定义单元,用于为不同的应用系统预定义对应的部署参数;参数获取单元,用于根据云计算系统当前需要部署的应用系统,确定对应的部署参数;自动部署单元,用于利用所述参数获取单元获取的部署参数,完成相应的部署工作。本发明还提出了一种应用系统的自动部署方法。通过本发明的技术方案,可以由云计算系统自动对应用系统实现部署,节省时间和人力资源,提高部署效率。
文档编号H04L29/08GK102915248SQ201210371568
公开日2013年2月6日 申请日期2012年9月28日 优先权日2012年9月28日
发明者陈杰 申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1