应用托管方法及系统.pdf

上传人:a3 文档编号:4268532 上传时间:2018-09-13 格式:PDF 页数:13 大小:451.71KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110224362.5

申请日:

2011.08.05

公开号:

CN102916995A

公开日:

2013.02.06

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):H04L 29/08申请日:20110805|||公开

IPC分类号:

H04L29/08; G06F9/455

主分类号:

H04L29/08

申请人:

南京中兴新软件有限责任公司

发明人:

陈心哲

地址:

210012 江苏省南京市雨花台区紫荆花路68号

优先权:

专利代理机构:

北京康信知识产权代理有限责任公司 11240

代理人:

余刚;梁丽超

PDF下载: PDF下载
内容摘要

本发明提供了一种应用托管方法及系统,该方法包括:应用管理中心接收开发者上传的应用;应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机,其中,虚拟机由云管理平台所创建和管理;虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用。通过本发明,采用将应用部署在虚拟机上,应用部署过程和配置过程由自动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增加稳定性的效果。

权利要求书

权利要求书一种应用托管方法,其特征在于,包括:
应用管理中心接收开发者上传的应用;
所述应用管理中心生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机,其中,所述虚拟机由云管理平台所创建和管理;
所述虚拟机根据所述部署脚本和配置脚本在所述虚拟机上部署和配置所述应用。
根据权利要求1所述的方法,其特征在于,所述虚拟机根据所述部署脚本和配置脚本在所述虚拟机上部署和配置所述应用之后,还包括:
当用户需要访问所述应用提供的业务时,业务接入服务器将所述用户的访问请求路由至所述虚拟机;
所述虚拟机处理所述访问请求,并将处理结果经所述业务接入服务器返回至所述用户。
根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机之前还包括:
所述应用管理中心判断所述云管理平台管理的物理资源池中是否有空的虚拟机;
如果无,则所述应用管理中心通知所述云管理平台创建新的虚拟机。
根据权利要求2所述的方法,其特征在于,所述应用管理中心通知所述云管理平台创建新的虚拟机之后,还包括:
所述云管理平台选择与所述应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创建的虚拟机加入到所述物理资源池中。
根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机之前,还包括:
所述应用管理中心判断所述应用是否需要物理资源;
如果是,则根据上传所述应用时所预定的物理资源数量为所述应用分配物理资源,其中,所述物理资源至少包括以下之一:虚拟机、内存、CPU、存储器、网络带宽、数据库、分布式缓存、分布式数据库、分布式文件系统。
根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机包括:
所述应用管理中心从所述云管理平台所管理的物理资源池中选择与所述应用执行环境匹配的虚拟机;
所述应用管理中心生成所述应用的部署脚本和配置脚本并上传到所述虚拟机上。
根据权利要求1所述的方法,其特征在于,所述虚拟机根据所述部署脚本和配置脚本在所述虚拟想机上部署和配置所述应用之后,还包括:
所述应用管理中心将所述应用通知所述业务接入服务器,并上传所述应用的业务路由配置脚本至所述业务接入服务器;
所述业务接入服务器根据所述业务路由配置脚本配置所述应用的业务路由和二级域名解析;
所述业务接入服务器配置完成后,通知业务管理中心并上报所述应用部署状态。
根据权利要求2所述的方法,其特征在于,业务接入服务器将所述用户的访问请求路由至所述虚拟机之前,还包括:
所述业务接入服务器判断所述访问请求是否为有效请求;
如果否,则丢弃所述请求。
根据权利要求7所述的方法,其特征在于,业务接入服务器将所述用户的访问请求路由至所述虚拟机包括:
所述业务接入服务器对所述访问请求进行二级域名解析和业务路由解析;
所述业务接入服务器根据所述二级域名和所述业务路由的解析结果将所述请求路由至所述虚拟机。
一种应用托管系统,其特征在于,包括虚拟机、云管理平台和应用管理中心,其中
所述云管理平台,用于创建和管理所述虚拟机;
所述应用管理中心,用于接收开发者上传的应用,生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚本上传至所述虚拟机;
所述虚拟机,用于根据所述部署脚本和配置脚本在所述虚拟机上部署和配置所述应用。
根据权利要求10所述的系统,其特征在于,还包括:
业务接入服务器,用于当用户需要访问所述应用提供的业务时,将所述用户的访问请求路由至所述虚拟机。
根据权利要求10所述的系统,其特征在于,所述虚拟机还用于处理所述访问请求,并将处理结果经所述业务接入服务器返回至所述用户。
根据权利要求10所述的系统,其特征在于,还包括:
物理资源池,用于容纳所述虚拟机,所述物理资源池由所述云管理平台所管理。
根据权利要求11至13任一项所述的系统,其特征在于,所述业务接入服务器包括外网业务接入服务器和内网业务接入服务器。

说明书

说明书应用托管方法及系统
技术领域
本发明涉及云计算领域,具体而言,涉及一种云环境下的应用托管方法及系统。
背景技术
电信业务的多样化一直是个瓶颈,云平台代表了其中的一个发展趋势。通过搭建云平台,利用云计算技术,发挥运营商资源优势,降低开发者参与门槛和成本,聚集开发者创新力量,为用户提供海量、丰富、快速更新的个性化应用,实现运营商、开发者、用户多方共赢,打造全新的生态价值链,促进业务的多样性发展。
在云平台的开发模式中,开发者开发了大量的应用托管在电信营运商的虚拟机上,虚拟机可以根据访问量的大小和资源消耗情况进行动态伸缩,当有故障产生时可以动态迁移到其它虚拟机上;运行在虚拟机上的应用可以方便的调用由电信运营商提供的各种能力引擎(如短信能力,彩信能力等)和其它基础组件(如分布式数据库、分布式缓存、分布式文件系统等)。如此多的应用如何快速的托管在电信运营商的服务器上,对电信运营商的营运能力是个考验。
现有的方式应用主要部署在物理服务器上。具体方式是先准备好物理服务器,然后在物理服务器上部署应用、并对应用进行配置,如果应用要需要公网地址和域名,还需要为服务器配置公网IP和域名解析。这种方式基本上是人工操作,耗费大量的人力物力,工作效率很低。在云平台的开发模式,开发者开发应用的数量取决于吸引开发者的数量,开发出的应用数量众多,如果依靠传统的部署模式周期长,容易出错,显然无法解决云平台开发模式中产生的大量应用的快速部署和托管问题。
针对相关技术中不能适应云平台开发模式中大量应用快速部署和托管的要求的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种应用托管方法及系统,以至少解决上述云平台开发模式中大量应用快速部署和托管的问题。
根据本发明的一个方面,提供了一种应用托管方法,包括:应用管理中心接收开发者上传的应用;应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机,其中,虚拟机由云管理平台所创建和管理;虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用。
优选地,虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用之后,还包括:当用户需要访问应用提供的业务时,业务接入服务器将用户的访问请求路由至虚拟机;虚拟机处理访问请求,并将处理结果经业务接入服务器返回至用户。
优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机之前还包括:应用管理中心判断云管理平台管理的物理资源池中是否有空的虚拟机;如果无,则应用管理中心通知云管理平台创建新的虚拟机。
优选地,应用管理中心通知云管理平台创建新的虚拟机之后,还包括:云管理平台选择与应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创建的虚拟机加入到物理资源池中。
优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机之前,还包括:应用管理中心判断应用是否需要物理资源;如果是,则根据上传所述应用时所预定的物理资源数量为所述应用分配物理资源,其中,物理资源至少包括以下之一:虚拟机、内存、CPU、存储器、网络带宽、数据库、分布式缓存、分布式数据库、分布式文件系统。
优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机包括:应用管理中心从云管理平台所管理的物理资源池中选择与应用执行环境匹配的虚拟机;应用管理中心生成应用的部署脚本和配置脚本并上传到虚拟机上;虚拟机根据部署脚本和配置脚本部署和配置应用。
优选地,虚拟机根据部署脚本和配置脚本在虚拟想机上部署和配置应用之后,还包括:应用管理中心将应用通知业务接入服务器,并上传应用的业务路由配置脚本至业务接入服务器;业务接入服务器根据业务路由配置脚本配置应用的业务路由和二级域名解析;业务接入服务器配置完成后,通知业务管理中心并上报应用部署状态。
优选地,业务接入服务器将用户的访问请求路由至虚拟机之前,还包括:业务接入服务器判断访问请求是否为有效请求;如果否,则丢弃请求。
优选地,业务接入服务器将用户的访问请求路由至虚拟机包括:业务接入服务器对访问请求进行二级域名解析和业务路由解析;业务接入服务器根据二级域名和业务路由的解析结果将请求路由至虚拟机。
根据本发明的另一方面,提供了一种应用托管系统,包括:虚拟机、云管理平台和应用管理中心,其中,云管理平台,用于创建和管理虚拟机;应用管理中心,用于接收开发者上传的应用,生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机;虚拟机,用于根据部署脚本和配置脚本在虚拟机上部署和配置应用。
优选地,应用托管系统还包括:业务接入服务器,用于但用户需要访问应用提供的业务时,将用户的访问请求路由至虚拟机。
优选地,虚拟机还用于处理访问请求,并将处理结果经业务接入服务器返回至用户。
优选地,应用托管系统还包括:物理资源池,用于容纳虚拟机,物理资源池由云管理平台所管理。
优选地,业务接入服务器包括外网业务接入服务器和内网业务接入服务器。
通过本发明,采用将应用部署在虚拟机上,应用部署过程和配置过程由自动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增加稳定性的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例一的应用托管方法流程图;
图2是根据本发明实施例二的应用托管系统结构示意图;
图3是根据本发明实施例三的应用托管方法流程图;
图4是根据本发明实施例四的应用托管系统架构图;
图5是根据本发明实施例五的应用托管部署流程图;
图6是根据本发明实施例六的应用托管处理流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例一
图1是根据本发明实施例一的应用托管方法流程图。如图1所示,包括以下步骤:
步骤S102,应用管理中心接收开发者上传的应用。
步骤S104,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机,其中,虚拟机由云管理平台所创建和管理。
步骤S106,虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用。
在本实施例中,通过将应用部署在虚拟机上,以及应用部署过程和配置过程由自动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增加稳定性的效果。
其中,在步骤S104之前还包括:应用管理中心判断云管理平台管理的物理资源池中是否有空的虚拟机;如果无,则应用管理中心通知云管理平台创建新的虚拟机。云管理平台选择与应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创建的虚拟机加入到物理资源池中。
其中,在步骤S104之前,还包括:应用管理中心判断应用是否需要物理资源;如果是,则根据上传所述应用时所预定的物理资源数量为所述应用分配物理资源。物理资源包括数据库、分布式缓存、分布式数据库和分布式文件系统等。
其中,步骤S104包括:应用管理中心从云管理平台所管理的物理资源池中选择与应用执行环境匹配的虚拟机;应用管理中心生成应用的部署脚本和配置脚本并上传到虚拟机上;虚拟机根据部署脚本和配置脚本部署和配置应用。
其中,在步骤S106之后,还包括:应用管理中心将应用通知业务接入服务器,并上传应用的业务路由配置脚本至业务接入服务器;业务接入服务器根据业务路由配置脚本配置应用的业务路由和配置二级域名解析;业务接入服务器配置完成后,通知业务管理中心并上报应用部署状态。
其中,业务接入服务器包括外网业务接入服务器和内网业务接入服务器。
其中,在步骤S106之后,还包括:当用户需要访问应用提供的业务时,业务接入服务器将用户的访问请求路由至虚拟机;虚拟机处理访问请求,并将处理结果返回至用户。业务接入服务器将用户的访问请求路由至虚拟机之前,还包括:业务接入服务器判断访问请求是否为有效请求;如果否,则丢弃请求。业务接入服务器对访问请求进行二级域名解析和业务路由解析;业务接入服务器根据二级域名和业务路由的解析结果将请求路由至虚拟机。
在本实施例中,应用部署在虚拟机上而不是物理服务器上,实现部署服务器的自动生成,多个应用可以共用一个虚拟机,实现应用在执行环境级别的隔离。应用部署过程和配置由自动化脚本来实现,自动化脚本根据脚本模板自动生成并上传到虚拟机上,实现部署过程的自动化。域名解析和业务路由的配置自动生成,业务接入服务器收到用户请求后自动解析、路由到所需的虚拟机。业务接入服务器具有一级域名,为每个要访问的应用映射一个二级域名。二级域名解析前提是DNS服务器需要配置为支持泛域名解析。业务接入服务器通常做双机处理,公网和内部局域网分别部署业务接入服务器。
实施例二
图2是根据本发明实施例二的应用托管系统结构示意图。如图2所示,该应用托管系统包括:虚拟机10、云管理平台20和应用管理中心30。
其中,云管理平台20用于创建和管理虚拟机;应用管理中心30用于接收开发者上传的应用,生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机;虚拟机10用于根据部署脚本和配置脚本在虚拟机上部署和配置应用。
在本实施例中,通过将应用部署在虚拟机上,以及应用部署过程和配置过程由自动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增加稳定性的效果。
实施例三
图3是根据本发明实施例三的应用托管方法流程图。如图3所示,包括以下步骤:
步骤S302,用户根据规范开发好应用,提交到应用管理中心,开发者签约应用所需的资源,包括虚拟机资源、数据库资源和所需的分布式资源,如分布式缓存、分布式数据库和分布式文件系统等
步骤S304,管理员审核应用通过后,实施自动化部署。主要包括下述过程:初始化除虚拟机以外的其它资源,包括数据库资源和分布式资源等;生成自动化脚本,包括部署脚本,配置脚本和业务路由脚本;从云管理平台所管理的物理资源池中选择和应用执行环境相匹配的虚拟机,并上传部署脚本和配置脚本到该虚拟机上,执行应用部署过程和配置过程。
步骤S306,业务路由和二级域名解析配置并激活服务,主要包括上传业务路由脚本到业务接入服务器上,在不中断现有应用请求的前提下,让新的应用可以接收用户请求。
实施例四
图4是根据本发明实施例四的应用托管系统架构图。如图4所示,该应用托管系统包括:虚拟机10、云管理平台20、应用管理中心30、业务接入服务器40和物理资源池50。
其中,应用管理中心30,管理员通过应用管理中心30接收开发者提交的应用,生成自动化脚本,下达各种指令,监控应用部署情况。
云管理平台20,主要管理物理资源池50,负责虚拟机10的初始化、创建和销毁。为了能快速的创建虚拟机10,通常预先初始化一定数量的空的虚拟机。在空的虚拟机被使用后,补充新的虚拟机到物理资源池50中。
虚拟机10,应用运行的操作系统,虚拟机10由模板创建,模板中预置了应用的执行环境。不同的执行环境对应不同的模板,如JAVA应用使用具有JAVA执行环境的模板,PHP应用使用具有PHP执行环境的模板。
业务接入服务器40,负责域名解析和对业务请求进行路由。包括公网业务接入服务器和内网业务接入服务器。公网上的业务接入服务器同时具有局域网IP和互联网IP,互联网上的用户可直接访问。局域(内网)上的业务接入服务器只有局域网内可以访问,主要是电信的内部网元来访问,如收到用户的短信指令后通过业务接入服务器触发虚拟机上的某个业务。其中,业务接入服务器中的二级域名解析功能要求DNS服务器配置为支持泛域名解析,一般的DNS服务器均支持该功能。
在本实施例中,应用管理中心30接收到用户提交的应用后,根据脚本模板生成自动部署脚本、自动配置脚本、业务路由脚本,应用部署在云管理平台20所管理的虚拟机10上,业务接入服务器40负责将用户请求路由到应用所在的虚拟机10。
实施例五
图5是根据本发明实施例五的应用托管部署流程图。本实施例使用了实施四的应用托管系统架构,具体流程如图5所示,包括以下步骤:
步骤S502,开发人员根据开发规范在应用开发环境中开发应用,开发规范规定了应用的开发语言、遵循标准、开发框架和打包结构等,开发规范保证了开发出的应用能够正常的运行在虚拟上。
步骤S504,开发人员开发好应用后上传到应用管理中心,上传应用时需要填写应用基本信息、签约需要的物理资源(如应用需要多少虚拟机,CPU个数,多大内存和存储空间,以及是否需要数据库,是否需要使用分布式资源等),管理员审核应用是否符合规范并提交应用。
步骤S506,应用管理中心判断应用是否需要数据库或其它分布式资源,从应用上传包中提取数据库脚本初始化数据库,初始化分布式资源,包括分布式缓存、分布式数据库和分布式文件系统等。
步骤S508,应用管理中心判断云管理平台管理的物理资源池中是否有空的虚拟机。如果无空的虚拟机通知云管理平台创建新的虚拟机;如果有空的虚拟机则跳至步骤S512。
步骤S510,云管理平台选择和应用执行环境匹配的虚拟机模板创建新的虚拟机加入到物理资源池中。
步骤S512,应用管理中心从物理资源池中选择和应用执行环境匹配的待部署的虚拟机,并启动该虚拟机。
步骤S514,虚拟机启动后,应用管理中心生成部署脚本和配置脚本并上传到待部署的虚拟机上。
步骤S516,应用管理中心通知虚拟机调用上传的部署脚本下载应用部署包自动部署应用,应用部署完成后调用配置脚本配置应用。
步骤S518,应用管理中心根据应用类型决定通知外网业务接入服务器或者内网业务接入服务器,并上传业务路由配置脚本。
步骤S520,业务接入服务器配置业务路由。业务路由保存特定的URL字符串和提供服务的虚拟机的对应关系。如将http://www.test.com/s1对应到http://10.10.10.5/s1的服务地址。
步骤S522,业务接入服务器配置二级域名解析。如将http://s1.test.com解析为http://www.test.com/s1。
步骤S524,业务接入服务器配置完成后,通知业务管理中心并上报应用部署状态。
图6是根据本发明实施例六的应用托管处理流程图。
通过实施五的上述步骤,一个新的应用部署完成并对外提供服务。当有用户访问该应用时,业务接入服务器负载解析用户访问请求,将请求转向到真实的提供服务的虚拟机,并返回出来结果。具体处理流程如图6所示,包括以下步骤:
步骤S602,业务接入服务器接收到一个互联网用户访问请求,判断是否是无效请求,如果是无效请求,则执行步骤S604;如果是有效请求,则执行步骤S606。
步骤S604,丢弃该无效用户请求。
步骤S606,业务接入服务器做二级域名解析,假设用户访问请求为http://s1.test.com/test.jsp,将访问请求解析为http://www.test.com/s1/test.jsp。
步骤S608,业务接入服务器做业务路由解析,将http://www.test.com/s1/test.jsp路由到http://10.10.10.5/s1/test.jsp。
步骤S610,虚拟机10.10.10.5处理用户请求,解析test..jsp。
步骤S612,虚拟机经由业务接入服务器将处理结果返回给用户,用户就可以查看访问的页面。
在本发明的上述各实施例中,提供了一种解决云平台开发模式下大量应用托管的方案。与现有技术相比,使传统的手工模式能够自动化处理,节省了大量的人力成本,提高了效率和稳定性等。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

应用托管方法及系统.pdf_第1页
第1页 / 共13页
应用托管方法及系统.pdf_第2页
第2页 / 共13页
应用托管方法及系统.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《应用托管方法及系统.pdf》由会员分享,可在线阅读,更多相关《应用托管方法及系统.pdf(13页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102916995 A (43)申请公布日 2013.02.06 C N 1 0 2 9 1 6 9 9 5 A *CN102916995A* (21)申请号 201110224362.5 (22)申请日 2011.08.05 H04L 29/08(2006.01) G06F 9/455(2006.01) (71)申请人南京中兴新软件有限责任公司 地址 210012 江苏省南京市雨花台区紫荆花 路68号 (72)发明人陈心哲 (74)专利代理机构北京康信知识产权代理有限 责任公司 11240 代理人余刚 梁丽超 (54) 发明名称 应用托管方法及系统 (57) 摘要 。

2、本发明提供了一种应用托管方法及系统,该 方法包括:应用管理中心接收开发者上传的应 用;应用管理中心生成应用的部署脚本和配置脚 本,并将部署脚本和配置脚本上传至虚拟机,其 中,虚拟机由云管理平台所创建和管理;虚拟机 根据部署脚本和配置脚本在虚拟机上部署和配置 应用。通过本发明,采用将应用部署在虚拟机上, 应用部署过程和配置过程由自动化脚本来实现, 从而解决了大量应用快速部署和托管的问题,进 而达到了提高效率和增加稳定性的效果。 (51)Int.Cl. 权利要求书2页 说明书6页 附图4页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 6 页 附图 4 页。

3、 1/2页 2 1.一种应用托管方法,其特征在于,包括: 应用管理中心接收开发者上传的应用; 所述应用管理中心生成所述应用的部署脚本和配置脚本,并将所述部署脚本和配置脚 本上传至虚拟机,其中,所述虚拟机由云管理平台所创建和管理; 所述虚拟机根据所述部署脚本和配置脚本在所述虚拟机上部署和配置所述应用。 2.根据权利要求1所述的方法,其特征在于,所述虚拟机根据所述部署脚本和配置脚 本在所述虚拟机上部署和配置所述应用之后,还包括: 当用户需要访问所述应用提供的业务时,业务接入服务器将所述用户的访问请求路由 至所述虚拟机; 所述虚拟机处理所述访问请求,并将处理结果经所述业务接入服务器返回至所述用 户。。

4、 3.根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署 脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机之前还包括: 所述应用管理中心判断所述云管理平台管理的物理资源池中是否有空的虚拟机; 如果无,则所述应用管理中心通知所述云管理平台创建新的虚拟机。 4.根据权利要求2所述的方法,其特征在于,所述应用管理中心通知所述云管理平台 创建新的虚拟机之后,还包括: 所述云管理平台选择与所述应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创 建的虚拟机加入到所述物理资源池中。 5.根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署 脚本和配置脚本,并将。

5、所述部署脚本和配置脚本上传至虚拟机之前,还包括: 所述应用管理中心判断所述应用是否需要物理资源; 如果是,则根据上传所述应用时所预定的物理资源数量为所述应用分配物理资源,其 中,所述物理资源至少包括以下之一:虚拟机、内存、CPU、存储器、网络带宽、数据库、分布式 缓存、分布式数据库、分布式文件系统。 6.根据权利要求1所述的方法,其特征在于,所述应用管理中心生成所述应用的部署 脚本和配置脚本,并将所述部署脚本和配置脚本上传至虚拟机包括: 所述应用管理中心从所述云管理平台所管理的物理资源池中选择与所述应用执行环 境匹配的虚拟机; 所述应用管理中心生成所述应用的部署脚本和配置脚本并上传到所述虚拟机。

6、上。 7.根据权利要求1所述的方法,其特征在于,所述虚拟机根据所述部署脚本和配置脚 本在所述虚拟想机上部署和配置所述应用之后,还包括: 所述应用管理中心将所述应用通知所述业务接入服务器,并上传所述应用的业务路由 配置脚本至所述业务接入服务器; 所述业务接入服务器根据所述业务路由配置脚本配置所述应用的业务路由和二级域 名解析; 所述业务接入服务器配置完成后,通知业务管理中心并上报所述应用部署状态。 8.根据权利要求2所述的方法,其特征在于,业务接入服务器将所述用户的访问请求 路由至所述虚拟机之前,还包括: 权 利 要 求 书CN 102916995 A 2/2页 3 所述业务接入服务器判断所述访。

7、问请求是否为有效请求; 如果否,则丢弃所述请求。 9.根据权利要求7所述的方法,其特征在于,业务接入服务器将所述用户的访问请求 路由至所述虚拟机包括: 所述业务接入服务器对所述访问请求进行二级域名解析和业务路由解析; 所述业务接入服务器根据所述二级域名和所述业务路由的解析结果将所述请求路由 至所述虚拟机。 10.一种应用托管系统,其特征在于,包括虚拟机、云管理平台和应用管理中心,其中 所述云管理平台,用于创建和管理所述虚拟机; 所述应用管理中心,用于接收开发者上传的应用,生成所述应用的部署脚本和配置脚 本,并将所述部署脚本和配置脚本上传至所述虚拟机; 所述虚拟机,用于根据所述部署脚本和配置脚本。

8、在所述虚拟机上部署和配置所述应 用。 11.根据权利要求10所述的系统,其特征在于,还包括: 业务接入服务器,用于当用户需要访问所述应用提供的业务时,将所述用户的访问请 求路由至所述虚拟机。 12.根据权利要求10所述的系统,其特征在于,所述虚拟机还用于处理所述访问请求, 并将处理结果经所述业务接入服务器返回至所述用户。 13.根据权利要求10所述的系统,其特征在于,还包括: 物理资源池,用于容纳所述虚拟机,所述物理资源池由所述云管理平台所管理。 14.根据权利要求11至13任一项所述的系统,其特征在于,所述业务接入服务器包括 外网业务接入服务器和内网业务接入服务器。 权 利 要 求 书CN 。

9、102916995 A 1/6页 4 应用托管方法及系统 技术领域 0001 本发明涉及云计算领域,具体而言,涉及一种云环境下的应用托管方法及系统。 背景技术 0002 电信业务的多样化一直是个瓶颈,云平台代表了其中的一个发展趋势。通过搭建 云平台,利用云计算技术,发挥运营商资源优势,降低开发者参与门槛和成本,聚集开发者 创新力量,为用户提供海量、丰富、快速更新的个性化应用,实现运营商、开发者、用户多方 共赢,打造全新的生态价值链,促进业务的多样性发展。 0003 在云平台的开发模式中,开发者开发了大量的应用托管在电信营运商的虚拟机 上,虚拟机可以根据访问量的大小和资源消耗情况进行动态伸缩,当。

10、有故障产生时可以动 态迁移到其它虚拟机上;运行在虚拟机上的应用可以方便的调用由电信运营商提供的各种 能力引擎(如短信能力,彩信能力等)和其它基础组件(如分布式数据库、分布式缓存、分 布式文件系统等)。如此多的应用如何快速的托管在电信运营商的服务器上,对电信运营商 的营运能力是个考验。 0004 现有的方式应用主要部署在物理服务器上。具体方式是先准备好物理服务器,然 后在物理服务器上部署应用、并对应用进行配置,如果应用要需要公网地址和域名,还需要 为服务器配置公网IP和域名解析。这种方式基本上是人工操作,耗费大量的人力物力,工 作效率很低。在云平台的开发模式,开发者开发应用的数量取决于吸引开发者。

11、的数量,开发 出的应用数量众多,如果依靠传统的部署模式周期长,容易出错,显然无法解决云平台开发 模式中产生的大量应用的快速部署和托管问题。 0005 针对相关技术中不能适应云平台开发模式中大量应用快速部署和托管的要求的 问题,目前尚未提出有效的解决方案。 发明内容 0006 本发明的主要目的在于提供一种应用托管方法及系统,以至少解决上述云平台开 发模式中大量应用快速部署和托管的问题。 0007 根据本发明的一个方面,提供了一种应用托管方法,包括:应用管理中心接收开发 者上传的应用;应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本 上传至虚拟机,其中,虚拟机由云管理平台所创建和管。

12、理;虚拟机根据部署脚本和配置脚本 在虚拟机上部署和配置应用。 0008 优选地,虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用之后,还包 括:当用户需要访问应用提供的业务时,业务接入服务器将用户的访问请求路由至虚拟机; 虚拟机处理访问请求,并将处理结果经业务接入服务器返回至用户。 0009 优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚 本上传至虚拟机之前还包括:应用管理中心判断云管理平台管理的物理资源池中是否有空 的虚拟机;如果无,则应用管理中心通知云管理平台创建新的虚拟机。 说 明 书CN 102916995 A 2/6页 5 0010 优选地,应用管理中心通。

13、知云管理平台创建新的虚拟机之后,还包括:云管理平台 选择与应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创建的虚拟机加入到物理资 源池中。 0011 优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚 本上传至虚拟机之前,还包括:应用管理中心判断应用是否需要物理资源;如果是,则根据 上传所述应用时所预定的物理资源数量为所述应用分配物理资源,其中,物理资源至少包 括以下之一:虚拟机、内存、CPU、存储器、网络带宽、数据库、分布式缓存、分布式数据库、分 布式文件系统。 0012 优选地,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置脚 本上传至虚拟机包括:应用管。

14、理中心从云管理平台所管理的物理资源池中选择与应用执行 环境匹配的虚拟机;应用管理中心生成应用的部署脚本和配置脚本并上传到虚拟机上;虚 拟机根据部署脚本和配置脚本部署和配置应用。 0013 优选地,虚拟机根据部署脚本和配置脚本在虚拟想机上部署和配置应用之后,还 包括:应用管理中心将应用通知业务接入服务器,并上传应用的业务路由配置脚本至业务 接入服务器;业务接入服务器根据业务路由配置脚本配置应用的业务路由和二级域名解 析;业务接入服务器配置完成后,通知业务管理中心并上报应用部署状态。 0014 优选地,业务接入服务器将用户的访问请求路由至虚拟机之前,还包括:业务接入 服务器判断访问请求是否为有效请。

15、求;如果否,则丢弃请求。 0015 优选地,业务接入服务器将用户的访问请求路由至虚拟机包括:业务接入服务器 对访问请求进行二级域名解析和业务路由解析;业务接入服务器根据二级域名和业务路由 的解析结果将请求路由至虚拟机。 0016 根据本发明的另一方面,提供了一种应用托管系统,包括:虚拟机、云管理平台和 应用管理中心,其中,云管理平台,用于创建和管理虚拟机;应用管理中心,用于接收开发者 上传的应用,生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机;虚 拟机,用于根据部署脚本和配置脚本在虚拟机上部署和配置应用。 0017 优选地,应用托管系统还包括:业务接入服务器,用于但用户需要访。

16、问应用提供的 业务时,将用户的访问请求路由至虚拟机。 0018 优选地,虚拟机还用于处理访问请求,并将处理结果经业务接入服务器返回至用 户。 0019 优选地,应用托管系统还包括:物理资源池,用于容纳虚拟机,物理资源池由云管 理平台所管理。 0020 优选地,业务接入服务器包括外网业务接入服务器和内网业务接入服务器。 0021 通过本发明,采用将应用部署在虚拟机上,应用部署过程和配置过程由自动化脚 本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增加稳定 性的效果。 附图说明 0022 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施。

17、例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中: 说 明 书CN 102916995 A 3/6页 6 0023 图1是根据本发明实施例一的应用托管方法流程图; 0024 图2是根据本发明实施例二的应用托管系统结构示意图; 0025 图3是根据本发明实施例三的应用托管方法流程图; 0026 图4是根据本发明实施例四的应用托管系统架构图; 0027 图5是根据本发明实施例五的应用托管部署流程图; 0028 图6是根据本发明实施例六的应用托管处理流程图。 具体实施方式 0029 下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例。

18、中的特征可以相互组合。 0030 实施例一 0031 图1是根据本发明实施例一的应用托管方法流程图。如图1所示,包括以下步骤: 0032 步骤S102,应用管理中心接收开发者上传的应用。 0033 步骤S104,应用管理中心生成应用的部署脚本和配置脚本,并将部署脚本和配置 脚本上传至虚拟机,其中,虚拟机由云管理平台所创建和管理。 0034 步骤S106,虚拟机根据部署脚本和配置脚本在虚拟机上部署和配置应用。 0035 在本实施例中,通过将应用部署在虚拟机上,以及应用部署过程和配置过程由自 动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增 加稳定性的效果。 0036。

19、 其中,在步骤S104之前还包括:应用管理中心判断云管理平台管理的物理资源池 中是否有空的虚拟机;如果无,则应用管理中心通知云管理平台创建新的虚拟机。云管理平 台选择与应用执行环境匹配的虚拟机模板创建新的虚拟机,并将创建的虚拟机加入到物理 资源池中。 0037 其中,在步骤S104之前,还包括:应用管理中心判断应用是否需要物理资源;如果 是,则根据上传所述应用时所预定的物理资源数量为所述应用分配物理资源。物理资源包 括数据库、分布式缓存、分布式数据库和分布式文件系统等。 0038 其中,步骤S104包括:应用管理中心从云管理平台所管理的物理资源池中选择与 应用执行环境匹配的虚拟机;应用管理中心。

20、生成应用的部署脚本和配置脚本并上传到虚拟 机上;虚拟机根据部署脚本和配置脚本部署和配置应用。 0039 其中,在步骤S106之后,还包括:应用管理中心将应用通知业务接入服务器,并上 传应用的业务路由配置脚本至业务接入服务器;业务接入服务器根据业务路由配置脚本配 置应用的业务路由和配置二级域名解析;业务接入服务器配置完成后,通知业务管理中心 并上报应用部署状态。 0040 其中,业务接入服务器包括外网业务接入服务器和内网业务接入服务器。 0041 其中,在步骤S106之后,还包括:当用户需要访问应用提供的业务时,业务接入服 务器将用户的访问请求路由至虚拟机;虚拟机处理访问请求,并将处理结果返回至。

21、用户。业 务接入服务器将用户的访问请求路由至虚拟机之前,还包括:业务接入服务器判断访问请 求是否为有效请求;如果否,则丢弃请求。业务接入服务器对访问请求进行二级域名解析 和业务路由解析;业务接入服务器根据二级域名和业务路由的解析结果将请求路由至虚拟 说 明 书CN 102916995 A 4/6页 7 机。 0042 在本实施例中,应用部署在虚拟机上而不是物理服务器上,实现部署服务器的自 动生成,多个应用可以共用一个虚拟机,实现应用在执行环境级别的隔离。应用部署过程和 配置由自动化脚本来实现,自动化脚本根据脚本模板自动生成并上传到虚拟机上,实现部 署过程的自动化。域名解析和业务路由的配置自动生。

22、成,业务接入服务器收到用户请求后 自动解析、路由到所需的虚拟机。业务接入服务器具有一级域名,为每个要访问的应用映射 一个二级域名。二级域名解析前提是DNS服务器需要配置为支持泛域名解析。业务接入服 务器通常做双机处理,公网和内部局域网分别部署业务接入服务器。 0043 实施例二 0044 图2是根据本发明实施例二的应用托管系统结构示意图。如图2所示,该应用托 管系统包括:虚拟机10、云管理平台20和应用管理中心30。 0045 其中,云管理平台20用于创建和管理虚拟机;应用管理中心30用于接收开发者上 传的应用,生成应用的部署脚本和配置脚本,并将部署脚本和配置脚本上传至虚拟机;虚拟 机10用于。

23、根据部署脚本和配置脚本在虚拟机上部署和配置应用。 0046 在本实施例中,通过将应用部署在虚拟机上,以及应用部署过程和配置过程由自 动化脚本来实现,从而解决了大量应用快速部署和托管的问题,进而达到了提高效率和增 加稳定性的效果。 0047 实施例三 0048 图3是根据本发明实施例三的应用托管方法流程图。如图3所示,包括以下步骤: 0049 步骤S302,用户根据规范开发好应用,提交到应用管理中心,开发者签约应用所需 的资源,包括虚拟机资源、数据库资源和所需的分布式资源,如分布式缓存、分布式数据库 和分布式文件系统等 0050 步骤S304,管理员审核应用通过后,实施自动化部署。主要包括下述过。

24、程:初始化 除虚拟机以外的其它资源,包括数据库资源和分布式资源等;生成自动化脚本,包括部署脚 本,配置脚本和业务路由脚本;从云管理平台所管理的物理资源池中选择和应用执行环境 相匹配的虚拟机,并上传部署脚本和配置脚本到该虚拟机上,执行应用部署过程和配置过 程。 0051 步骤S306,业务路由和二级域名解析配置并激活服务,主要包括上传业务路由脚 本到业务接入服务器上,在不中断现有应用请求的前提下,让新的应用可以接收用户请求。 0052 实施例四 0053 图4是根据本发明实施例四的应用托管系统架构图。如图4所示,该应用托管系 统包括:虚拟机10、云管理平台20、应用管理中心30、业务接入服务器4。

25、0和物理资源池50。 0054 其中,应用管理中心30,管理员通过应用管理中心30接收开发者提交的应用,生 成自动化脚本,下达各种指令,监控应用部署情况。 0055 云管理平台20,主要管理物理资源池50,负责虚拟机10的初始化、创建和销毁。为 了能快速的创建虚拟机10,通常预先初始化一定数量的空的虚拟机。在空的虚拟机被使用 后,补充新的虚拟机到物理资源池50中。 0056 虚拟机10,应用运行的操作系统,虚拟机10由模板创建,模板中预置了应用的执 行环境。不同的执行环境对应不同的模板,如JAVA应用使用具有JAVA执行环境的模板,PHP 说 明 书CN 102916995 A 5/6页 8 。

26、应用使用具有PHP执行环境的模板。 0057 业务接入服务器40,负责域名解析和对业务请求进行路由。包括公网业务接入服 务器和内网业务接入服务器。公网上的业务接入服务器同时具有局域网IP和互联网IP,互 联网上的用户可直接访问。局域(内网)上的业务接入服务器只有局域网内可以访问,主 要是电信的内部网元来访问,如收到用户的短信指令后通过业务接入服务器触发虚拟机上 的某个业务。其中,业务接入服务器中的二级域名解析功能要求DNS服务器配置为支持泛 域名解析,一般的DNS服务器均支持该功能。 0058 在本实施例中,应用管理中心30接收到用户提交的应用后,根据脚本模板生成自 动部署脚本、自动配置脚本、。

27、业务路由脚本,应用部署在云管理平台20所管理的虚拟机10 上,业务接入服务器40负责将用户请求路由到应用所在的虚拟机10。 0059 实施例五 0060 图5是根据本发明实施例五的应用托管部署流程图。本实施例使用了实施四的应 用托管系统架构,具体流程如图5所示,包括以下步骤: 0061 步骤S502,开发人员根据开发规范在应用开发环境中开发应用,开发规范规定了 应用的开发语言、遵循标准、开发框架和打包结构等,开发规范保证了开发出的应用能够正 常的运行在虚拟上。 0062 步骤S504,开发人员开发好应用后上传到应用管理中心,上传应用时需要填写应 用基本信息、签约需要的物理资源(如应用需要多少虚。

28、拟机,CPU个数,多大内存和存储空 间,以及是否需要数据库,是否需要使用分布式资源等),管理员审核应用是否符合规范并 提交应用。 0063 步骤S506,应用管理中心判断应用是否需要数据库或其它分布式资源,从应用上 传包中提取数据库脚本初始化数据库,初始化分布式资源,包括分布式缓存、分布式数据库 和分布式文件系统等。 0064 步骤S508,应用管理中心判断云管理平台管理的物理资源池中是否有空的虚拟 机。如果无空的虚拟机通知云管理平台创建新的虚拟机;如果有空的虚拟机则跳至步骤 S512。 0065 步骤S510,云管理平台选择和应用执行环境匹配的虚拟机模板创建新的虚拟机加 入到物理资源池中。 。

29、0066 步骤S512,应用管理中心从物理资源池中选择和应用执行环境匹配的待部署的虚 拟机,并启动该虚拟机。 0067 步骤S514,虚拟机启动后,应用管理中心生成部署脚本和配置脚本并上传到待部 署的虚拟机上。 0068 步骤S516,应用管理中心通知虚拟机调用上传的部署脚本下载应用部署包自动部 署应用,应用部署完成后调用配置脚本配置应用。 0069 步骤S518,应用管理中心根据应用类型决定通知外网业务接入服务器或者内网业 务接入服务器,并上传业务路由配置脚本。 0070 步骤S520,业务接入服务器配置业务路由。业务路由保存特定的URL字符串和提 供服务的虚拟机的对应关系。如将http:/。

30、 s1的服务地址。 说 明 书CN 102916995 A 6/6页 9 0071 步骤S522,业务接入服务器配置二级域名解析。如将http:/解析为 http:/ 0072 步骤S524,业务接入服务器配置完成后,通知业务管理中心并上报应用部署状态。 0073 图6是根据本发明实施例六的应用托管处理流程图。 0074 通过实施五的上述步骤,一个新的应用部署完成并对外提供服务。当有用户访问 该应用时,业务接入服务器负载解析用户访问请求,将请求转向到真实的提供服务的虚拟 机,并返回出来结果。具体处理流程如图6所示,包括以下步骤: 0075 步骤S602,业务接入服务器接收到一个互联网用户访问请。

31、求,判断是否是无效请 求,如果是无效请求,则执行步骤S604;如果是有效请求,则执行步骤S606。 0076 步骤S604,丢弃该无效用户请求。 0077 步骤S606,业务接入服务器做二级域名解析,假设用户访问请求为http:/ 0078 步骤S608,业务接入服务器做业务路由解析,将http:/ jsp路由到http:/10.10.10.5/s1/test.jsp。 0079 步骤S610,虚拟机10.10.10.5处理用户请求,解析testjsp。 0080 步骤S612,虚拟机经由业务接入服务器将处理结果返回给用户,用户就可以查看 访问的页面。 0081 在本发明的上述各实施例中,提。

32、供了一种解决云平台开发模式下大量应用托管的 方案。与现有技术相比,使传统的手工模式能够自动化处理,节省了大量的人力成本,提高 了效率和稳定性等。 0082 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或 步骤制作成单个集成电路模块来实现。这样,本发明不限。

33、制于任何特定的硬件和软件结合。 0083 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。 说 明 书CN 102916995 A 1/4页 10 图1 图2 图3 说 明 书 附 图CN 102916995 A 10 2/4页 11 图4 说 明 书 附 图CN 102916995 A 11 3/4页 12 图5 说 明 书 附 图CN 102916995 A 12 4/4页 13 图6 说 明 书 附 图CN 102916995 A 13 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1