虚拟机自动化部署的方法、装置及电子设备与流程

文档序号:21407568发布日期:2020-07-07 14:41阅读:276来源:国知局
虚拟机自动化部署的方法、装置及电子设备与流程

本申请涉及无人部署技术领域,具体而言,本申请涉及一种虚拟机自动化部署的方法、装置及电子设备。



背景技术:

现有的测试技术中,通过采用虚拟机执行测试用例,以检测软件系统性能是否正常,因此虚拟机的系统环境部署在测试过程中尤为重要。虚拟机的系统环境不仅包括操作系统,还是包括操作系统对应的系统环境。然而,现有的虚拟机自动化部署方法存在如下两种缺陷:一、只能完成操作系统的部署,而无法部署测试用例所要求的条件,如.net3.0和office1.0的系统环境;二、调整虚拟机自动化部署方法的过程复杂,效率低。



技术实现要素:

本申请提供了一种虚拟机自动化部署的方法、装置及电子设备,可以解决上述技术问题。所述技术方案如下:

第一方面,本申请提供了一种虚拟机自动化部署的方法,该方法包括:

针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统;

获取与待部署的虚拟机对应的预配置的指定文件;

依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署。

进一步地,针对待部署的虚拟机的磁盘进行分区处理,包括:

获取预创建的磁盘分区信息,并依据磁盘分区信息对待部署的虚拟机对应的磁盘进行分区处理。

进一步地,依据磁盘分区信息对虚拟机对应的磁盘进行分区处理,包括:

依据磁盘分区信息,确定虚拟机的磁盘的主分区的大小;

依据主分区的大小对虚拟机对应磁盘进行分区处理。

进一步地,依据指定文件获取相应的预定义的脚本,包括:

依据指定文件,确定相应的预定义的脚本的存储路径;

依据存储路径,下载预定义的脚本。

进一步地,部署信息包括以下至少一项:盘符分配信息、待安装的应用程序信息、组策略信息;

执行预定义的脚本,包括以下至少一项:

基于盘符分配信息,向分区处理后的各个分区分配盘符;

基于待安装的应用程序信息,下载相应的应用程序;

基于组策略信息,确定操作系统的组策略。

进一步地,虚拟机为vmware虚拟机。

第二方面,本申请提供了一种虚拟机自动化部署的装置,该装置包括:

系统部署模块,用于针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统;

文件获取模块,用于获取与待部署的虚拟机对应的预配置的指定文件;

环境部署模块,用于依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署。

进一步地,系统部署模块用于:获取预创建的磁盘分区信息,并依据磁盘分区信息对待部署的虚拟机对应的磁盘进行分区处理。

进一步地,系统部署模块用于:依据磁盘分区信息,确定虚拟机的磁盘的主分区的大小;依据主分区的大小对虚拟机对应磁盘进行分区处理。

进一步地,环境部署模块用于:依据指定文件,确定相应的预定义的脚本的存储路径;依据存储路径,下载预定义的脚本。

进一步地,部署信息包括以下至少一项:盘符分配信息、待安装的应用程序信息、组策略信息;环境部署模块包括以下至少一项:基于盘符分配信息,向分区处理后的各个分区分配盘符;基于待安装的应用程序信息,下载相应的应用程序;基于组策略信息,确定操作系统的组策略。

进一步地,虚拟机为vmware虚拟机。

第三方面,本申请提供了一种电子设备,该电子设备包括:

一个或多个处理器;

存储器;

一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序被配置用于:执行上述虚拟机自动化部署的方法。

第四方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述虚拟机自动化部署的方法。

本申请实施例提供的技术方案带来的有益效果是:针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统,获取与待部署的虚拟机对应的预配置的指定文件,以便依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署,以预定义的脚本替换指定文件,从而作为虚拟机的自动化部署的依据,不仅减小了指定文件的大小,而且方便了虚拟机自动化部署的调整,实现通过调整预定义脚本,达到调整虚拟机自动化部署的目的,简化了现有技术中自动化部署的调整步骤,提高了自动部署的效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。

图1为本申请实施例提供的一种虚拟机自动化部署的方法的流程示意图;

图2为本申请实施例提供的磁盘分区信息一个实现方式的流程示意图;

图3为本申请实施例提供的指定文件的配置流程示意图;

图4为本申请实施例提供的指定文件的结构示意图;

图5为本申请实施例提供的预定义的脚本的结构示意图;

图6为本申请实施例提供的一种虚拟机自动化部署的装置的结构示意图;

图7为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

在软件开发和测试中,通常需要同时创建一批虚拟机。现有的虚拟机自动化部署一般只能部署操作系统,操作系统的系统环境的部署则需要依赖人工进行。这种部署方式不仅成本高,而且部署效率低,尤其是在虚拟机数量众多的情形下。另外,在虚拟机自动化部署需要修改时,需要对整体的部署文件进行修改,操作复杂、效率低。

本申请提供的虚拟机自动化部署的方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。

下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。

实施例一

本申请实施例提供了一种虚拟机自动化部署的方法,如图1所示,该方法包括:步骤s101、步骤s102和步骤s103。

步骤s101、针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统。

本实施例中,待部署的虚拟机可能为1个,也可能为多个。实际应用时,待部署的虚拟机可能在同一个客户机上,也可能在不同的客户机上。

本实施例中,在选定待部署的虚拟机后,对选定的待部署的虚拟机的磁盘进行分区处理。实际应用时,待部署的虚拟机的磁盘的大小可能一致,也可能不一致。例如,假设待部署的虚拟机为虚拟机1、虚拟机2和虚拟机3,其中,虚拟机1的磁盘为40g,虚拟机2的磁盘为50g,虚拟机3的磁盘为30g。

实际应用时,主分区可以为虚拟机的整个磁盘,也可以是虚拟机的磁盘的一个区域。例如,假设虚拟机的磁盘为40g,主分区的大小可以是40g,也可以小于40g。

步骤s102、获取与待部署的虚拟机对应的预配置的指定文件。

本实施例中,在将预定的操作系统安装在虚拟机上时,获取预配置的指定文件,并依据该指定文件再次进行部署。具体地,可以依据指定文件部署在虚拟机已安装的操作系统上进行部署。实际应用时,指定文件可以为1个,也可以为多个。

步骤s103、依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对虚拟机的系统环境部署。

本实施例中,针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统,获取与待部署的虚拟机对应的预配置的指定文件,以便依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署,以预定义的脚本替换指定文件,从而作为虚拟机自动化部署的依据,不仅减小了指定文件的大小,而且方便了虚拟机自动化部署的调整,实现通过调整预定义脚本,达到虚拟机自动化部署的调整目的,简化了现有技术中自动化部署的调整步骤,提高了自动部署的效率。

在一个实现方式中,如图1所示,步骤s101中针对待部署的虚拟机的磁盘进行分区处理,包括:

步骤s1011(图中未示出)、获取预创建的磁盘分区信息,并依据磁盘分区信息对待部署的虚拟机对应的磁盘进行分区处理。

本实施例中,依据磁盘分区信息确定对虚拟机的磁盘的分区处理的详细信息,以确定分区的数量以及大小。例如,将虚拟机的磁盘分区处理为两个分区,其中,主分区的大小为20g。

在另一个实现方式中,步骤s1011依据磁盘分区信息对虚拟机对应的磁盘进行分区处理,包括:

依据磁盘分区信息,确定虚拟机的磁盘的主分区的大小;

依据主分区的大小对虚拟机对应磁盘进行分区处理。

本实施例中,依据磁盘分区信息用于对虚拟机的磁盘进行分区处理,以确定安装操作系统的主分区。例如,实际应用时,磁盘分区信息可以如图2的矩形框所示,将虚拟机的磁盘的划分为两个分区,其中,第一个区分为主分区primary,且主分区primary的大小为20g,虚拟机的磁盘的剩余区域为第二个分区。

在又一个实现方式中,如图1所示,步骤s103中依据指定文件获取相应的预定义的脚本,包括:步骤s1031(图中未示出)和步骤s1032(图中未示出),其中,

步骤s1031、依据指定文件,确定相应的预定义的脚本的存储路径;

步骤s1032、依据存储路径,下载预定义的脚本。

本实施例中,通过在指定文件中设置预定义的脚本的存储路径,为获取预定义的脚本提供查询路径,以便进行下载。实际应用时,可以提供多个预定义的脚本,以便依据不同的脚本部署不同的系统环境。

实际应用时,指定文件可以为run.bat,具体地,run.bat可以参照图3所示的过程进行配置,实现将配置的指定文件写入磁盘,以便自动化部署中将该指定文件作为执行依据。具体地,run.bat的具体内容可以如图4所示,将run.bat作为执行指令的依据,而非自动化部署的脚本,通过图4所示的指定文件中download指向预定义的脚本,为虚拟机自动化部署提供了下载功能,并在下载完成后执行预定义的脚本,实现一次配置指定文件即可实现多次使用的目的,极大地缩小了指定文件的大小,方便了虚拟机自动化部署的调整。

本实施例中,部署信息包括以下至少一项:盘符分配信息、待安装的应用程序信息、组策略信息;步骤s103中执行预定义的脚本,包括以下至少一项:

基于盘符分配信息,向分区处理后的各个分区分配盘符;

基于待安装的应用程序信息,下载相应的应用程序;

基于组策略信息,确定操作系统的组策略。

实际应用时,预定义的脚本可以如图5所示,该脚本patch.bat中设置有分配的盘符信息、待安装的应用程序信息以及组策略信息。在虚拟机自动化部署过程中,依据该脚本patch.bat进行部署。实际应用时,脚本patch.bat可以存储在http服务器等存储装置,自动化部署过程中,依据指定文件run.bat中预定义的脚本patch.bat的存储路径确定存储位置,以便进行下载。实际应用时,可以配置两个预定义的脚本,可以将其中一个作为自动化部署依据的第一脚本,另一个则作为辅助的第二脚本,防止无法下载到作为自动化部署依据的第一脚本时,导致的自动化部署失败的问题。具体地,两个存储在不同位置,如第一脚本存储在http服务器,而第二脚本存储在云端服务器,在自动化部署过程中,若依据第一脚本的存储地址无法从http服务器下载到该第一脚本时,可以从云端服务器下载第二脚本。

具体地,本实施例中,虚拟机为vmware虚拟机。

本实施例中,可以采用vmware虚拟机软件构建虚拟机,实际应用时,同一台机器上同时运行二个或更多windows、dos、linux系统,因此可以保证同时在多个vmware虚拟机上进行自动化部署,具体地,可以为不同虚拟机设置管理员账号以及密码,从而保证自动化部署过程,多个虚拟机都能够被启动,防止某个或某些虚拟机未被启动,影响自动化部署的效率。

实施例二

本申请实施例提供了一种虚拟机自动化部署的装置,如图6所示,该虚拟机自动化部署的装置60可以包括:系统部署模块601、文件获取模块602以及环境部署模块603,其中,

系统部署模块601,用于针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统;

文件获取模块602,用于获取与待部署的虚拟机对应的预配置的指定文件;

环境部署模块603,用于依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署。

本实施例中,针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统,获取与待部署的虚拟机对应的预配置的指定文件,以便依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署,以预定义的脚本替换指定文件,从而作为虚拟机的自动化部署的依据,不仅减小了指定文件的大小,而且方便了虚拟机自动化部署的调整,实现通过调整预定义脚本,达到虚拟机自动化部署的调整目的,简化了现有技术中自动化部署的调整步骤,提高了自动部署的效率。

进一步地,系统部署模块用于:获取预创建的磁盘分区信息,并依据磁盘分区信息对待部署的虚拟机对应的磁盘进行分区处理。

进一步地,系统部署模块用于:依据磁盘分区信息,确定虚拟机的磁盘的主分区的大小;依据主分区的大小对虚拟机对应磁盘进行分区处理。

进一步地,环境部署模块用于:依据指定文件,确定相应的预定义的脚本的存储路径;依据存储路径,下载预定义的脚本。

进一步地,部署信息包括以下至少一项:盘符分配信息、待安装的应用程序信息、组策略信息;环境部署模块包括以下至少一项:基于盘符分配信息,向分区处理后的各个分区分配盘符;基于待安装的应用程序信息,下载相应的应用程序;基于组策略信息,确定操作系统的组策略。

进一步地,虚拟机为vmware虚拟机。

本实施例的虚拟机自动化部署的装置可执行本申请实施例所示的虚拟机自动化部署的方法,其实现原理相类似,此处不再赘述。

实施例三

本申请实施例提供了一种电子设备,如图7所示,图7所示的电子设备700包括:处理器7001和存储器7003。其中,处理器7001和存储器7003相连,如通过总线7002相连。进一步地,电子设备700还可以包括收发器7004。需要说明的是,实际应用中收发器7004不限于一个,该电子设备700的结构并不构成对本申请实施例的限定。

处理器7001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器7001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。

总线7002可包括一通路,在上述组件之间传送信息。总线7002可以是pci总线或eisa总线等。总线7002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

存储器7003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。

存储器7003用于存储执行本申请方案的应用程序代码,并由处理器7001来控制执行。处理器7001用于执行存储器7003中存储的应用程序代码,以实现图6所示实施例提供的虚拟机自动化部署的装置的动作。

本申请实施例中,针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统,获取与待部署的虚拟机对应的预配置的指定文件,以便依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署,以预定义的脚本替换指定文件,从而作为虚拟机的自动化部署的依据,不仅减小了指定文件的大小,而且方便了虚拟机自动化部署的调整,实现通过调整预定义脚本,达到虚拟机自动化部署的调整目的,简化了现有技术中自动化部署的调整步骤,提高了自动部署的效率。

本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现实施例一所示的方法。

本申请实施例提供了一种计算机可读存储介质,与现有技术相比,针对待部署的虚拟机的磁盘进行分区处理,得到待部署的虚拟机的主分区,并在主分区中安装预定的操作系统,获取与待部署的虚拟机对应的预配置的指定文件,以便依据指定文件获取相应的预定义的脚本,并执行预定义的脚本以完成对待部署的虚拟机的系统环境部署,以预定义的脚本替换指定文件,从而作为虚拟机的自动化部署的依据,不仅减小了指定文件的大小,而且方便了虚拟机自动化部署的调整,实现通过调整预定义脚本,达到虚拟机自动化部署的调整目的,简化了现有技术中自动化部署的调整步骤,提高了自动部署的效率。

本申请实施例提供了一种计算机可读存储介质适用于上述方法实施例。在此不再赘述。

应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1