CN106775801A - 一种软件批量部署方法、装置和系统 - Google Patents

一种软件批量部署方法、装置和系统 Download PDF

Info

Publication number
CN106775801A
CN106775801A CN201610986425.3A CN201610986425A CN106775801A CN 106775801 A CN106775801 A CN 106775801A CN 201610986425 A CN201610986425 A CN 201610986425A CN 106775801 A CN106775801 A CN 106775801A
Authority
CN
China
Prior art keywords
target
current environment
virtual machine
software
target word
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610986425.3A
Other languages
English (en)
Inventor
王唯融
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Inspur Smart Computing Technology Co Ltd
Original Assignee
Guangdong Inspur Big Data Research Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong Inspur Big Data Research Co Ltd filed Critical Guangdong Inspur Big Data Research Co Ltd
Priority to CN201610986425.3A priority Critical patent/CN106775801A/zh
Publication of CN106775801A publication Critical patent/CN106775801A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Abstract

本发明提供了一种软件批量部署方法、装置和系统,该方法通过获取当前环境,为当前环境分配目标指令,进而为具有目标指令的当前环境生成至少一个虚拟机;并且,该方法通过控制具有目标指令的当前环境和每一个虚拟机运行目标指令,利用目标指令,控制具有目标指令的当前环境和每一个虚拟机下载并安装确定的目标软件。该方法可以同时在数台虚拟机中部署目标软件,无需多次重复安装,节约安装时间,提高目标软件的部署效率。

Description

一种软件批量部署方法、装置和系统
技术领域
本发明涉及计算机技术领域,特别涉及一种软件批量部署方法、装置和系统。
背景技术
虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。为了实现对软件的测试工作,测试人员通常需要将测试软件批量部署在数台虚拟机中。
现有技术中,一般通过人工的方式,逐个打开需要部署的虚拟机,将测试软件安装到每一个虚拟机中。但当虚拟机数量较多时,该方法需要多次重复安装,耗费大量的时间,部署效率较低。
发明内容
本发明实施例提供了一种软件批量部署方法、装置和系统,提高批量部署的效率。
第一方面,本发明实施例提供了一种软件批量部署方法,包括:
获取当前环境;
为所述当前环境分配目标指令;
为具有所述目标指令的所述当前环境生成至少一个虚拟机;
确定目标软件;
控制具有所述目标指令的所述当前环境和每一个所述虚拟机运行所述目标指令,并通过所述目标指令,控制具有所述目标指令的所述当前环境和每一个所述虚拟机下载并安装所述目标软件。
优选地,
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
控制具有所述目标指令的所述当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个所述虚拟机文件对应一个所述虚拟机;
或,
进一步包括:设置至少一种克隆类型;
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
在所述至少一种克隆类型中,选定目标克隆类型;
根据所述目标克隆类型,控制具有所述目标指令的所述当前环境进行克隆,生成至少一个所述虚拟机。
优选地,
在所述为具有所述目标指令的所述当前环境生成至少一个虚拟机之前,包括:
为所述当前环境安装目标客户端;
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
为具有所述目标指令和所述目标客户端的所述当前环境生成至少一个虚拟机;
所述控制所述当前环境和每一个所述虚拟机下载并安装所述目标软件,包括:
控制具有所述目标指令的所述当前环境和每一个所述虚拟机,通过所述目标客户端从外设的目标服务器下载所述目标软件,并将所述目标软件安装到具有所述目标指令的所述当前环境和每一个所述虚拟机中。
优选地,
在所述为具有所述目标指令的所述当前环境生成至少一个虚拟机之后,进一步包括:
为具有所述目标指令的所述当前环境创建快照;
在所述控制所述当前环境和每一个所述虚拟机下载并安装所述目标软件之后,进一步包括:
利用所述快照记录的具有所述目标指令的所述当前环境的目标数据,覆盖具有所述目标指令的所述当前环境和每一个所述虚拟机的当前数据。
第二方面,本发明实施例提供了一种软件批量部署装置,包括:
分配单元,用于获取当前环境,为所述当前环境分配目标指令,并触发生成单元;
所述生成单元,用于当接收到所述分配单元的触发时,为具有所述目标指令的所述当前环境生成至少一个虚拟机;
处理单元,用于确定目标软件,控制具有所述目标指令的所述当前环境和所述生成单元生成的每一个所述虚拟机运行所述目标指令,并通过所述目标指令,控制具有所述目标指令的所述当前环境和每一个所述虚拟机下载并安装所述目标软件。
优选地,
所述生成单元,用于控制所述分配单元获得的,具有所述目标指令的所述当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个所述虚拟机文件对应一个所述虚拟机;
或,
进一步包括:设置单元,用于设置至少一种克隆类型;
所述生成单元,用于在所述设置单元设置的至少一种克隆类型中,选定目标克隆类型;根据所述目标克隆类型,控制具有所述目标指令的所述当前环境进行克隆,生成至少一个所述虚拟机。
优选地,
进一步包括:安装单元,其中,
所述安装单元,用于为所述分配单元获取的当前环境安装目标客户端;所述生成单元,进一步用于当接收到所述分配单元的触发时,为具有所述目标指令和所述目标客户端的所述当前环境生成至少一个虚拟机。
优选地,
进一步包括:创建单元和还原单元,其中,
所述分配单元,进一步用于触发所述创建单元;
所述创建单元,用于当接收到所述分配单元的触发时,为具有所述目标指令的所述当前环境创建快照;
所述还原单元,用于利用所述创建单元创建的所述快照的记录,覆盖具有所述目标指令的所述当前环境和每一个所述虚拟机的当前数据。
第三方面,本发明实施例提供了一种软件批量部署系统,包括:当前环境和第二方面中任一所述的软件批量部署装置;
所述当前环境,用于接收所述软件批量部署装置分配的目标指令;运行所述目标指令,下载并安装目标软件。
优选地,
进一步包括:目标服务器,其中,
所述当前环境,用于安装所述目标客户端;通过所述目标客户端从所述目标服务器下载所述目标软件,并安装所述目标软件;
所述目标服务器,用于为所述当前环境中的目标客户端提供所述目标软件。
本发明实施例提供了一种软件批量部署方法、装置和系统,该方法通过获取当前环境,为当前环境分配目标指令,进而为具有目标指令的当前环境生成至少一个虚拟机;并且,该方法通过控制具有目标指令的当前环境和每一个虚拟机运行目标指令,利用目标指令,控制具有目标指令的当前环境和每一个虚拟机下载并安装确定的目标软件。该方法可以同时在数台虚拟机中部署目标软件,无需多次重复安装,节约安装时间,提高目标软件的部署效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的一种软件批量部署方法流程图;
图2是本发明一个实施例提供的一种软件批量部署装置结构示意图;
图3是本发明一个实施例提供的另一种软件批量部署装置结构示意图;
图4是本发明一个实施例提供的又一种软件批量部署装置结构示意图;
图5是本发明一个实施例提供的再一种软件批量部署装置结构示意图;
图6是本发明一个实施例提供的一种软件批量部署系统结构示意图;
图7是本发明一个实施例提供的另一种软件批量部署系统结构示意图;
图8是本发明一个实施例提供的另一种软件批量部署方法流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种软件批量部署方法,该方法可以包括以下步骤:
步骤101:获取当前环境;
步骤102:为当前环境分配目标指令;
步骤103:为具有目标指令的当前环境生成至少一个虚拟机;
步骤104:确定目标软件;
步骤105:控制具有目标指令的当前环境和每一个虚拟机运行目标指令,并通过目标指令,控制具有目标指令的当前环境和每一个虚拟机下载并安装目标软件。
在图1所示的实施例中,通过获取当前环境,为当前环境分配目标指令,进而为具有目标指令的当前环境生成至少一个虚拟机;并且,通过控制具有目标指令的当前环境和每一个虚拟机运行目标指令,利用目标指令,控制具有目标指令的当前环境和每一个虚拟机下载并安装确定的目标软件。该方法可以同时在数台虚拟机中部署目标软件,无需多次重复安装,节约安装时间,提高目标软件的部署效率。
在本发明的一个实施例中,为了为软件部署提供相同的部署环境,需要生成与具有目标指令的当前环境一模一样的虚拟机,步骤103可以包括:控制具有目标指令的当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个虚拟机文件对应一个虚拟机;或,该方法还可以包括:设置至少一种克隆类型;步骤103可以包括:在至少一种克隆类型中,选定目标克隆类型;根据目标克隆类型,控制具有目标指令的当前环境进行克隆,生成至少一个虚拟机。
根据具有目标指令的当前环境生成至少一个虚拟机,至少可以有两种实现方式:
方式1:复制;
每一个具有目标指令的当前环境对应一个当前文件,可以利用现有技术,对当前文件进行复制,复制得到的文件即为虚拟机文件,每一个虚拟机文件对应一个虚拟机。
方式2:克隆;
虚拟机的克隆,就是原始具有目标指令的当前环境的全部状态的一个拷贝,或者说一个镜像。克隆的过程并不影响原始具有目标指令的当前环境,克隆的操作一旦完成,克隆的虚拟机就可以脱离原始具有目标指令的当前环境独立存在,而且在克隆的虚拟机中和原始具有目标指令的当前环境中的操作是相对独立的,相互不影响。允许克隆的虚拟机和原始具有目标指令的当前环境在同一网络中出现,并且不会产生任何冲突。目前,主要有两种类型的克隆:完整克隆和链接克隆。
完整克隆是和原始具有目标指令的当前环境完全独立的一个拷贝,它不和原始具有目标指令的当前环境共享任何资源。可以脱离原始具有目标指令的当前环境独立使用。
链接克隆需要和原始具有目标指令的当前环境共享同一虚拟磁盘文件,不能脱离原始具有目标指令的当前环境独立运行。但采用共享磁盘文件却大大缩短了创建克隆虚拟机的时间,同时还节省了宝贵的物理磁盘空间。通过链接克隆,可以轻松的为不同的任务创建一个独立的虚拟机。
在本发明的一个实施例中,为了实现不同种类的目标软件的下载,在步骤103之前,还包括:为当前环境安装目标客户端;步骤103包括:为具有目标指令和目标客户端的当前环境生成至少一个虚拟机;步骤105包括:控制具有目标指令的当前环境和每一个虚拟机,通过目标客户端从外设的目标服务器下载目标软件,并将目标软件安装到具有目标指令的当前环境和每一个虚拟机中。
目标客户端与目标服务器一一对应,目标服务器中存储有待部署的目标软件,当需要部署不同的目标软件时,只需要调整目标服务器中的目标软件。例如,目标客户端为FTP(File Transfer Protocol,文件传输协议)客户端,目标服务器为FTP服务器,FTP客户端可以从FTP服务器上下载目标软件。
在本发明的一个实施例中,为了使安装了目标软件的当前环境快速恢复到安装之前的状态,简化操作步骤,在步骤103之后,还包括:为具有目标指令的当前环境创建快照;在步骤105之后,还包括:利用快照记录的具有目标指令的当前环境的目标数据,覆盖具有目标指令的当前环境和每一个虚拟机的当前数据。
快照是对某一个特定文件系统,在某一个特定时间内的一个具有只读属性的镜像。当需要恢复到某一系统状态,又不想创建多个虚拟机的时候,就可以使用快照功能。可以针对一个具有目标指令的当前环境创建两个以上的快照,这就意味着可以针对不同时刻的系统环境创建多个快照,毫无限制的往返于任何快照之间。
为具有目标指令的当前环境创建每一个快照时,都会创建一个文件。当快照被删除或在快照管理里被恢复时,这些文件将自动删除。这些文件用于存储关于快照的元数据和信息。这个文件是文本格式的,里面包括诸如快照显示名称、编号和磁盘文件名等信息。在创建快照之前,这个文件的初始大小为0字节。只要进行快照,这个文件就会增大和持续更新。
为具有目标指令的当前环境创建快照,当进行目标软件的下载和安装时,该快照可以记录数据变化,当需要恢复到安装目标软件之前的状态时,只需打开之前创建的快照就可以快速恢复到该快照对应的状态。
如图2所示,本发明实施例提供了一种软件批量部署装置,包括:分配单元201,用于获取当前环境,为当前环境分配目标指令,并触发生成单元202;生成单元202,用于当接收到分配单元201的触发时,为具有目标指令的当前环境生成至少一个虚拟机;处理单元203,用于确定目标软件,控制具有目标指令的当前环境和生成单元202生成的每一个虚拟机运行目标指令,并通过目标指令,控制具有目标指令的当前环境和每一个虚拟机下载并安装目标软件。
在本发明的一个实施例中,生成单元202,用于控制分配单元201获得的,具有目标指令的当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个虚拟机文件对应一个虚拟机。
在本发明的一个实施例中,如图3所示,该装置还包括:设置单元204,用于设置至少一种克隆类型;生成单元202,用于在设置单元204设置的至少一种克隆类型中,选定目标克隆类型;根据目标克隆类型,控制具有目标指令的当前环境进行克隆,生成至少一个虚拟机。
在本发明的一个实施例中,如图4所示,该装置还包括:安装单元205,用于为分配单元201获取的当前环境安装目标客户端;生成单元202,进一步用于当接收到分配单元201的触发时,为具有目标指令和目标客户端的当前环境生成至少一个虚拟机。
在本发明的一个实施例中,如图5所示,该装置还包括:创建单元206和还原单元207,其中,分配单元201,进一步用于触发创建单元206;创建单元206,用于当接收到分配单元201的触发时,为具有目标指令的当前环境创建快照;还原单元207,用于利用创建单元206创建的快照的记录,覆盖具有目标指令的当前环境和每一个虚拟机的当前数据。
如图6所示,本发明实施例提供了一种软件批量部署系统,当前环境601和本发明任意实施例所述的软件批量部署装置602;当前环境601,用于接收软件批量部署装置602分配的目标指令;运行目标指令,下载并安装目标软件。
在本发明的一个实施例中,如图7所示,该系统还包括:目标服务器603。当前环境601,用于安装目标客户端;通过目标客户端从目标服务器603下载目标软件,并安装目标软件;目标服务器603,用于为当前环境601中的目标客户端提供目标软件。
如图8所示,本发明实施例以批量部署目标软件A为例,对软件批量部署方法进行详细地说明,该方法可以包括以下步骤:
步骤801:获取当前环境。
该当前环境用于制作“模板环境”,用于通过该“模板环境”生成可以用于软件批量部署的虚拟机。该当前环境应该简单、纯净,该当前环境内避免安装任何可能干扰软件批量部署的第三方软件。该当前环境可以为一个虚拟机,也可以为一个服务器,而为了保证当前环境的简单、纯净,在该步骤中,常常以一个虚拟机作为当前环境。
步骤802:为当前环境分配目标指令。
例如:当前环境为一个虚拟机时,该步骤主要是将目标指令如软件下载指令等设置到该虚拟机。该目标指令可以为一个预先编译好的脚本,通过脚本内代码实现目标软件的下载和安装。在该脚本中可以设置目标软件的下载时间,例如,可以设置运行该当前环境的同时,执行该脚本,也可以设置,在该当前环境运行一段时间后,运行该脚本。
在本实施例中,该目标指令包括:在运行当前环境时,执行目标软件A的下载和安装。
步骤803:为当前环境安装目标客户端。
为了将外设的目标服务器中的目标软件下载到当前环境中,需要在当前环境中安装目标客户端。该目标客户端与外设的目标服务器一一对应,目标服务器中存储有待部署的目标软件,当需要部署不同的目标软件时,只需要调整目标服务器中的目标软件。例如,目标客户端为FTP客户端,目标服务器为FTP服务器,FTP客户端可以从FTP服务器上下载目标软件。
在本实施例中,外设的目标服务器为FTP服务器,因此,在当前环境中安装FTP客户端。
步骤804:为具有目标指令和目标客户端的当前环境生成至少一个虚拟机。
例如,当前环境为一个虚拟机时,通过上述步骤802和步骤804分别为虚拟机写入了目标指令以及安装了目标客户端,该步骤804的具体过程则主要是实现对具有目标指令和目标客户端的虚拟机的复制。该复制过程可以通过下述两种方式实现:
方式1:复制;
每一个具有目标指令的当前环境对应一个当前文件,可以利用现有技术,对当前文件进行复制,复制得到的文件即为虚拟机文件,每一个虚拟机文件对应一个虚拟机。
方式2:克隆;
虚拟机的克隆,就是原始具有目标指令的当前环境的全部状态的一个拷贝,或者说一个镜像。克隆的过程并不影响原始具有目标指令的当前环境,克隆的操作一旦完成,克隆的虚拟机就可以脱离原始具有目标指令的当前环境独立存在,而且在克隆的虚拟机中和原始具有目标指令的当前环境中的操作是相对独立的,相互不影响。允许克隆的虚拟机和原始具有目标指令的当前环境在同一网络中出现,并且不会产生任何冲突。目前,主要有两种类型的克隆:完整克隆和链接克隆。
完整克隆是和原始具有目标指令的当前环境完全独立的一个拷贝,它不和原始具有目标指令的当前环境共享任何资源。可以脱离原始具有目标指令的当前环境独立使用。
链接克隆需要和原始具有目标指令的当前环境共享同一虚拟磁盘文件,不能脱离原始具有目标指令的当前环境独立运行。但采用共享磁盘文件却大大缩短了创建克隆虚拟机的时间,同时还节省了宝贵的物理磁盘空间。通过链接克隆,可以轻松的为不同的任务创建一个独立的虚拟机。
在本实施例中,通过完整克隆,生成9个与具有目标指令的当前环境一样的虚拟机。
通过上述过程,复制出了完全相同的虚拟机,减少了各个虚拟机的构建过程,同时保证了环境的一致性。
步骤805:为具有目标指令的当前环境创建快照。
为了使安装了目标软件的当前环境快速恢复到安装之前的状态,简化操作步骤,可以为具有目标指令的当前环境创建快照。
快照是对某一个特定文件系统,在某一个特定时间内的一个具有只读属性的镜像。当需要恢复到某一系统状态,又不想创建多个虚拟机的时候,就可以使用快照功能。可以针对一个具有目标指令的当前环境创建两个以上的快照,这就意味着可以针对不同时刻的系统环境创建多个快照,毫无限制的往返于任何快照之间。
为具有目标指令的当前环境创建每一个快照时,都会创建一个文件。当快照被删除或在快照管理里被恢复时,这些文件将自动删除。这些文件用于存储关于快照的元数据和信息。这个文件是文本格式的,里面包括诸如快照显示名称、编号和磁盘文件名等信息。在创建快照之前,这个文件的初始大小为0字节。只要进行快照,这个文件就会增大和持续更新。
在本实施例中,为具有目标指令的当前环境创建快照。
步骤806:确定目标软件。
确定需要批量部署的目标软件,该目标软件被存储在目标服务器中。当需要部署的目标软件不同时,只需调整目标服务器中的目标软件即可。
在本实施例中,在FTP服务器中存储软件A,作为目标软件。
步骤807:控制具有目标指令的当前环境和每一个虚拟机,通过目标客户端从外设的目标服务器下载目标软件,并将目标软件安装到具有目标指令的当前环境和每一个虚拟机中。
当运行具有目标指令的当前环境和9个虚拟机时,执行其中的目标指令,FTP客户端主动从FTP服务器中下载,并将目标软件A,安装到具有目标指令的当前环境和每一个虚拟机中,实现目标软件A在具有目标指令的当前环境和9个虚拟机中的批量部署。
步骤808:利用快照记录的具有目标指令的当前环境的目标数据,覆盖具有目标指令的当前环境和每一个虚拟机的当前数据。
当进行目标软件的下载和安装时,该快照可以记录数据变化,当需要恢复到安装目标软件之前的状态时,只需打开之前创建的快照就可以快速恢复到该快照对应的状态。
在本实施例中,利用在步骤805中创建的具有目标指令的当前环境的快照,将当前环境恢复到该快照对应的状态。
另外,上述过程可以应用于对软件测试上,通过在相同的虚拟机上对同一软件进行相同或不同的测试,可以使软件能够同时安装在不同的虚拟机上,一方面可以有效地提高软件测试的效率,另一方面可以保证软件测试的可靠性。
综上,本发明各个实施例至少具有如下效果:
1、在本发明实施例中,该方法通过获取当前环境,为当前环境分配目标指令,进而为具有目标指令的当前环境生成至少一个虚拟机;并且,该方法通过控制当前环境和每一个虚拟机运行目标指令,利用目标指令,控制当前环境和每一个虚拟机下载并安装确定的目标软件。该方法可以同时在数台虚拟机中部署目标软件,无需多次重复安装,节约安装时间,提高目标软件的部署效率。
2、在本发明实施例中,为具有目标指令的当前环境生成至少一个虚拟机,可以至少有两种实现方法,复制和克隆。这两种方法可以在较短的时间内,生成多个与具有目标指令的当前环境完全一样的虚拟机。同时,两种不同方法,为用户提供了不同的选择。
3、在本发明实施例中,在当前环境中安装目标客户端,利用该目标客户端从外设的目标服务器下载目标软件。当用户需要安装不同的软件时,只需对目标服务器中的目标软件进行替换即可,目标客户端可以主动从目标服务器进行下载。
4、在本发明实施例中,可以通过为具有目标指令的当前环境创建快照,将安装目标软件的当前环境和每一个虚拟机的状态,还原到具有目标指令的当前环境的状态,方便再次使用。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种软件批量部署方法,其特征在于,包括:
获取当前环境;
为所述当前环境分配目标指令;
为具有所述目标指令的所述当前环境生成至少一个虚拟机;
确定目标软件;
控制具有所述目标指令的所述当前环境和每一个所述虚拟机运行所述目标指令,并通过所述目标指令,控制具有所述目标指令的所述当前环境和每一个所述虚拟机下载并安装所述目标软件。
2.根据权利要求1所述的方法,其特征在于,
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
控制具有所述目标指令的所述当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个所述虚拟机文件对应一个所述虚拟机;
或,
进一步包括:设置至少一种克隆类型;
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
在所述至少一种克隆类型中,选定目标克隆类型;
根据所述目标克隆类型,控制具有所述目标指令的所述当前环境进行克隆,生成至少一个所述虚拟机。
3.根据权利要求1所述的方法,其特征在于,
在所述为具有所述目标指令的所述当前环境生成至少一个虚拟机之前,包括:
为所述当前环境安装目标客户端;
所述为具有所述目标指令的所述当前环境生成至少一个虚拟机,包括:
为具有所述目标指令和所述目标客户端的所述当前环境生成至少一个虚拟机;
所述控制所述当前环境和每一个所述虚拟机下载并安装所述目标软件,包括:
控制具有所述目标指令的所述当前环境和每一个所述虚拟机,通过所述目标客户端从外设的目标服务器下载所述目标软件,并将所述目标软件安装到具有所述目标指令的所述当前环境和每一个所述虚拟机中。
4.根据权利要求1-3任一所述的方法,其特征在于,
在所述为具有所述目标指令的所述当前环境生成至少一个虚拟机之后,进一步包括:
为具有所述目标指令的所述当前环境创建快照;
在所述控制所述当前环境和每一个所述虚拟机下载并安装所述目标软件之后,进一步包括:
利用所述快照记录的具有所述目标指令的所述当前环境的目标数据,覆盖具有所述目标指令的所述当前环境和每一个所述虚拟机的当前数据。
5.一种软件批量部署装置,其特征在于,包括:
分配单元,用于获取当前环境,为所述当前环境分配目标指令,并触发生成单元;
所述生成单元,用于当接收到所述分配单元的触发时,为具有所述目标指令的所述当前环境生成至少一个虚拟机;
处理单元,用于确定目标软件,控制具有所述目标指令的所述当前环境和所述生成单元生成的每一个所述虚拟机运行所述目标指令,并通过所述目标指令,控制具有所述目标指令的所述当前环境和每一个所述虚拟机下载并安装所述目标软件。
6.根据权利要求5所述的软件批量部署装置,其特征在于,
所述生成单元,用于控制所述分配单元获得的,具有所述目标指令的所述当前环境对应的当前文件进行复制,生成至少一个虚拟机文件,每一个所述虚拟机文件对应一个所述虚拟机;
或,
进一步包括:设置单元,用于设置至少一种克隆类型;
所述生成单元,用于在所述设置单元设置的至少一种克隆类型中,选定目标克隆类型;根据所述目标克隆类型,控制具有所述目标指令的所述当前环境进行克隆,生成至少一个所述虚拟机。
7.根据权利要求5所述的软件批量部署装置,其特征在于,进一步包括:安装单元,其中,
所述安装单元,用于为所述分配单元获取的当前环境安装目标客户端;所述生成单元,进一步用于当接收到所述分配单元的触发时,为具有所述目标指令和所述目标客户端的所述当前环境生成至少一个虚拟机。
8.根据权利要求5-7任一所述的软件批量部署装置,其特征在于,进一步包括:创建单元和还原单元,其中,
所述分配单元,进一步用于触发所述创建单元;
所述创建单元,用于当接收到所述分配单元的触发时,为具有所述目标指令的所述当前环境创建快照;
所述还原单元,用于利用所述创建单元创建的所述快照的记录,覆盖具有所述目标指令的所述当前环境和每一个所述虚拟机的当前数据。
9.一种软件批量部署系统,其特征在于,包括:当前环境和权利要求5-8任一所述的软件批量部署装置;
所述当前环境,用于接收所述软件批量部署装置分配的目标指令;运行所述目标指令,下载并安装目标软件。
10.根据权利要求8所述的软件批量部署系统,其特征在于,进一步包括:目标服务器,其中,
所述当前环境,用于安装所述目标客户端;通过所述目标客户端从所述目标服务器下载所述目标软件,并安装所述目标软件;
所述目标服务器,用于为所述当前环境中的目标客户端提供所述目标软件。
CN201610986425.3A 2016-11-09 2016-11-09 一种软件批量部署方法、装置和系统 Pending CN106775801A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610986425.3A CN106775801A (zh) 2016-11-09 2016-11-09 一种软件批量部署方法、装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610986425.3A CN106775801A (zh) 2016-11-09 2016-11-09 一种软件批量部署方法、装置和系统

Publications (1)

Publication Number Publication Date
CN106775801A true CN106775801A (zh) 2017-05-31

Family

ID=58972878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610986425.3A Pending CN106775801A (zh) 2016-11-09 2016-11-09 一种软件批量部署方法、装置和系统

Country Status (1)

Country Link
CN (1) CN106775801A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729052A (zh) * 2017-10-16 2018-02-23 郑州云海信息技术有限公司 一种数据操作方法、装置、设备及计算机可读存储介质
CN109672722A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880515A (zh) * 2012-09-07 2013-01-16 浪潮电子信息产业股份有限公司 一种云海os中虚拟机快速部署方法
CN102981868A (zh) * 2012-11-05 2013-03-20 广州杰赛科技股份有限公司 一种云计算在实现虚拟机批量部署的方法
CN103678007A (zh) * 2013-12-13 2014-03-26 浪潮(北京)电子信息产业有限公司 一种软件的批量部署方法及系统
CN104636189A (zh) * 2015-02-25 2015-05-20 哈尔滨工业大学 基于Xen的虚拟机部署系统及方法
CN105278999A (zh) * 2015-11-19 2016-01-27 国云科技股份有限公司 一种安全高效虚拟机软件部署的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880515A (zh) * 2012-09-07 2013-01-16 浪潮电子信息产业股份有限公司 一种云海os中虚拟机快速部署方法
CN102981868A (zh) * 2012-11-05 2013-03-20 广州杰赛科技股份有限公司 一种云计算在实现虚拟机批量部署的方法
CN103678007A (zh) * 2013-12-13 2014-03-26 浪潮(北京)电子信息产业有限公司 一种软件的批量部署方法及系统
CN104636189A (zh) * 2015-02-25 2015-05-20 哈尔滨工业大学 基于Xen的虚拟机部署系统及方法
CN105278999A (zh) * 2015-11-19 2016-01-27 国云科技股份有限公司 一种安全高效虚拟机软件部署的方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107729052A (zh) * 2017-10-16 2018-02-23 郑州云海信息技术有限公司 一种数据操作方法、装置、设备及计算机可读存储介质
CN109672722A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备
CN109672722B (zh) * 2018-10-23 2022-04-26 平安科技(深圳)有限公司 数据部署方法及装置、计算机存储介质和电子设备

Similar Documents

Publication Publication Date Title
US6279028B1 (en) Operating system having a mechanism for handling a group of related processes residing on separate machines
CN103425472B (zh) 基于云计算的软件测试环境动态生成系统及其实现方法
CN107122267B (zh) 一种Windows操作系统挂载恢复方法
CN104216801B (zh) 一种面向虚拟化环境的数据复制方法及系统
CN102207957A (zh) 部分项改变跟踪和同步
CN106339177A (zh) 一种创建虚拟机的方法和装置
CN107783816A (zh) 虚拟机的创建方法及装置、大数据集群创建的方法及装置
CN107688611B (zh) 一种基于saltstack的Redis键值管理系统及方法
CN107544870A (zh) 一种虚拟机磁盘备份方法及装置
CN105912424A (zh) 一种基于云架构的终端程序快速备份及恢复方法
CN109189680A (zh) 一种应用发布和配置的系统及方法
JP4883986B2 (ja) 計算機システム、管理計算機及びデータリカバリ方法
CN101916172A (zh) 一种基于虚拟磁盘映像逻辑分割的按需软件分发方法
CN109460268B (zh) 应用参数配置方法、装置和系统
JP4755244B2 (ja) 情報生成方法、情報生成プログラム及び情報生成装置
CN105653326A (zh) 一种批量Linux系统安装及检测的系统及方法
CN108563440A (zh) 列表控制器代码自动添加方法、装置及可读存储介质
CN106775801A (zh) 一种软件批量部署方法、装置和系统
CN102271046A (zh) 利用虚拟单板生成配置文件的方法和装置
JP2017167811A (ja) バックアップ制御装置、バックアップ制御方法及びプログラム
CN111611160B (zh) 一种软件测试方法、装置、设备及存储介质
US7283271B2 (en) Methods of monitoring a media imaging system, media imaging monitoring systems, articles of manufacture
CN110837442B (zh) 基于脏数据位图和网络块设备的kvm虚拟机备份系统
CN107506231A (zh) 一种vdi数据保护的方法及系统
CN108376104B (zh) 节点调度方法及装置、计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170531