一种基于虚拟机模板自动部署应用的方法及系统的制作方法

文档序号:6519554阅读:117来源:国知局
一种基于虚拟机模板自动部署应用的方法及系统的制作方法
【专利摘要】本发明提供了一种基于虚拟机模板自动部署应用的方法,应用于计算应用【技术领域】,在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署;通过实施本发明的技术方案,可以在用户申请虚拟机的同时将需要的各种不同类型的应用同时按需部署,一次实现虚拟机和应用部署完成,这样解决了在云计算环境中应用软件的快速部署问题。
【专利说明】一种基于虚拟机模板自动部署应用的方法及系统
【技术领域】
[0001]本发明属于计算应用【技术领域】,尤其涉及一种基于虚拟机模板自动部署应用的方法及系统。
【背景技术】
[0002]随着云计算的兴起,计算机领域正发生着深刻的变革。我国云计算服务市场处于起步阶段,云计算技术与设备已经具备一定的发展基础。我国云计算服务市场总体规模较小,但追赶势头明显。据Gartner估计,2011年我国在全球约900亿美元的云计算服务市场中所占份额不到3%,但年增速达到40%,预期未来我国与国外在云计算方面的差距将逐渐缩小。
[0003]总结起来云计算具有以下几个特点:
[0004](I)超大规模:“云”具有相当的规模,Google云计算已经拥有100多万台服务器,Amazon、IBM、微软、Yahoo等的“云”均拥有几十万台服务器。企业私有云一般拥有数百上千台服务器。“云”能赋予用户前所未有的计算能力。
[0005](2)虚拟化:云计算支持用户在任意位置、使用各种终端获取应用服务。所请求的资源来自“云”,而不是固定的有形的实体。应用在“云”中某处运行,但实际上用户无需了解、也不用担心应用运行的具体位置。只需要一台笔记本或者一个手机,就可以通过网络服务来实现我们需要的一切,甚至包括超级计算这样的任务。
[0006](3)高可靠性:“云”使用了数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性,使用云计算比使用本地计算机可靠。
[0007](4)通用性:云计算不针对特定的应用,在“云”的支撑下可以构造出千变万化的应用,同一个“云”可以同时支撑不同的应用运行。
[0008](5)高可扩展性:“云”的规模可以动态伸缩,满足应用和用户规模增长的需要。
[0009](6)按需服务:“云”是一个庞大的资源池,你按需购买;云可以像自来水,电,煤气那样计费。
[0010](7)极其廉价:由于“云”的特殊容错措施可以采用极其廉价的节点来构成云,“云”的自动化集中式管理使大量企业无需负担日益高昂的数据中心管理成本,“云”的通用性使资源的利用率较之传统系统大幅提升,因此用户可以充分享受“云”的低成本优势,经常只要花费几百美元、几天时间就能完成以前需要数万美元、数月时间才能完成的任务。
[0011]在以往的信息架构里,所需要执行的应用程序都必须安装于Client端(大多数为PC),当信息设备越来越多的时候,对信息人员来说在管理和维护上就变得更耗时耗力。
[0012]在云计算环境下,可以根据用户的需求以虚拟机的方式很容易、很快的创建用户需要的计算节点;但用户在快速创建虚拟机的同时,对于运行在计算节点的应用还需要单独的安装,当遇到软件比较多时候,常需要花费大量的时间与人力在每一个虚拟机安装类似CRM、数据库、Web服务器等应用软件,所花费的资源将更为可观。
【发明内容】

[0013]本发明提供一种基于虚拟机模板自动部署应用的方法及系统,以解决上述问题。
[0014]本发明提供一种基于虚拟机模板自动部署应用的方法,在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署。
[0015]本发明还提供一种基于虚拟机模板自动部署应用的系统,包括:开始部署装置、生成部署脚本装置、制作虚拟机模板装置、启动虚拟机装置;所述开始部署装置通过生成部署脚本装置与制作虚拟机模板装置相连;生成部署脚本装置通过制作虚拟机模板装置与启动虚拟机装置相连;
[0016]所述开始部署装置:用于进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址;
[0017]所述生成部署脚本装置,用于根据部署初始化的配置信息,生成自动应用部署的脚本;
[0018]所述制作虚拟机模板装置,用于将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件;
[0019]所述启动虚拟机装置:用于启动用以上模板生成的虚拟机。
[0020]通过实施本发明的技术方案,可以在用户申请虚拟机的同时将需要的各种不同类型的应用同时按需部署,一次实现虚拟机和应用部署完成,这样解决了在云计算环境中应用软件的快速部署问题;管理员应用上述技术,就可以实现方便快捷的软件管理部署,这种方法的优势在节点较多的应用部署较多的情况中尤其明显;这样既可以保证工作进度、减少配置成本,又不影响工作质量、避免失误,而且整个云计算中心的应用软件都可以在管理员的掌控之中,从而使管理员高效安全地实现对云计算数据中心的应用进行管理。
【专利附图】

【附图说明】
[0021]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0022]图1所示为本发明实施例1的应用部署结构图;
[0023]图2所示为本发明实施例2的应用部署处理流程图;
[0024]图3所示为本发明实施例3的系统结构图。
【具体实施方式】
[0025]下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0026]本发明提供了一种基于虚拟机模板自动部署应用的方法,在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署。
[0027]其中,所述自动化安装脚本包括配置安装应用部署的网络IP地址、需要执行应用自动安装部署软件的安装脚本。
[0028]其中,在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署的过程为:
[0029]步骤一,开始部署:进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址;
[0030]步骤二,生成部署脚本,根据部署初始化的配置信息,生成自动应用部署的脚本;
[0031]步骤三,制作虚拟机模板,将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件;
[0032]步骤四,启动虚拟机:启动用以上模板生成的虚拟机。
[0033]其中,步骤四之后,还包括:
[0034]步骤五,网络准备:网络进行初始化,检查网络是否正常连接;
[0035]步骤六,挂载NFS磁盘:网络连通之后将NFS目录挂载到虚拟机本地;
[0036]步骤七,安装应用:执行需要部署应用的自动安装脚本,如果有多个则依次安装;
[0037]步骤八,卸载NFS磁盘:应用全部自动部署完成之后,将NFS目录从虚拟机中卸载;
[0038]步骤九,结束部署,应用部署完成。
[0039]图1所示为本发明实施例1的应用部署结构图,详细说明如下:
[0040]在一个云计算部署环境中,为了实现对应用的快速部署,主要包括以下几个对象:
[0041]I)虚拟机模板:不同操作系统的虚拟机模板,可以是根据用户选择生成;
[0042]2)各种已经具有自动安装脚本的不同应用软件,这些应用软件都放在一个公共的NFS共享目录中;
[0043]3)部署管理系统,部署管理系统主要包括模板管理、NFS管理、应用管理三大部分的功能;
[0044]4)最后是已经部署好应用的虚拟机。
[0045]图2所示为本发明实施例2的应用部署处理流程图,详细说明如下:
[0046]步骤201:开始部署:进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址;
[0047]步骤202:生成部署脚本,根据部署初始化的配置信息,生成自动应用部署的脚本,一般可以为boot, sh格式;
[0048]步骤203:制作虚拟机模板,将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件。
[0049]比如KVM虚拟机可以通过给vmbuilder,添加参数来实现,参数如下:
[0050]—firstboot=/var/lib/libvirt/images/$l/boot.sh
[0051]步骤204:启动虚拟机:启动用以上模板生成的虚拟机;
[0052]步骤205:网络准备:网络进行初始化,检查网络是否正常连接(在网络没有初始化,反复检查);
[0053]步骤206:挂载NFS磁盘:网络连通之后将NFS目录挂载到虚拟机本地;
[0054]步骤207:安装应用:执行需要部署应用的自动安装脚本,如果有多个则依次安装;
[0055]步骤208:卸载NFS磁盘:应用全部自动部署完成之后,将NFS目录从虚拟机中卸载;
[0056]步骤209:结束部署,应用部署完成。[0057]图3所示为本发明实施例3的系统结构图,包括:开始部署装置301、生成部署脚本装置302、制作虚拟机模板装置303、启动虚拟机装置304 ;
[0058]所述开始部署装置301通过生成部署脚本装置302与制作虚拟机模板装置303相连;生成部署脚本装置302通过制作虚拟机模板装置303与启动虚拟机装置304相连;
[0059]所述开始部署装置301:用于进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址;
[0060]所述生成部署脚本装置302,用于根据部署初始化的配置信息,生成自动应用部署的脚本;
[0061]所述制作虚拟机模板装置303,用于将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件;
[0062]所述启动虚拟机装置304:用于启动用以上模板生成的虚拟机。
[0063]图3所示的系统还可以包括:网络准备装置、挂载NFS磁盘装置、安装应用装置、卸载NFS磁盘装置;启动虚拟机装置通过网络准备装置与挂载NFS磁盘装置相连;网络准备装置通过挂载NFS磁盘装置与安装应用装置相连;NFS磁盘装置通过安装应用装置与卸载NFS磁盘装置相连;
[0064]网络准备装置,用于网络进行初始化,检查网络是否正常连接;
[0065]挂载NFS磁盘装置,用于网络连通之后将NFS目录挂载到虚拟机本地;
[0066]安装应用装置,用于执行需要部署应用的自动安装脚本,如果有多个则依次安装;
[0067]卸载NFS磁盘装置,用于应用全部自动部署完成之后,将NFS目录从虚拟机中卸载。
[0068]通过实施本发明的技术方案,可以在用户申请虚拟机的同时将需要的各种不同类型的应用同时按需部署,一次实现虚拟机和应用部署完成,这样解决了在云计算环境中应用软件的快速部署问题;管理员应用上述技术,就可以实现方便快捷的软件管理部署,这种方法的优势在节点较多的应用部署较多的情况中尤其明显;这样既可以保证工作进度、减少配置成本,又不影响工作质量、避免失误,而且整个云计算中心的应用软件都可以在管理员的掌控之中,从而使管理员高效安全地实现对云计算数据中心的应用进行管理。
[0069]本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
[0070]可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0071]上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
[0072]上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。[0073]任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。
[0074]以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于虚拟机模板自动部署应用的方法,其特征在于, 在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署。
2.根据权利要求1所述的方法,其特征在于:所述自动化安装脚本包括配置安装应用部署的网络IP地址、需要执行应用自动安装部署软件的安装脚本。
3.根据权利要求2所述的方法,其特征在于:在虚拟机模板文件的初始化时添加自动化安装脚本来实现虚拟机应用的自动部署的过程为: 步骤一:开始部署:进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址; 步骤二:生成部署脚本,根据部署初始化的配置信息,生成自动应用部署的脚本;步骤三:制作虚拟机模板,将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件; 步骤四:启动虚拟机:启动用以上模板生成的虚拟机。
4.根据权利要求3所述的方法,其特征在于,步骤四之后,还包括: 步骤五:网络准备:网络进行初始化,检查网络是否正常连接; 步骤六:挂载NFS磁盘:网络连通之后将NFS目录挂载到虚拟机本地; 步骤七:安装应用:执行需要部署应用的自动安装脚本,如果有多个则依次安装; 步骤八:卸载NFS磁盘:应用全部自动部署完成之后,将NFS目录从虚拟机中卸载; 步骤九:结束部署,应用部署完成。
5.一种基于虚拟机模板自动部署应用的系统,其特征在于,包括:开始部署装置、生成部署脚本装置、制作虚拟机模板装置、启动虚拟机装置; 所述开始部署装置通过生成部署脚本装置与制作虚拟机模板装置相连;生成部署脚本装置通过制作虚拟机模板装置与启动虚拟机装置相连; 所述开始部署装置:用于进行部署的初始化工作,用户选择虚拟机的配置,操作系统以及需要部署到虚拟机的应用,包括配置NFS的IP地址; 所述生成部署脚本装置,用于根据部署初始化的配置信息,生成自动应用部署的脚本; 所述制作虚拟机模板装置,用于将已有的部署脚本和用户选择的虚拟机制作成一个新的虚拟机模板,让虚拟机在第一次启动的时候执行部署脚本文件; 所述启动虚拟机装置:用于启动用以上模板生成的虚拟机。
6.根据权利要求5所述的系统,其特征在于,还包括:网络准备装置、挂载NFS磁盘装置、安装应用装置、卸载NFS磁盘装置;启动虚拟机装置通过网络准备装置与挂载NFS磁盘装置相连;网络准备装置通过挂载NFS磁盘装置与安装应用装置相连;NFS磁盘装置通过安装应用装置与卸载NFS磁盘装置相连; 网络准备装置,用于网络进行初始化,检查网络是否正常连接; 挂载NFS磁盘装置,用于网络连通之后将NFS目录挂载到虚拟机本地; 安装应用装置,用于执行需要部署应用的自动安装脚本,如果有多个则依次安装; 卸载NFS磁盘 装置,用于应用全部自动部署完成之后,将NFS目录从虚拟机中卸载。
【文档编号】G06F9/48GK103605570SQ201310576860
【公开日】2014年2月26日 申请日期:2013年11月18日 优先权日:2013年11月18日
【发明者】刘正伟, 张东, 亓开元 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1