CN107678751B - 一种虚拟机软件部署方法及终端 - Google Patents
一种虚拟机软件部署方法及终端 Download PDFInfo
- Publication number
- CN107678751B CN107678751B CN201710146730.6A CN201710146730A CN107678751B CN 107678751 B CN107678751 B CN 107678751B CN 201710146730 A CN201710146730 A CN 201710146730A CN 107678751 B CN107678751 B CN 107678751B
- Authority
- CN
- China
- Prior art keywords
- software
- script
- server
- virtual machine
- information
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种虚拟机软件部署方法及终端。其中,所述方法包括:若接收到用户的选择指令,选择服务器和需要部署的软件;获取每个软件的脚本信息和与所述相对应的服务器的地址信息并生成第一软件脚本;获取所有第一软件脚本并生成第二软件脚本;若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。本发明可以实现云环境下的软件自动化安装,其中,该自动化软件安装过程简单、灵活。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种虚拟机软件部署方法及终端。
背景技术
目前,云环境下的软件安装基本上都是通过模板或推送工具来实现的,由于模板只适合静态安装,而推送工具则需要安装相对应的客户端且需要人工触发才能够实现。因此,以上两种现有云环境下的软件安装方法要么应用范围过窄、要么安装过程较复杂,用户体验不佳。
发明内容
本发明实施例提供一种虚拟机软件部署方法及终端,可实现云环境下的软件自动化安装,为用户提供体验更好的服务。
一方面,本发明实施例提供了一种虚拟机软件部署方法,该方法包括:
若接收到用户的选择指令,选择服务器和需要部署的软件;
获取每个软件的脚本信息和与所述相对应的服务器的地址信息并生成第一软件脚本;
获取所有第一软件脚本并生成第二软件脚本;
若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;
创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;
根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。
进一步地,所述第二软件脚本包括创建脚本;在创建所述虚拟机后,所述创建脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本还包括开机脚本和关机脚本;若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
进一步地,所述方法还包括:
显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联;
根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
另一方面,本发明实施例提供了一种终端,该终端包括:
第一选择单元,用于若接收到用户的选择指令,选择服务器和需要部署的软件;
第一获取单元,用于获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本;
第二获取单元,用于获取所有第一软件脚本并生成第二软件脚本;
创建单元,用于若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;
拆分单元,用于创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;
安装单元,用于根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。
进一步地,所述第二软件脚本包括创建脚本;在创建所述虚拟机后,所述创建脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本还包括开机脚本和关机脚本;若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
进一步地,所述终端还包括:
显示单元,用于显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联;
第二选择单元,用于根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
综上所述,本发明具有以下有益效果:本发明通过获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本,并根据第一软件脚本并生成第二软件脚本,在创建虚拟机时,将第二软件脚本上传到与虚拟机对应的虚拟路由器的目录中,在创建虚拟机后,将第二软件脚本进行拆分以生成每个第一软件脚本以进行安装相对应的软件,从而可以实现云环境下的软件自动化安装,其中,该自动化软件安装过程简单、灵活。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种虚拟机软件部署方法的示意流程图。
图2是本发明实施例二提供的一种虚拟机软件部署方法的另一示意流程图。
图3是本发明实施例提供的一种终端的示意性框图。
图4是本发明实施例提供的一种终端的另一示意性框图。
图5是本发明实施例提供的一种虚拟机软件部署设备的结构组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
请参阅图1,图1是本发明实施例一提供的一种虚拟机软件部署方法的示意流程图。该方法可以运行在具有运行虚拟机功能的台式电脑、笔记本电脑、平板电脑或者其它具有运行虚拟机功能的智能设备中。如图中所示,该方法的步骤包括S101~S106。
S101,若接收到用户的选择指令,选择服务器和需要部署的软件。
具体的,在本发明实施例中,所述服务器可以包括文件服务器、数据库服务器和应用程序服务器,在所述服务器上存储有多种软件,用户可以选择所需的服务器以及与该服务器相对应的软件,该软件用于实现用户在虚拟机上的软件部署。所述软件可以是系统软件,系统软件为计算机使用提供最基本的功能,系统软件可分为操作系统和支撑软件,其中操作系统是最基本的软件,操作系统如Linux、Mac OS、Unix、Windows等,支撑软件是支撑计算机中各种软件的开发与维护的软件,支撑软件如环境数据库、各种接口软件和一系列的基本工具等;所述软件还可以是应用软件,应用软件是为了某种特定的用途而被开发者开发可供使用的软件,应用软件如Office、WPS、AutoCAD、Photoshop等。
S102,获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本。
具体的,在本发明实施例中,所述软件的脚本信息与软件一一对应,通过软件的脚本信息可以确定相对应的软件,所述服务器的地址信息用于提供软件存储在服务器中的地址,通过服务器的地址信息可以确定相对应的软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
需要说明的是,将所述软件的脚本信息以及所述服务器的地址信息生成第一软件脚本,例如,将所述软件的脚本信息以及所述服务器的地址信息记录至一个脚本文件中,将该脚本文件作为第一软件脚本;在该第一软件脚本中存储着每个软件所对应的脚本信息以及该软件在服务器中的地址信息,通过生成第一软件脚本能够使每个软件的下载安装信息有序的存储,可以防止软件下载安装信息的丢失,并且提高软件下载安装的效率。
S103,获取所有第一软件脚本并生成第二软件脚本。
具体的,在本发明实施例中,获取所有第一软件脚本并生成第二软件脚本,所述第二软件脚本中可以包括一个或者多个第一软件脚本,在所述第二软件脚本中存储着每个软件所对应的第一软件脚本,通过生成第二软件脚本可以提高数据的传输效率。
S104,若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中。
具体的,在本发明实施例中,在创建虚拟机后,设置虚拟机的虚拟路由器,并将生成的第二软件脚本上传到所述虚拟机的虚拟路由器的目录中,以方便虚拟机获取该第二软件脚本以完成软件的安装与配置。
需要说明的是,所述将第二软件脚本上传到所述虚拟机的虚拟路由器的目录,指的是在虚拟机联网的情况下,用户可以在虚拟机的虚拟路由器的目录中选择相对应的服务器,在服务器中选择相对应的第二软件脚本,选择第二软件脚本并将第二软件脚本上传至虚拟机的虚拟路由器的目录中。
S105,创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本。
具体的,在本发明实施例中,将上传到所述虚拟机的虚拟路由器目录中的第二软件脚本进行拆分并生成每个第一软件脚本,由于所述第二软件脚本包括一个或者多个第一软件脚本,所述第二软件脚本以一个第一软件脚本为拆分单元,将第二软件脚本中的一个或者多个第一软件脚本拆分并生成每个第一软件脚本。
其中,所述第二软件脚本包括创建脚本,如果所述第二软件脚本包括创建脚本,在创建所述虚拟机后,所述创建脚本被调用并对所述软件进行安装,具体地,对所述创建脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;所述第二软件脚本还包括开机脚本和关机脚本,若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装,具体地,对所述开机脚本或者关机脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;更具体地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
S106,根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。
具体的,在本发明实施例中,通过所述第一软件脚本中软件的脚本信息可以确定相对应的软件,通过服务器的地址信息可以确定相对应软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
由以上可见,在本发明实施例中,本发明实施例通过获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本,并根据第一软件脚本并生成第二软件脚本,在创建虚拟机时,将第二软件脚本上传到与虚拟机对应的虚拟路由器的目录中,在创建虚拟机后,将第二软件脚本进行拆分以生成每个第一软件脚本以进行安装相对应的软件,从而可以实现云环境下的软件自动化安装,其中,该自动化软件安装过程简单、灵活。
请参阅图2,图2是本发明实施例二提供的一种虚拟机软件部署方法的示意流程图。该方法可以运行在具有运行虚拟机功能的台式电脑、笔记本电脑、平板电脑或者其它具有运行虚拟机功能的智能设备中。如图中所示,该方法的步骤包括S201~S208。
S201,若接收到用户的选择指令,选择服务器和需要部署的软件。
具体的,在本发明实施例中,所述服务器可以包括文件服务器、数据库服务器和应用程序服务器,在所述服务器上存储有多种软件,用户可以选择所需的服务器以及与该服务器相对应的软件,该软件用于实现用户在虚拟机上的软件部署。所述软件可以是系统软件,系统软件为计算机使用提供最基本的功能,系统软件可分为操作系统和支撑软件,其中操作系统是最基本的软件,操作系统如Linux、Mac OS、Unix、Windows等,支撑软件是支撑计算机中各种软件的开发与维护的软件,支撑软件如环境数据库、各种接口软件和一系列的基本工具等;所述软件还可以是应用软件,应用软件是为了某种特定的用途而被开发者开发可供使用的软件,应用软件如Office、WPS、AutoCAD、Photoshop等。
S202,获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本。
具体的,在本发明实施例中,所述软件的脚本信息与软件一一对应,通过软件的脚本信息可以确定相对应的软件,所述服务器的地址信息用于提供软件存储在服务中的地址,通过服务器的地址信息可以确定相对应的软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
需要说明的是,将所述软件的脚本信息以及所述服务器的地址信息生成第一软件脚本,例如,将所述软件的脚本信息以及所述服务器的地址信息记录至一个脚本文件中,将该脚本文件作为第一软件脚本;在该第一软件脚本中存储着每个软件所对应的脚本信息以及该软件在服务器中的地址信息,通过生成第一软件脚本能够使每个软件的下载安装信息有序的存储,可以防止软件下载安装信息的丢失,并且提高软件下载安装的效率。
S203,获取所有第一软件脚本并生成第二软件脚本。
具体的,在本发明实施例中,获取所有第一软件脚本并生成第二软件脚本,所述第二软件脚本中可以包括一个或者多个第一软件脚本,在所述第二软件脚本中存储着每个软件所对应的第一软件脚本,通过生成第二软件脚本可以提高数据的传输效率。
S204,若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中。
具体的,在本发明实施例中,在创建虚拟机后,设置虚拟机的虚拟路由器,并将生成的第二软件脚本上传到所述虚拟机的虚拟路由器的目录中,以方便虚拟机获取该第二软件脚本以完成软件的安装与配置。
需要说明的是,所述将第二软件脚本上传到所述虚拟机的虚拟路由器的目录,指的是在虚拟机联网的情况下,用户可以在虚拟机的虚拟路由器的目录中选择相对应的服务器,在服务器中选择相对应的第二软件脚本,选择第二软件脚本并将第二软件脚本上传至虚拟机的虚拟路由器的目录中。
S205,创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本。
具体的,在本发明实施例中,将上传到所述虚拟机的虚拟路由器目录中的第二软件脚本进行拆分并生成每个第一软件脚本,由于所述第二软件脚本包括一个或者多个第一软件脚本,所述第二软件脚本以一个第一软件脚本为拆分单元,将第二软件脚本中的一个或者多个第一软件脚本拆分并生成每个第一软件脚本。
其中,所述第二软件脚本包括创建脚本,如果所述第二软件脚本包括创建脚本,在创建所述虚拟机后,所述创建脚本被调用并对所述软件进行安装,具体地,对所述创建脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;所述第二软件脚本还包括开机脚本和关机脚本,若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装,具体地,对所述开机脚本或者关机脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;更具体地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
S206,根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。
具体的,在本发明实施例中,通过所述第一软件脚本中软件的脚本信息可以确定相对应的软件,通过服务器的地址信息可以确定相对应软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
S207,显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联。
S208,根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
具体的,在本发明实施例中,所述区域指的是服务器的分布区域,每个区域包括若干服务器,在虚拟机中显示分布区域以及已经部署的软件,便可以根据虚拟机中显示的分布区域以及已经部署的软件,确定所述软件对应的服务器。更具体的,所述服务器和所述软件建立有映射关系,该映射关系为区域和服务器相关联,服务器与软件相关联,可以根据区域与服务器之间的映射关系以及服务器与软件之间的映射关系,确定所述软件对应的服务器。
由以上可见,在本发明实施例中,通过在虚拟机中显示区域和部署的软件,根据用户选择的区域和软件,按照映射关系选择所述服务器,从而实现在虚拟机中通过区域和已经部署的软件确定相对应的服务器,防止虚拟机中部署软件的服务器信息因丢失而无法确定相对应的服务器。
请参阅图3,对应上述一种虚拟机软件部署方法,本发明实施例还提出一种终端,该终端100包括:第一选择单元101、第一获取单元102、第二获取单元103、创建单元104、拆分单元105、安装单元106。
其中第一选择单元101,用于若接收到用户的选择指令,选择服务器和需要部署的软件。具体的,在本发明实施例中,所述服务器可以包括文件服务器、数据库服务器和应用程序服务器,在所述服务器上存储有多种软件,用户可以选择所需的服务器以及与该服务器相对应的软件,该软件用于实现用户在虚拟机上的软件部署。所述软件可以是系统软件,系统软件为计算机使用提供最基本的功能,系统软件可分为操作系统和支撑软件,其中操作系统是最基本的软件,操作系统如Linux、Mac OS、Unix、Windows等,支撑软件是支撑计算机中各种软件的开发与维护的软件,支撑软件如环境数据库、各种接口软件和一系列的基本工具等;所述软件还可以是应用软件,应用软件是为了某种特定的用途而被开发者开发可供使用的软件,应用软件如Office、WPS、AutoCAD、Photoshop等。
第一获取单元102,用于获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本。具体的,在本发明实施例中,所述软件的脚本信息与软件一一对应,通过软件的脚本信息可以确定相对应的软件,所述服务器的地址信息用于提供软件存储在服务中的地址,通过服务器的地址信息可以确定相对应的软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
需要说明的是,将所述软件的脚本信息以及所述服务器的地址信息生成第一软件脚本,例如,将所述软件的脚本信息以及所述服务器的地址信息记录至一个脚本文件中,将该脚本文件作为第一软件脚本;在该第一软件脚本中存储着每个软件所对应的脚本信息以及该软件在服务器中的地址信息,通过生成第一软件脚本能够使每个软件的下载安装信息有序的存储,可以防止软件下载安装信息的丢失,并且提高软件下载安装的效率。
第二获取单元103,用于获取所有第一软件脚本并生成第二软件脚本。具体的,在本发明实施例中,获取所有第一软件脚本并生成第二软件脚本,所述第二软件脚本中可以包括一个或者多个第一软件脚本,在所述第二软件脚本中存储着每个软件所对应的第一软件脚本,通过生成第二软件脚本可以提高数据的传输效率。
创建单元104,用于若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中。具体的,在本发明实施例中,在创建虚拟机后,设置虚拟机的虚拟路由器,并将生成的第二软件脚本上传到所述虚拟机的虚拟路由器的目录中,以方便虚拟机获取该第二软件脚本以完成软件的安装与配置。
需要说明的是,所述将第二软件脚本上传到所述虚拟机的虚拟路由器的目录,指的是在虚拟机联网的情况下,用户可以在虚拟机的虚拟路由器的目录中选择相对应的服务器,在服务器中选择相对应的第二软件脚本,选择第二软件脚本并将第二软件脚本上传至虚拟机的虚拟路由器的目录中。
拆分单元105,用于创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本。具体的,在本发明实施例中,将上传到所述虚拟机的虚拟路由器目录中的第二软件脚本进行拆分并生成每个第一软件脚本,由于所述第二软件脚本包括一个或者多个第一软件脚本,所述第二软件脚本以一个第一软件脚本为拆分单元,将第二软件脚本中的一个或者多个第一软件脚本拆分并生成每个第一软件脚本。
其中,所述第二软件脚本包括创建脚本,如果所述第二软件脚本包括创建脚本,在创建所述虚拟机后,所述创建脚本被调用并对所述软件进行安装,具体地,对所述创建脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;所述第二软件脚本还包括开机脚本和关机脚本,若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装,具体地,对所述开机脚本或者关机脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;更具体地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
安装单元106,用于根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。具体的,在本发明实施例中,通过所述第一软件脚本中软件的脚本信息可以确定相对应的软件,通过服务器的地址信息可以确定相对应软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
由以上可见,在本发明实施例中,通过获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本,并根据第一软件脚本并生成第二软件脚本,在创建虚拟机时,将第二软件脚本上传到与虚拟机对应的虚拟路由器的目录中,在创建虚拟机后,将第二软件脚本进行拆分以生成每个第一软件脚本以进行安装相对应的软件,从而可以实现云环境下的软件自动化安装,其中,该自动化软件安装过程简单、灵活。
请参阅图4,对应上述一种虚拟机软件部署方法,本发明实施例还提出一种终端,该终端200包括:第一选择单元201、第一获取单元202、第二获取单元203、创建单元204、拆分单元205、安装单元206、显示单元207、第二选择单元208。
其中第一选择单元201,用于若接收到用户的选择指令,选择服务器和需要部署的软件。具体的,在本发明实施例中,所述服务器可以包括文件服务器、数据库服务器和应用程序服务器,在所述服务器上存储有多种软件,用户可以选择所需的服务器以及与该服务器相对应的软件,该软件用于实现用户在虚拟机上的软件部署。所述软件可以是系统软件,系统软件为计算机使用提供最基本的功能,系统软件可分为操作系统和支撑软件,其中操作系统是最基本的软件,操作系统如Linux、Mac OS、Unix、Windows等,支撑软件是支撑计算机中各种软件的开发与维护的软件,支撑软件如环境数据库、各种接口软件和一系列的基本工具等;所述软件还可以是应用软件,应用软件是为了某种特定的用途而被开发者开发可供使用的软件,应用软件如Office、WPS、AutoCAD、Photoshop等。
第一获取单元202,用于获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本。具体的,在本发明实施例中,所述软件的脚本信息与软件一一对应,通过软件的脚本信息可以确定相对应的软件,所述服务器的地址信息用于提供软件存储在服务中的地址,通过服务器的地址信息可以确定相对应的软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
需要说明的是,将所述软件的脚本信息以及所述服务器的地址信息生成第一软件脚本,例如,将所述软件的脚本信息以及所述服务器的地址信息记录至一个脚本文件中,将该脚本文件作为第一软件脚本;在该第一软件脚本中存储着每个软件所对应的脚本信息以及该软件在服务器中的地址信息,通过生成第一软件脚本能够使每个软件的下载安装信息有序的存储,可以防止软件下载安装信息的丢失,并且提高软件下载安装的效率。
第二获取单元203,用于获取所有第一软件脚本并生成第二软件脚本。具体的,在本发明实施例中,获取所有第一软件脚本并生成第二软件脚本,所述第二软件脚本中可以包括一个或者多个第一软件脚本,在所述第二软件脚本中存储着每个软件所对应的第一软件脚本,通过生成第二软件脚本可以提高数据的传输效率。
创建单元204,用于若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中。具体的,在本发明实施例中,在创建虚拟机后,设置虚拟机的虚拟路由器,并将生成的第二软件脚本上传到所述虚拟机的虚拟路由器的目录中,以方便虚拟机获取该第二软件脚本以完成软件的安装与配置。
需要说明的是,所述将第二软件脚本上传到所述虚拟机的虚拟路由器的目录,指的是在虚拟机联网的情况下,用户可以在虚拟机的虚拟路由器的目录中选择相对应的服务器,在服务器中选择相对应的第二软件脚本,选择第二软件脚本并将第二软件脚本上传至虚拟机的虚拟路由器的目录中。
拆分单元205,用于创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本。具体的,在本发明实施例中,将上传到所述虚拟机的虚拟路由器目录中的第二软件脚本进行拆分并生成每个第一软件脚本,由于所述第二软件脚本包括一个或者多个第一软件脚本,所述第二软件脚本以一个第一软件脚本为拆分单元,将第二软件脚本中的一个或者多个第一软件脚本拆分并生成每个第一软件脚本。
其中,所述第二软件脚本包括创建脚本,如果所述第二软件脚本包括创建脚本,在创建所述虚拟机后,所述创建脚本被调用并对所述软件进行安装,具体地,对所述创建脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;所述第二软件脚本还包括开机脚本和关机脚本,若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装,具体地,对所述开机脚本或者关机脚本进行拆分以生成每个第一软件脚本,通过所述第一软件脚本中的软件的脚本信息和服务器的地址信息对服务器中的软件进行安装;更具体地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
安装单元206,用于根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。具体的,在本发明实施例中,通过所述第一软件脚本中软件的脚本信息可以确定相对应的软件,通过服务器的地址信息可以确定相对应软件的下载安装地址,因此,通过所述软件的脚本信息和所述软件相对应的服务器的地址信息可以从服务器中找到并下载安装相对应的软件。
显示单元207,用于显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联。
第二选择单元208,用于根据用户选择的区域和软件,按照所述映射关系选择所述服务器。具体的,在本发明实施例中,所述区域指的是服务器的分布区域,每个区域包括若干服务器,在虚拟机中显示分布区域以及已经部署的软件,便可以根据虚拟机中显示的分布区域以及已经部署的软件,确定所述软件对应的服务器。更具体的,所述服务器和所述软件建立有映射关系,该映射关系为区域和服务器相关联,服务器与软件相关联,可以根据区域与服务器之间的映射关系以及服务器与软件之间的映射关系,确定所述软件对应的服务器。
由以上可见,在本发明实施例中,通过在虚拟机中显示区域和部署的软件,根据用户选择的区域和软件,按照映射关系选择所述服务器,从而实现在虚拟机中通过区域和已经部署的软件确定相对应的服务器,防止虚拟机中部署软件的服务器信息因丢失而无法确定相对应的服务器。
图5为本发明一种虚拟机软件部署设备的结构组成示意图。如图5所示,该设备300可包括:输入装置301、输出装置302、收发装置303、存储器304以及处理器305,其中:
所述输入装置301,用于接收外部访问控制设备的输入数据。具体实现中,本发明实施例所述的输入装置301可包括键盘、鼠标、光电输入装置、声音输入装置、触摸式输入装置、扫描仪等。
所述输出装置302,用于对外输出访问控制设备的输出数据。具体实现中,本发明实施例所述的输出装置302可包括显示器、扬声器、打印机等。
所述收发装置303,用于通过通信链路向其他设备发送数据或者从其他设备接收数据。具体实现中,本发明实施例的收发装置303可包括射频天线等收发器件。
所述存储器304,用于存储带有各种功能的程序数据。本发明实施例中存储器304存储的数据包括可调用并运行的程序数据。具体实现中,本发明实施例的存储器304可以是系统存储器,比如,挥发性的(诸如RAM),非易失性的(诸如ROM,闪存等),或者两者的结合。具体实现中,本发明实施例的存储器304还可以是系统之外的外部存储器,比如,磁盘、光盘、磁带等。
所述处理器305,用于运行所述存储器304中存储的程序数据,并执行如下操作:
若接收到用户的选择指令,选择服务器和需要部署的软件;
获取每个软件的脚本信息和与所述软件相对应的服务器的地址信息并生成第一软件脚本;
获取所有第一软件脚本并生成第二软件脚本;
若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;
创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;
根据拆分后生成的第一软件脚本中软件的脚本信息以及服务器的地址信息安装相对应的软件。
进一步地,所述处理器305还执行如下操作:
显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联;
根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
进一步地,所述第二软件脚本包括创建脚本;在创建所述虚拟机后,所述创建脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本还包括开机脚本和关机脚本;若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装。
进一步地,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
本领域技术人员可以理解,图5中示出的虚拟机软件部署设备的实施例并不构成对虚拟机软件部署设备具体构成的限定,在其他实施例中,虚拟机软件部署设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,虚拟机软件部署设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图5所示实施例一致,在此不再赘述。
本发明所有实施例中的单元可以通过通用集成电路,例如CPU(CentralProcessing Unit,中央处理器),或通过ASIC(Application Specific IntegratedCircuit,专用集成电路)来实现。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种虚拟机软件部署方法,其特征在于,所述方法包括:
若接收到用户的选择指令,选择服务器和需要部署的软件;
获取每个软件的脚本信息和所述软件存储在服务器中的地址并生成第一软件脚本;
获取所有第一软件脚本并生成第二软件脚本;
若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;
创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;
根据拆分后生成的第一软件脚本中软件的脚本信息以及软件存储在服务器中的地址安装相对应的软件。
2.如权利要求1所述的方法,其特征在于,所述第二软件脚本包括创建脚本;
在创建所述虚拟机后,所述创建脚本被调用并对软件进行安装。
3.如权利要求1所述的方法,其特征在于,
所述第二软件脚本还包括开机脚本和关机脚本;
若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装。
4.如权利要求1所述的方法,其特征在于,
所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
5.如权利要求2-4任意一项所述的方法,其特征在于,所述方法还包括:
显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联;
根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
6.一种终端,其特征在于,所述终端包括:
第一选择单元,用于若接收到用户的选择指令,选择服务器和需要部署的软件;
第一获取单元,用于获取每个软件的脚本信息和所述软件存储在服务器中的地址并生成第一软件脚本;
第二获取单元,用于获取所有第一软件脚本并生成第二软件脚本;
创建单元,用于若接收到创建指令,创建虚拟机并将所述第二软件脚本上传到与所述虚拟机对应的虚拟路由器的目录中;
拆分单元,用于创建虚拟机后,将所述第二软件脚本进行拆分以生成每个第一软件脚本;
安装单元,用于根据拆分后生成的第一软件脚本中软件的脚本信息以及软件存储在服务器中的地址安装相对应的软件。
7.如权利要求6所述的终端,其特征在于,所述第二软件脚本包括创建脚本;
在创建所述虚拟机后,所述创建脚本被调用并对软件进行安装。
8.如权利要求6所述的终端,其特征在于,
所述第二软件脚本还包括开机脚本和关机脚本;
若所述虚拟机开机或者关机,所述开机脚本或者关机脚本被调用并对软件进行安装。
9.如权利要求6所述的终端,其特征在于,所述第二软件脚本包括创建脚本、开机脚本和关机脚本中的至少一种。
10.如权利要求7-9任意一项所述的终端,其特征在于,所述终端还包括:
显示单元,用于显示区域和部署的软件,所述区域中包括若干服务器,所述服务器和所述软件建立有映射关系,其中该映射关系为:区域和服务器相关联,服务器与软件相关联;第二选择单元,用于根据用户选择的区域和软件,按照所述映射关系选择所述服务器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710146730.6A CN107678751B (zh) | 2017-03-13 | 2017-03-13 | 一种虚拟机软件部署方法及终端 |
PCT/CN2017/090921 WO2018166108A1 (zh) | 2017-03-13 | 2017-06-29 | 一种虚拟机软件部署方法、终端、设备以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710146730.6A CN107678751B (zh) | 2017-03-13 | 2017-03-13 | 一种虚拟机软件部署方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107678751A CN107678751A (zh) | 2018-02-09 |
CN107678751B true CN107678751B (zh) | 2020-06-09 |
Family
ID=61134101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710146730.6A Active CN107678751B (zh) | 2017-03-13 | 2017-03-13 | 一种虚拟机软件部署方法及终端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107678751B (zh) |
WO (1) | WO2018166108A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111475198B (zh) * | 2020-04-14 | 2023-01-24 | 中国人民解放军战略支援部队信息工程大学 | 一种网络服务器的拟态化方法及装置 |
CN112269636B (zh) * | 2020-10-20 | 2022-11-11 | 苏州浪潮智能科技有限公司 | 云数据中心虚拟机安装软件的方法、系统、服务器及介质 |
CN113900670B (zh) * | 2021-12-08 | 2022-03-18 | 深圳市名竹科技有限公司 | 集群服务器应用部署系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055388A (zh) * | 2016-06-25 | 2016-10-26 | 国云科技股份有限公司 | 一种云平台应用自动部署框架 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7895348B2 (en) * | 2007-10-17 | 2011-02-22 | Dispersive Networks Inc. | Virtual dispersive routing |
CN103677858B (zh) * | 2012-08-30 | 2019-09-10 | 南京中兴新软件有限责任公司 | 一种云环境中虚拟机软件管理的方法、系统及设备 |
CN102932408B (zh) * | 2012-09-21 | 2016-02-03 | 中国电信股份有限公司 | 一种服务器集群的管理方法和平台 |
US8904388B2 (en) * | 2013-01-10 | 2014-12-02 | Vce Company, Llc | Scripting language executor service for applications |
CN103530162B (zh) * | 2013-10-22 | 2016-05-11 | 中国科学院信息工程研究所 | 一种虚拟机在线自动软件安装的方法及系统 |
CN103605570A (zh) * | 2013-11-18 | 2014-02-26 | 浪潮(北京)电子信息产业有限公司 | 一种基于虚拟机模板自动部署应用的方法及系统 |
CN104346195B (zh) * | 2014-06-05 | 2016-05-25 | 腾讯科技(深圳)有限公司 | 软件安装方法和系统 |
CN104572202B (zh) * | 2015-01-08 | 2018-05-04 | 浪潮电子信息产业股份有限公司 | 一种云计算下企业级应用软件部署的方法 |
-
2017
- 2017-03-13 CN CN201710146730.6A patent/CN107678751B/zh active Active
- 2017-06-29 WO PCT/CN2017/090921 patent/WO2018166108A1/zh active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055388A (zh) * | 2016-06-25 | 2016-10-26 | 国云科技股份有限公司 | 一种云平台应用自动部署框架 |
Also Published As
Publication number | Publication date |
---|---|
CN107678751A (zh) | 2018-02-09 |
WO2018166108A1 (zh) | 2018-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9519654B2 (en) | Method, device, processing center and system for desktop synchronization | |
CN111930521A (zh) | 用于部署应用的方法、装置、电子设备及可读存储介质 | |
CN107678751B (zh) | 一种虚拟机软件部署方法及终端 | |
CN104301382A (zh) | 一种云数据备份及恢复方法 | |
CN106878334A (zh) | 云的自动化部署系统和方法 | |
CN107870771B (zh) | 应用程序构建与升级方法及系统 | |
CN113645071B (zh) | 一种集群部署方法、系统、介质及电子终端 | |
WO2014201770A1 (zh) | 移动终端的应用的迁移方法、装置以及系统 | |
CN112256348B (zh) | 一种云服务平台创建方法、系统及电子设备和存储介质 | |
CN108958826B (zh) | 动态配置应用安装包的方法和装置 | |
CN112149035A (zh) | 网站静态资源处理方法及装置 | |
CN107918543B (zh) | 安装包生成的方法、装置、计算机设备和存储介质 | |
CN111984248A (zh) | 页面编辑方法和装置、存储介质及电子装置 | |
CN111782231B (zh) | 服务部署方法和装置 | |
CN105119944A (zh) | 一种应用的启动方法和相关装置 | |
US20200280515A1 (en) | Creating endpoints | |
US20140351220A1 (en) | Configuration of one or more computer devices | |
CN108512882B (zh) | 位置信息的修改方法及装置 | |
EP2928158B1 (en) | Distribution apparatus and distribution method | |
CN112433703A (zh) | 一种组件模块创建方法、装置、服务器及存储介质 | |
CN113746673B (zh) | 裸金属服务器ipxe的部署方法、装置、设备和介质 | |
US20140137092A1 (en) | Information processing apparatus, information processing system, non-transitory computer-readable storage medium having stored therein information processing program, and information processing method | |
CN107301089B (zh) | 一种app部署及调用方法和终端 | |
US11372627B2 (en) | System and method for providing integrated development environment (IDE) for programmable software system | |
RU2013146656A (ru) | Способ и система одновременной установки множества приложений с помощью восстановления ложного резервного архива |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |