一种复制应用的方法及系统技术方案

技术编号:24409023 阅读:20 留言:0更新日期:2020-06-06 08:21
本发明专利技术公开了一种复制应用的方法,包括:虚拟机部署待复制的应用服务,每个应用服务包括若干个应用;虚拟机创建若干个应用盒子,每个应用盒子用于存储一个待复制的应用服务;每个应用盒子包括若干个应用空间,每个应用空间对应应用服务的一个应用;虚拟机将待复制的每个应用服务中的每个应用及安装所述应用所依赖的应用打包并存放在对应的应用空间中;虚拟机将每个应用盒子分别打包,拷贝至目标机器;目标机器将应用服务端口和操作系统端口做映射,完成应用服务部署。本发明专利技术还公开了一种复制应用的系统,将应用打包成独立文件存储,当单个应用依赖出错时,使用应用程序管理器的应用管理模块更新变化应用空间文件,提高复制和部署速度。

A method and system of replication application

【技术实现步骤摘要】
一种复制应用的方法及系统
本专利技术涉及软件部署领域,具体涉及一种复制应用的方法及系统。
技术介绍
在当代,软件的规模越来越大,业务更加复杂,为了实现复杂的业务,通常需要部署多种应用相互配合工作,共同完成应用服务。在多个应用部署完成后,若想将此应用服务部署在其他机器使用,则需要针对每一机器分别进行部署,产生大量的重复性工作,耗费开发人员大量的时间和精力。传统解决方式是将已经部署完成的虚拟机克隆成模板,然后在数据中心部署此模板。模板部署完成后,修改新虚拟机IP,从而完成应用服务的复制。此种方式能够完整的复制应用,可靠性高,适用于容量较小的虚拟机。但是,若虚拟机容量较大,则克隆和部署过程将会相应变慢,因此完整克隆虚拟机的方法不能适用于全部的机器,尤其不适用于容量大的虚拟机。
技术实现思路
为了解决上述技术问题,本专利技术提出了一种复制应用的方法及系统,方便将应用复制并部署在操作系统上,提高部署效率。为实现上述目的,本专利技术采用以下技术方案:一种复制应用的方法,包括:虚拟机部署待复制的应用服务,每个应用服务包括若干个应用;虚拟机创建若干个应用盒子,每个应用盒子用于存储一个待复制的应用服务;每个应用盒子包括若干个应用空间,每个应用空间对应应用服务的一个应用;虚拟机将待复制的每个应用服务中的每个应用及安装所述应用所依赖的应用打包并存放在对应的应用空间中;虚拟机将每个应用盒子分别打包,拷贝至目标机器;目标机器将应用服务端口和操作系统端口做映射,完成应用服务部署。进一步地,当应用发生变化时,更新对应的应用空间文件。进一步地,所述虚拟机创建若干个应用盒子,包括:安装应用程序管理器并启动应用程序管理器服务;通过应用管理模块创建应用盒子。进一步地,所述目标机器将应用服务端口和操作系统端口做映射,包括:目标机器安装应用程序管理器并启动应用程序管理器服务;通过通信模块,将应用服务端口和操作系统端口做映射。本专利技术还提出了一种复制应用的系统,包括:应用服务部署模块,用于部署待复制的应用服务;应用盒子创建模块,用于创建应用盒子;应用打包模块,用于将待复制的应用服务中每个应用及应用依赖分别打包并存放在对应的应用盒子的一个应用空间中;应用盒子打包模块,用于将应用盒子打包;复制模块,用于将打包的应用盒子拷贝至目标机器并安装。进一步地,当应用发生变化时,更新对应的应用空间文件。进一步地,所述应用服务部署模块将待复制的应用服务部署在虚拟机上。进一步地,所述应用盒子创建模块安装应用程序管理器并启动应用程序管理器服务;通过应用管理模块创建应用盒子。进一步地,所述复制模块在目标机器安装应用程序管理器并启动应用程序管理器服务;通过通信模块,将应用服务端口和操作系统端口做映射。本专利技术的有益效果是:本专利技术通过提出一种复制应用的方法及系统,将应用打包成独立文件存储,进行应用复制时,只需要复制独立文件,而不需要复制完整的虚拟机,所需复制的文件小,传输速度较快,可靠性高,当单个应用依赖出错时,使用应用程序管理器的应用管理模块更新更新变化应用空间文件即可,无需更新整个应用盒子,提高复制和部署的速度。使用应用程序管理器的通信模块和操作系统的端口做映射,对外提供服务,多个应用可以部署在同一个操作系统上,通信模块和操作系统的不同端口做映射即可,对于在同一个操作系统部署多个应用,部署方法简单方便,效率高。附图说明图1是本专利技术实施例复制应用的方法流程示意图;图2是本专利技术实施例虚拟机操作系统的框架示意图。具体实施方式为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本专利技术进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本专利技术的不同结构。为了简化本专利技术的公开,下文中对特定例子的部件和设置进行描述。此外,本专利技术可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本专利技术省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本专利技术。如图1所示,本专利技术公开了一种复制应用的方法,包括:虚拟机部署待复制的应用服务,每个应用服务包括若干个应用;虚拟机创建若干个应用盒子(AppBox),每个应用盒子应用盒子用于存储一个待复制的应用服务;每个应用盒子包括若干个应用空间,每个应用空间对应应用服务的一个应用;虚拟机将待复制的每个应用服务中的每个应用及其应用依赖打包并存放在对应的应用盒子的一个应用空间(AppSpace)中;虚拟机将每个应用盒子分别打包,拷贝至目标机器;目标机器将应用服务端口和操作系统端口做映射,完成应用服务部署;用户访问并使用应用服务。具体地,所述应用依赖是指提供安装该应用时所必须依赖的应用。在目标机器安装应用时,必须先安装应用依赖。所述复制应用的方法可通过以下步骤实现:(1)在虚拟机上部署待复制的应用服务;(2)安装应用程序管理器(AppManager)并启动应用程序管理器服务;(3)通过应用程序管理器的应用管理模块(AppManageModule)创建应用盒子;(4)应用管理模块将待复制的应用服务中每个应用及其应用依赖分别打包并存放在对应的应用盒子的一个应用空间中;(5)当应用及其应用依赖发生变化时,更新对应的应用空间文件;(6)应用管理模块将应用盒子打包成一个二进制文件;(7)将打包的应用盒子二进制文件拷贝至目标机器;(8)目标机器安装应用程序管理器并启动应用程序管理器服务;(9)通过应用程序管理器的通信模块(CommonModule),将应用服务端口和操作系统端口做映射;(10)新环境上应用服务部署完成。用户可访问并使用该服务。其中,目标机器实现与外界通信,必须通过操作系统的端口进行交互,应用程序管理器的应用服务与操作系统的通信也必须通过端口,应用程序管理器的通信模块用于将应用服务端口和操作系统的端口做映射,然后实现对外提供服务。例如,应用程序管理器的通信模块可以将应用服务开放的50056端口和操作系统的43126端口对应,43126端口是系统对外暴露的端口,也是提供上述应用服务的端口。对于同一个操作系统,可以通过通信模块与操作系统的不同端口做映射,实现多个应用服务的部署。图2示出了虚拟机操作系统的框架示意图,该示例中,虚拟机共部署了三个应用服务,应用程序管理器应用中创建了3个应用盒子,分别为应用盒子1、应用盒子2和应用盒子3,3个应用盒子分别用于存储一个独立的应用服务。其中,应用盒子1所存储的应用服务由2个应用共同实现,2个应用及其应用依赖分别存储在应用空间1和应用空间2中;同理,应用盒子2中设置了一个应用空间,应用盒子本文档来自技高网...

【技术保护点】
1.一种复制应用的方法,其特征在于,包括:/n虚拟机部署待复制的应用服务,每个应用服务包括若干个应用;/n虚拟机创建若干个应用盒子,每个应用盒子用于存储一个待复制的应用服务;每个应用盒子包括若干个应用空间,每个应用空间对应应用服务的一个应用;/n虚拟机将待复制的每个应用服务中的每个应用及安装所述应用所依赖的应用打包并存放在对应的应用空间中;/n虚拟机将每个应用盒子分别打包,拷贝至目标机器;/n目标机器将应用服务端口和操作系统端口做映射,完成应用服务部署。/n

【技术特征摘要】
1.一种复制应用的方法,其特征在于,包括:
虚拟机部署待复制的应用服务,每个应用服务包括若干个应用;
虚拟机创建若干个应用盒子,每个应用盒子用于存储一个待复制的应用服务;每个应用盒子包括若干个应用空间,每个应用空间对应应用服务的一个应用;
虚拟机将待复制的每个应用服务中的每个应用及安装所述应用所依赖的应用打包并存放在对应的应用空间中;
虚拟机将每个应用盒子分别打包,拷贝至目标机器;
目标机器将应用服务端口和操作系统端口做映射,完成应用服务部署。


2.根据权利要求1所述的复制应用的方法,其特征在于,当应用发生变化时,更新对应的应用空间文件。


3.根据权利要求1所述的复制应用的方法,其特征在于,所述虚拟机创建若干个应用盒子,包括:
安装应用程序管理器并启动应用程序管理器服务;
通过应用管理模块创建应用盒子。


4.根据权利要求1所述的复制应用的方法,其特征在于,所述目标机器将应用服务端口和操作系统端口做映射,包括:
目标机器安装应用程序管理器并启动应用程序管理器服务;
通过通信模块,将应用服...

【专利技术属性】
技术研发人员:王凤丽张大帅
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1