差异化部署虚拟机的方法和系统的制作方法

文档序号:10534585阅读:151来源:国知局
差异化部署虚拟机的方法和系统的制作方法
【专利摘要】本发明公开了一种差异化部署虚拟机的方法和系统,待部署的虚拟机内包括一通用镜像文件,所述方法包括:建立用户活动目录;在通用镜像文件启动时从部署服务器获取待部署的虚拟机所需的元数据,元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和存储地址;根据网络配置信息配置待部署的虚拟机的网络,根据活动目录配置信息将待部署的虚拟机与用户活动目录绑定;在部署服务器接收到升级指令时虚拟机从存储地址获取应用的安装包以更新应用。本发明能够在仅使用一个镜像文件定制不同的虚拟机,无需更新虚拟机的原有镜像文件,大大降低了更新镜像文件导致的存储空间的占用率,提高了对云计算平台的资源管理效率。
【专利说明】
差异化部署虚拟机的方法和系统
技术领域
[0001]本发明涉及一种基于用户信息的差异化部署虚拟机的方法和系统。
【背景技术】
[0002]随着云计算应用在企业部门间的普及,一些操作系统的虚拟机被更广泛的应用,为了满足不同用户对虚拟机的使用需求,现有技术中通过定制多个镜像文件来部署不同的虚拟机,而镜像文件通常很大,一般为几百兆到几十吉不等,大量的镜像文件则会占用很大的磁盘存储空间;此外,若虚拟机内部软件没有及时更新,则会产生安全漏洞和缺陷,而通过制作新的镜像文件来升级虚拟机内的软件,又会导致虚拟机的镜像版本过多,进一步增大了磁盘空间的占用。另外,镜像管理发布会变得异常复杂,虚拟机频繁更新镜像会带来数据备份、数据恢复、资源回收等额外工作,从而造成云计算平台资源浪费,管理复杂,效率降低。

【发明内容】

[0003]本发明要解决的计算问题是为了克服现有技术中根据用户需求来部署虚拟机时会占用很大的磁盘存储空间,且通过更新镜像文件的方式来更新虚拟机内的软件时进一步加剧了磁盘空间的占用,还增加了数据备份、数据恢复、资源回收等额外工作,使得云计算平台资源浪费,管理复杂,效率低下的缺陷,提供一种差异化部署虚拟机的方法和系统。
[0004]本发明是通过以下技术方案解决上述技术问题的:
[0005]—种差异化部署虚拟机的方法,其特点在于,待部署的虚拟机内包括一通用镜像文件,所述方法包括:
[0006]S1、建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址;
[0007]S2、在所述通用镜像文件启动时从部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址;
[0008]S3、根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定;
[0009]S4、在所述部署服务器接收到一升级指令时虚拟机从所述存储地址获取应用的安装包以更新虚拟机的应用。
[0010]较佳地,所述网络配置信息包括待部署的虚拟机的名字、待部署的虚拟机的IP(Internet Protocol,互联网协议)地址、待部署的虚拟机的DNS(Domain Name Server,域名服务器)和待部署的虚拟机的网关,步骤S3中根据所述网络配置信息配置待部署的虚拟机的网络包括:
[0011 ] S31、设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。
[0012]较佳地,所述活动目录配置信息包括虚拟机的磁盘大小和虚拟机的操作系统,步骤S3中根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定包括:
[0013]S32、设置虚拟机的磁盘大小和操作系统;
[0014]S33、通过powershel I (一种命令行外壳程序和脚本环境)命令将虚拟机加入至所述用户活动目录。
[0015]较佳地,步骤S3和步骤S4之间还包括:
[0016]S34、通过注册表的方式记录步骤S3的执行结果,并将所述执行结果发送至所述部署服务器。
[0017]较佳地,所述虚拟机的应用存储于一服务器内,和/或,所述虚拟机为windows(是一套操作系统)虚拟机。
[0018]本发明还提供一种差异化部署虚拟机的系统,其特点在于,包括一部署服务器、一待部署的虚拟机和一用户活动目录建立模块,所述虚拟机包括一通用镜像文件、一元数据获取模块、一配置模块和一应用更新模块;
[0019]所述用户活动目录建立模块用于建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址;
[0020]所述元数据获取模块用于在所述通用镜像文件启动时从所述部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址;
[0021]所述配置模块用于根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定;
[0022]所述应用更新模块用于在所述部署服务器接收到一升级指令时从所述存储地址获取应用的安装包以更新虚拟机的应用。
[0023]较佳地,所述网络配置信息包括待部署的虚拟机的名字、待部署的虚拟机的IP地址、待部署的虚拟机的DNS和待部署的虚拟机的网关,所述配置模块还用于根据所述网络配置信息设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。
[0024]较佳地,所述活动目录配置信息包括虚拟机的磁盘大小和虚拟机的操作系统,所述配置模块还用于设置虚拟机的磁盘大小和操作系统,并通过powershell命令将虚拟机加入至所述用户活动目录。
[0025]较佳地,所述系统还包括一记录模块,所述记录模块用于通过注册表的方式记录所述设置模块的执行结果,并将所述执行结果发送至所述部署服务器。
[0026]较佳地,所述虚拟机的应用存储于一服务器内,和/或,所述虚拟机为windows虚拟机。
[0027]本发明的积极进步效果在于:本发明在通用镜像文件的基础上,通过建立用户活动目录的方式,并将待部署的虚拟机与用户活动目录进行绑定,能够在仅使用一个镜像文件的情况下针对不同用户的需求定制不同的虚拟机,实现了对虚拟机的差异化部署,大大降低了对磁盘空间的占用;此外,通过调用存储地址内的应用,能够在需要更新时直接更新虚拟机内的应用,而无需更新虚拟机的原有镜像文件,进一步降低了更新镜像文件导致的存储空间的占用率,且无需对原有虚拟机的数据执行备份、恢复、资源回收等额外操作,大大提高了对云计算平台的资源管理效率。
【附图说明】
[0028]图1为本发明实施例1的差异化部署虚拟机的方法流程图。
[0029]图2为本发明实施例2的差异化部署虚拟机的系统的结构示意图。
【具体实施方式】
[0030]下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
[0031]实施例1
[0032]本实施例提供一种差异化部署虚拟机的方法,其可应用于企业内部各部门员工需使用虚拟机的情形,如有部门厶,8,(:,各部门的员工为&1,&2,&3;13142沁3;(31,(32,部门厶,8,C使用的虚拟机可为windows虚拟机,该windows虚拟机均包括一通用镜像文件,该通用镜像文件中具有各部门通用的软件,本实施例便是在通用镜像文件的基础上实现的定制化差异部署,如图1所示,所述方法包括:
[0033]步骤101、建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址;
[0034]用户信息可为企业内的员工的个人资料,而访问权限信息可为员工对部门内的虚拟机的使用限制,即虚拟机内的部分功能对该员工开放,部分功能对该员工锁定。所述虚拟机的应用存储于一服务器内,该服务器可为smb(网络文件共享协议,它允许应用程序和终端用户从远端的文件服务器访问文件资源)服务器,该服务器可以作为企业的软件库,用于存放企业内部软件。
[0035]步骤102、在所述通用镜像文件启动时从部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址;
[0036]获取存储地址实际上是将smb服务器挂载至待部署的虚拟机的本地磁盘内,从而使得虚拟机在更新软件时能直接从该存储地址获得软件并执行更新。
[0037]步骤103、根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定;
[0038]所述网络配置信息可包括待部署的虚拟机的名字、待部署的虚拟机的IP地址、待部署的虚拟机的DNS和待部署的虚拟机的网关。在获得该些元数据后根据所述网络配置信息设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。
[0039]而活动目录配置信息是根据用户活动目录里各员工的信息做的个性化设置,如为员工al分配虚拟机时,设置该虚拟机的磁盘大小和操作系统,并通过powershell命令将虚拟机加入至所述用户活动目录,即将部署好的虚拟机与员工al绑定,使得员工al在其设置的权限内操作为其部署的虚拟机。在完成网络的配置和虚拟机的绑定后,还可增加软件的安装、活动目录配置项的更改、虚拟机内的文件的移动、虚拟机内的数据备份等功能。
[°04°] 其中,利用注册表作为hook(是Windows消息处理机制的一个平台),记录执行虚拟机部署过程中的各步骤,以实现对虚拟机的初始化跟踪。
[0041]步骤104、在所述部署服务器接收到一升级指令时虚拟机从所述存储地址获取应用的安装包以更新虚拟机的应用。
[0042]在实施过程中,可在虚拟机内建立升级目录结构,在该升级目录结构下组织软件升级目录,虚拟机内的软件在升级时则会在该升级目录结构下产生一个新目录,该目录可以“软件版本号_日期”的格式进行命名,软件版本号以数字I开始依次递增,从而自动形成升级历史记录。在需要升级时,虚拟机根据历史升级记录中上一次的升级版本号,根据版本号递增的顺序过滤出本次需要升级的脚本文件,脚本文件定义一次升级操作所需的动作类别以及动作项,动作类别分为安装msi(安装一种产品所需要的信息和在很多情形下安装和卸载程序所需的指令和数据)软件包、拷贝文件、cmd运行命令、powershell运行命令,动作项为当前安装动作具体参数树信息,如拷贝文件所需的起始地址和目标地址等。
[0043]然后根据所述脚本文件从所述存储地址中获得相应的安装包执行更新操作。此夕卜,在需要更新虚拟机的应用软件时,还可通过一管理页面向部署服务器发送更新指令,部署服务器则通过弹框的方式与虚拟机的当前用户进行交互,将远程定制消息展现给当前用户,定制消息可为通知用户保存数据、通知用户软件升级进度等。
[0044]本实施例在通用镜像文件的基础上,集成用户活动目录,并挂载smb服务器以获得软件升级地址,能够将软件安装升级与镜像发布解耦,减少镜像版本,提高物理机磁盘利用率,降低维护镜像升级带来的数据备份,虚拟机回收重新分配等各种管理成本,统一企业内部帐户管理,使用部门内部的账户登录虚拟机,满足企业不同部门间的windows虚拟机基本软件需求。
[0045]实施例2
[0046]本实施例提供一种差异化部署虚拟机的系统,如图2所示,包括一部署服务器1、一待部署的虚拟机2和一用户活动目录建立模块3,所述虚拟机包括一通用镜像文件21、一元数据获取模块22、一配置模块23和一应用更新模块24;
[0047]所述用户活动目录建立模块3用于建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址;所述虚拟机的应用存储于一服务器内,所述虚拟机为windows虚拟机。
[0048]所述元数据获取模块22用于在所述通用镜像文件启动时从所述部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址;
[0049]所述配置模块23用于根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定;
[0050]所述应用更新模块24用于在所述部署服务器接收到一升级指令时从所述存储地址获取应用的安装包以更新虚拟机的应用。
[0051]所述网络配置信息包括待部署的虚拟机的名字、待部署的虚拟机的IP地址、待部署的虚拟机的DNS和待部署的虚拟机的网关,所述配置模块还用于根据所述网络配置信息设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。
[0052]所述活动目录配置信息包括虚拟机的磁盘大小和虚拟机的操作系统,所述配置模块还用于设置虚拟机的磁盘大小和操作系统,并通过powershell命令将虚拟机加入至所述用户活动目录。
[0053]所述系统还包括一记录模块,所述记录模块用于通过注册表的方式记录所述设置模块的执行结果,并将所述执行结果发送至所述部署服务器。
[0054]本实施例在通用镜像文件的基础上,通过建立用户活动目录的方式,并将待部署的虚拟机与用户活动目录进行绑定,能够在仅使用一个镜像文件的情况下针对不同用户的需求定制不同的虚拟机,实现了对虚拟机的差异化部署,大大降低了对磁盘空间的占用;通过与外部服务器内的应用进行共享,能够在需要更新时直接更新虚拟机内的应用,而无需重新制作新的镜像文件以来部署新的虚拟机,进一步降低了更新镜像文件导致的存储空间的占用率,且无需对原有虚拟机的数据执行备份、恢复、资源回收等额外操作,大大提高了对云计算平台的资源管理效率。
[0055]虽然以上描述了本发明的【具体实施方式】,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
【主权项】
1.一种差异化部署虚拟机的方法,其特征在于,待部署的虚拟机内包括一通用镜像文件,所述方法包括: S1、建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址; &、在所述通用镜像文件启动时从部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址; 53、根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定; 54、在所述部署服务器接收到一升级指令时虚拟机从所述存储地址获取应用的安装包以更新虚拟机的应用。2.如权利要求1所述的方法,其特征在于,所述网络配置信息包括待部署的虚拟机的名字、待部署的虚拟机的IP地址、待部署的虚拟机的DNS和待部署的虚拟机的网关,步骤S3中根据所述网络配置信息配置待部署的虚拟机的网络包括: Ss1、设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。3.如权利要求1所述的方法,其特征在于,所述活动目录配置信息包括虚拟机的磁盘大小和虚拟机的操作系统,步骤S3中根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定包括: 532、设置虚拟机的磁盘大小和操作系统; 533、通过powershell命令将虚拟机加入至所述用户活动目录。4.如权利要求1所述的方法,其特征在于,步骤S3和步骤S4之间还包括: 534、通过注册表的方式记录步骤S3的执行结果,并将所述执行结果发送至所述部署服务器。5.如权利要求1-4中任意一项所述的方法,其特征在于,所述虚拟机的应用存储于一服务器内,和/或,所述虚拟机为windows虚拟机。6.—种差异化部署虚拟机的系统,其特征在于,包括一部署服务器、一待部署的虚拟机和一用户活动目录建立模块,所述虚拟机包括一通用镜像文件、一元数据获取模块、一配置模块和一应用更新模块; 所述用户活动目录建立模块用于建立用户活动目录,所述用户活动目录包括用户信息、用户对虚拟机的访问权限信息和虚拟机的应用的存储地址; 所述元数据获取模块用于在所述通用镜像文件启动时从所述部署服务器获取待部署的虚拟机所需的元数据,所述元数据包括待部署的虚拟机的网络配置信息、待部署的虚拟机的活动目录配置信息和所述存储地址; 所述配置模块用于根据所述网络配置信息配置待部署的虚拟机的网络,根据所述活动目录配置信息将待部署的虚拟机与所述用户活动目录绑定; 所述应用更新模块用于在所述部署服务器接收到一升级指令时从所述存储地址获取应用的安装包以更新虚拟机的应用。7.如权利要求6所述的系统,其特征在于,所述网络配置信息包括待部署的虚拟机的名字、待部署的虚拟机的IP地址、待部署的虚拟机的DNS和待部署的虚拟机的网关,所述配置模块还用于根据所述网络配置信息设置虚拟机的名字、虚拟机的IP地址、虚拟机的DNS和虚拟机的网关。8.如权利要求6所述的系统,其特征在于,所述活动目录配置信息包括虚拟机的磁盘大小和虚拟机的操作系统,所述配置模块还用于设置虚拟机的磁盘大小和操作系统,并通过powershell命令将虚拟机加入至所述用户活动目录。9.如权利要求6所述的系统,其特征在于,所述系统还包括一记录模块,所述记录模块用于通过注册表的方式记录所述设置模块的执行结果,并将所述执行结果发送至所述部署服务器。10.如权利要求6-9中任意一项所述的系统,其特征在于,所述虚拟机的应用存储于一服务器内,和/或,所述虚拟机为windows虚拟机。
【文档编号】G06F9/455GK105893115SQ201610208257
【公开日】2016年8月24日
【申请日】2016年4月5日
【发明人】周元, 吉志龙
【申请人】上海携程商务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1