产品组件安装部署的方法和装置、电子设备和存储介质与流程

文档序号:32613314发布日期:2022-12-20 20:41阅读:38来源:国知局
产品组件安装部署的方法和装置、电子设备和存储介质与流程

1.本技术涉及配置服务技术领域,尤其涉及一种产品组件安装部署的方法和装置、电子设备和存储介质。


背景技术:

2.目前,常用的风场产品都部署在风场站端安全i区,其中,安全i区为实时控制区,安全等级高,网络环境与互联网隔绝。因此,服务人员到现场对产品安装部署时,需要手动复制程序安装包、安装脚本、配置文件等文件到服务器上。
3.这样就导致产品复杂度增加,产品组件增多,安装包增多,整个产品的安装包大小也随之增加。每次安装更新,都需要全复制所有组件的安装包,耗时巨大,浪费人力。
4.因此,相关技术中每次安装更新都需要复制所有组件的安装包,耗时巨大,浪费人力的问题。


技术实现要素:

5.本技术提供了一种产品组件安装部署的方法和装置、电子设备和存储介质,以至少解决相关技术中每次安装更新都需要复制所有组件的安装包,耗时巨大,浪费人力的问题。
6.根据本技术实施例的一个方面,提供了一种产品组件安装部署的方法,该方法包括:
7.在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,所述标识信息用于唯一指示所述目标对象;
8.根据所述标识信息获取目标配置文件;
9.从所述目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,所述配置服务用于管理所述组件对象对应的文件;
10.获取并下载所述第一镜像和所述第二镜像内均已更新的目标子集;
11.将所述目标子集安装在目标服务器上,并在接收到用于表征所述目标服务器处于运行的第二指示的情况下,按照所述目标配置文件中声明的各个组件对象的启动顺序,从所述第二镜像中获取与所述目标子集内的每个所述组件对象对应的目标文件,基于所述目标文件完成安装部署。
12.根据本技术实施例的另一个方面,还提供了一种产品组件安装部署的装置,该装置包括:
13.第一获取模块,用于在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,所述标识信息用于唯一指示所述目标对象;
14.第二获取模块,用于根据所述标识信息获取目标配置文件;
15.第三获取模块,用于从所述目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,所述配置服务用于管理所述组件对象对应的文件;
16.第四获取模块,用于获取并下载所述第一镜像和所述第二镜像内均已更新的目标子集;
17.部署模块,用于将所述目标子集安装在目标服务器上,并在接收到用于表征所述目标服务器处于运行的第二指示的情况下,按照所述目标配置文件中声明的各个组件对象的启动顺序,从所述第二镜像中获取与所述目标子集内的每个所述组件对象对应的目标文件,基于所述目标文件完成安装部署。
18.可选地,第二获取模块,包括:
19.第一获取单元,用于获取与所述标识信息相对应的最新安装包;
20.第二获取单元,用于从所述最新安装包中获取所述目标配置文件。
21.可选地,该装置还包括:
22.连接单元,用于在将所述目标子集安装在目标服务器上之前,将所述目标子集所处第一网络与所述目标服务器所处第二网络进行连接;
23.推送单元,用于将所述目标子集推送至所述目标服务器上。
24.可选地,部署模块,包括:
25.第三获取单元,用于从所述虚拟机中获取到基础安装包;
26.安装单元,用于将所述基础安装包和所述目标子集安装在所述目标服务器上。
27.可选地,该装置还包括:
28.第五获取模块,用于在所述根据所述标识信息获取目标配置文件之前,获取多个目标产品下的多个所述组件对象和所述配置服务,其中,所述目标产品均包含于所述目标对象内;
29.生成模块,用于利用目标命令工具将所述组件对象生成第一镜像,利用所述目标命令工具将所述配置服务生成第二镜像;
30.得到模块,用于根据所述第一镜像和所述第二镜像,得到所述目标配置文件;
31.上传模块,用于将所述目标配置文件作为安装包,上传到云端的分布式存储服务上。
32.可选地,该装置还包括:
33.确定模块,用于在所述获取多个目标产品下的多个所述组件对象和所述配置服务之前,确定所述目标产品的当前版本;
34.判断模块,用于判断所述当前版本是否正确;
35.选择模块,用于在确定所述当前版本正确的情况下,选择所述目标产品下的多个所述组件对象。
36.可选地,该装置还包括:
37.第六获取模块,用于在所述从所述第二镜像中获取与所述目标子集内的每个所述组件对象对应的目标文件之前,获取所述配置服务中设置的预设权限;
38.识别模块,用于在从所述第二镜像中获取所述目标文件时,识别当前用户的用户权限;
39.第七获取模块,用于在确定所述用户权限与所述预设权限相一致的情况下,允许从所述第二镜像中获取所述目标文件。
40.根据本技术实施例的又一个方面,还提供了一种电子设备,包括处理器、通信接
口、存储器和通信总线,其中,处理器、通信接口和存储器通过通信总线完成相互间的通信;其中,存储器,用于存储计算机程序;处理器,用于通过运行所述存储器上所存储的所述计算机程序来执行上述任一实施例中的方法步骤。
41.根据本技术实施例的又一个方面,还提供了一种计算机可读的存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一实施例中的方法步骤。
42.在本技术实施例中,通过在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;根据标识信息获取目标配置文件;从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;获取并下载第一镜像和第二镜像内均已更新的目标子集;将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。由于本技术实施例安装包仅仅是一个目标配置文件,极大的减小了安装包的大小,提高打包速度,同时由于虚拟机的缓存机制,只需要下载各镜像更新部分,不需要全部下载,减少每次安装部署需要下载的文件大小,减少了服务人员安装部署周期,提高了效率,节省人力,进而解决了相关技术中每次安装更新都需要复制所有组件的安装包,耗时巨大,浪费人力的问题。
附图说明
43.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
44.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
45.图1是根据本技术实施例的一种可选的产品组件安装部署的方法的流程示意图;
46.图2是根据本技术实施例的一种可选的产品组件安装部署方法的主流程示意图;
47.图3是根据本技术实施例的一种可选的产品组件安装包生成流程示意图;
48.图4是根据本技术实施例的一种可选的安装部署的更新流程示意图;
49.图5是根据本技术实施例的一种可选的产品组件安装部署的装置的结构框图;
50.图6是根据本技术实施例的一种可选的电子设备的结构框图。
具体实施方式
51.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
52.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第
二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
53.目前,常用的风场产品都部署在风场站端安全i区,其中,安全i区为实时控制区,安全等级高,网络环境与互联网隔绝。因此,服务人员到现场对产品安装部署时,需要手动复制程序安装包、安装脚本、配置文件等文件到服务器上。这时每次安装更新,都需要全复制所有组件的安装包,耗时巨大,浪费人力。
54.为了解决上述问题,本技术实施例提出一种产品组件安装部署的方法,该方法可以应用于一运维系统上,如图1所示,该方法包括:
55.步骤s101,在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;
56.步骤s102,根据标识信息获取目标配置文件;
57.步骤s103,从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;
58.步骤s104,获取并下载第一镜像和第二镜像内均已更新的目标子集;
59.步骤s105,将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。
60.可选地,在服务人员打开运维笔记本后,若接收到虚拟机处于运行的第一指示的情况下,则开始执行部署,这时服务人员将会输入目标对象,比如风场的标识信息,该标识信息可以是风场名称或id等,只要可以唯一表征出目标对象都可以。这里的虚拟机可以为vmware,可以使用市场上其它的虚拟机产品,如parallel,virtualbox等。
61.部署程序利用标识信息获取目标配置文件docker-compose.yml时,部署程序会根据时间戳序列自动下载当前风场的最新安装包,然后从最新安装包中获取目标配置文件:docker_compose.yml,在该目标配置文件中有属于多个组件对象(后文也称为组件)的第一镜像和配置服务的第二镜像,这时获取到各个组件对象的第一镜像以及配置服务的第二镜像后,在镜像下载时,利用虚拟机缓存优势,只需要下载第一镜像和第二镜像更新部分(即目标子集),不需要全部下载。
62.其中,上述通过设置配置服务,完成配置文件的统一管理。方便配置文件版本的追溯,同时配置服务为镜像,小巧灵活,适用于小体应用。
63.之后断开运维笔记本服务器与互联网的连接,并连接到部署服务器所在的局域网。根据部署程序的提示,选择要安装产品的目标服务器。之后,自动完成产品在目标服务器上的备份、安装或更新操作。服务人员确认无问题后,在接收到用于表征目标服务器处于运行的第二指示的情况下,通过在目标服务器上运行docker-compose up

d指令,启动应用。启动时,按照目标配置文件中声明的各个组件依赖的启动顺序分别启动,各组件自动从
第二镜像的配置服务中获取自己的目标文件,基于目标文件完成安装部署。
64.需要说明的是,上述配置服务用于管理组件对象对应的文件,这里的文件通常是一些配置文件,同时配置服务在这里起到类似中介的角色,由于配置服务于管理各个组件对象的配置文件,所以各个组件从配置服务中获取到自己的目标文件即可。
65.在本技术实施例中,通过在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;根据标识信息获取目标配置文件;从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;获取并下载第一镜像和第二镜像内均已更新的目标子集;将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。由于本技术实施例安装包仅仅是一个目标配置文件,极大的减小了安装包的大小,提高打包速度,同时由于虚拟机的缓存机制,只需要下载各镜像更新部分,不需要全部下载,减少每次安装部署需要下载的文件大小,减少了服务人员安装部署周期,提高了效率,节省人力,进而解决了相关技术中每次安装更新都需要复制所有组件的安装包,耗时巨大,浪费人力的问题。
66.基于上述各实施例的内容,作为一种可选实施例,在将目标子集安装在目标服务器上之前,方法还包括:
67.将目标子集所处第一网络与目标服务器所处第二网络进行连接;
68.将目标子集推送至目标服务器上。
69.可选地,获取到目标子集(也即是运维笔记本)所处于的第一网络,目标服务器所处第二网络,将第一网络接入到第二网络中,也即是连接到部署目标服务器所在的局域网,将目标子集推送至目标服务器上。
70.基于上述各实施例的内容,作为一种可选实施例,将目标子集安装在目标服务器上,包括:
71.从虚拟机中获取到基础安装包;
72.将基础安装包和目标子集安装在目标服务器上。
73.可选地,通常情况下,系统的软件包分两部分组成,分别为业务软件包和基础软件包。业务软件包,即为了完成系统功能,编写的业务组件。基础软件包,即应用安装运行前,所依赖的软件环境,比如docker、sql脚本、操作系统预设置等。基础软件,一般只需要第一次安装时,安装设置完成即可,不需要每次部署都更新。如此设置,可以减少之后系统更新软件包大小。
74.这时,除了下载各镜像更新部分之外,还会自动判断并更新虚拟机中的基础软件包,无更新,不需要下载。再将基础安装包和目标子集安装在目标服务器上,之后,断开运维笔记本服务器和互联网的连接,并连接到部署目标服务器所在的局域网。
75.在本技术实施例中,利用虚拟机作为中间环节,不仅保证了现场服务离线环境的要求,而且,还实现了应用的半自动化部署,即软件包的自动下载和更新,减少部署过程的复杂度,降低服务人员的学习成本,提高部署效率。
76.基于上述各实施例的内容,作为一种可选实施例,如图2所示,图2是根据本技术实
施例的一种可选的产品组件安装部署方法的主流程示意图。具体为:
77.通过docker-compose技术,系统打包生成安装包,安装包只需要一个docker-compose.yml配置文件,并是通过系统自动生成。
78.系统将安装包上传至云端;
79.风场部署升级时,在自己电脑的虚拟机环境,从云端下载安装包部署,实现自动下载各镜像更新部分,并传递到要安装产品的目标服务器上,安装时实现自动备份。
80.最后确定无问题后,使用一条指令docker-compose up-d启动系统。系统启动时,各组件自动从配置服务同步各自配置文件。
81.基于上述各实施例的内容,作为一种可选实施例,在根据标识信息获取目标配置文件之前,方法还包括:
82.获取多个目标产品下的多个组件对象和配置服务,其中,目标产品均包含于目标对象内;
83.利用目标命令工具将组件对象生成第一镜像,利用目标命令工具将配置服务生成第二镜像;
84.根据第一镜像和第二镜像,得到目标配置文件;
85.将目标配置文件作为安装包,上传到云端的分布式存储服务上。
86.可选地,获取多个目标产品下的多个组件对象和配置服务,对于多个目标产品的各个组件代码,通过gitlab(仓库管理系统的开源项目)管理,通过文件.gitlab-ci.yml来管理组件的版本。经过测试完成后的代码,提交到gitlab后,通过项目设置的gitlab的钩子函数,触发gitlab-ci工具,完成对代码的自动编译、自动构建、并利用目标命令工具,即docker-compose技术,生成第一镜像,并自动提交镜像到私有的镜像仓库harbor上。
87.需要了解的是,在第一镜像中包含组件,组件间的通信以及组件启动顺序等关联关系。
88.对于各个组件对应的文件(可以是配置文件),也通过gitlab管理。一个文件夹,对应一个版本,文件夹名称为文件的版本号。打包时,根据产品的版本号,确定文件的版本。根据确定的文件,利用目标命令工具,即docker-compose技术,自动生成一个配置服务镜像,即第二镜像,并将第二镜像推送到私有镜像仓库harbor上。
89.根据第一镜像内预先设置的各个组件启动顺序,最后打包会生成一个docker-compose.yml目标配置文件,作为安装包,并上传到云端分布式存储服务cos上。
90.在本技术实施例中,将docker-compose.yml作为安装包,并上传到云端分布式存储服务cos上,在需要时在从云端下载,节省本地空间。
91.基于上述各实施例的内容,作为一种可选实施例,如图3所示,图3是根据本技术实施例的一种可选的产品组件安装包生成流程示意图,具体为:
92.系统选择风场、产品以及版本、组件以及版本;
93.开始“打包”;
94.从git仓库获取目标产品当前版本对应的配置文件;
95.生成配置文件的镜像,并推送至镜像仓库;
96.根据风场、产品、组件,生成目标配置文件docker-compose.yml;
97.上传docker-compose.yml到云端。
98.基于上述各实施例的内容,作为一种可选实施例,在获取多个目标产品下的多个组件对象和配置服务之前,方法还包括:
99.确定目标产品的当前版本;
100.判断当前版本是否正确;
101.在确定当前版本正确的情况下,选择目标产品下的多个组件对象。
102.可选地,在生成产品安装包之前,先确认产品内的目标产品的当前版本是否正确,如果不正确,先创建自己需要的版本。创建版本时,可以选择系统各组件的版本,然后打包时,可以通过开关,选择需要的组件。如果正确,则直接获取目标产品下的多个组件即可。
103.基于上述各实施例的内容,作为一种可选实施例,在从第二镜像中获取与目标子集内的每个组件对象对应的目标文件之前,方法还包括:
104.获取配置服务中设置的预设权限;
105.在从第二镜像中获取目标文件时,识别当前用户的用户权限;
106.在确定用户权限与预设权限相一致的情况下,允许从第二镜像中获取目标文件。
107.可选地,在本技术实施例中,提前在配置服务中设置了预设权限,这样从第二镜像中获取目标文件,会根据当前用户的用户权限,确定当前用户能否对配置文件进行修改。
108.即用户权限与预设权限相一致的情况下,允许从第二镜像中获取目标文件,这样也就可以修改目标文件了;否则不可修改。
109.在本技术实施例中,通过对配置服务和组件间设置用户权限,解决现场直接修改配置文件的问题,同时方便配置文件版本追溯,方便问题的排查。
110.基于上述各实施例的内容,作为一种可选实施例,如图4所示,图4是根据本技术实施例的一种可选的安装部署的更新流程示意图,具体为:
111.在服务人员打开运维笔记本后,查看当前的运维笔记本是否安装了虚拟机;
112.若未安装,则从云端下载虚拟机并安装至运维笔记本中;
113.若已安装,则双击虚拟机桌面上的部署程序,开始执行部署;
114.判断部署程序是否有更新;若有更新,则更新部署程序;
115.否则,判断基础软件包是否有更新;
116.若有更新,则下载更新基础软件包;否则,从云端下载对应风场的安装包docker-compose.yml;
117.解析docker-compose.yml并从镜像仓库中下载各镜像更新部分;
118.断开外网,连接目标服务器;
119.推送基础包和各镜像更新部分到目标服务器上;
120.启动系统服务,启动时,各组件自动从配置服务中同步配置文件。
121.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
122.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多
情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom(read-only memory,只读存储器)/ram(random access memory,随机存取存储器)、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例的方法。
123.根据本技术实施例的另一个方面,还提供了一种用于实施上述产品组件安装部署的方法的产品组件安装部署的装置。图5是根据本技术实施例的一种可选的产品组件安装部署的装置的结构框图,如图5所示,该装置可以包括:
124.第一获取模块501,用于在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;
125.第二获取模块502,与第一获取模块501相连,用于根据标识信息获取目标配置文件;
126.第三获取模块503,与第二获取模块502相连,用于从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;
127.第四获取模块504,与第三获取模块503相连,用于获取并下载第一镜像和第二镜像内均已更新的目标子集;
128.部署模块505,与第四获取模块504相连,用于将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。
129.需要说明的是,该实施例中的第一获取模块501可以用于执行上述步骤s101,该实施例中的第二获取模块502可以用于执行上述步骤s102,该实施例中的第三获取模块503可以用于执行上述步骤s103,该实施例中的第四获取模块504可以用于执行上述步骤s104,该实施例中的部署模块505可以用于执行上述步骤s105。
130.通过上述模块,由于安装包仅仅是一个目标配置文件,极大的减小了安装包的大小,提高打包速度,同时由于虚拟机的缓存机制,只需要下载各镜像更新部分,不需要全部下载,减少每次安装部署需要下载的文件大小,减少了服务人员安装部署周期,提高了效率,节省人力,进而解决了相关技术中每次安装更新都需要复制所有组件的安装包,耗时巨大,浪费人力的问题。
131.作为一种可选的实施例,第二获取模块,包括:
132.第一获取单元,用于获取与标识信息相对应的最新安装包;
133.第二获取单元,用于从最新安装包中获取目标配置文件。
134.作为一种可选的实施例,该装置还包括:
135.连接单元,用于在将目标子集安装在目标服务器上之前,将目标子集所处第一网络与目标服务器所处第二网络进行连接;
136.推送单元,用于将目标子集推送至目标服务器上。
137.作为一种可选的实施例,部署模块,包括:
138.第三获取单元,用于从虚拟机中获取到基础安装包;
139.安装单元,用于将基础安装包和目标子集安装在目标服务器上。
140.作为一种可选的实施例,该装置还包括:
141.第五获取模块,用于在根据标识信息获取目标配置文件之前,获取多个目标产品下的多个组件对象和配置服务,其中,目标产品均包含于目标对象内;
142.生成模块,用于利用目标命令工具将组件对象生成第一镜像,利用目标命令工具将配置服务生成第二镜像;
143.得到模块,用于根据第一镜像和第二镜像,得到目标配置文件;
144.上传模块,用于将目标配置文件作为安装包,上传到云端的分布式存储服务上。
145.作为一种可选的实施例,该装置还包括:
146.确定模块,用于在获取多个目标产品下的多个组件对象和配置服务之前,确定目标产品的当前版本;
147.判断模块,用于判断当前版本是否正确;
148.选择模块,用于在确定当前版本正确的情况下,选择目标产品下的多个组件对象。
149.作为一种可选的实施例,该装置还包括:
150.第六获取模块,用于在从第二镜像中获取与目标子集内的每个组件对象对应的目标文件之前,获取配置服务中设置的预设权限;
151.识别模块,用于在从第二镜像中获取目标文件时,识别当前用户的用户权限;
152.第七获取模块,用于在确定用户权限与预设权限相一致的情况下,允许从第二镜像中获取目标文件。
153.根据本技术实施例的又一个方面,还提供了一种用于实施上述产品组件安装部署的方法的电子设备,该电子设备可以是服务器、终端、或者其组合。
154.图6是根据本技术实施例的一种可选的电子设备的结构框图,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601、通信接口602和存储器603通过通信总线604完成相互间的通信,其中,
155.存储器603,用于存储计算机程序;
156.处理器601,用于执行存储器603上所存放的计算机程序时,实现如下步骤:
157.在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;
158.根据标识信息获取目标配置文件;
159.从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;
160.获取并下载第一镜像和第二镜像内均已更新的目标子集;
161.将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。
162.可选地,在本实施例中,上述的通信总线可以是pci(peripheral component interconnect,外设部件互连标准)总线、或eisa(extended industry standard architecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总
线。
163.通信接口用于上述电子设备与其他设备之间的通信。
164.存储器可以包括ram,也可以包括非易失性存储器(non-volatile memory),例如,至少一个磁盘存储器。可选地,存储器还可以是至少一个位于远离前述处理器的存储装置。
165.作为一种示例,如图6所示,上述存储器603中可以但不限于包括上述产品组件安装部署的装置中的第一获取模块501、第二获取模块502、第三获取模块503、第四获取模块504以及部署模块505。此外,还可以包括但不限于上述产品组件安装部署的装置中的其他模块单元,本示例中不再赘述。
166.上述处理器可以是通用处理器,可以包含但不限于:cpu(central processing unit,中央处理器)、np(network processor,网络处理器)等;还可以是dsp(digital signal processing,数字信号处理器)、asic(application specific integrated circuit,专用集成电路)、fpga(field-programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
167.此外,上述电子设备还包括:显示器,用于显示产品组件安装部署的结果。
168.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
169.本领域普通技术人员可以理解,图6所示的结构仅为示意,实施上述产品组件安装部署的方法的设备可以是终端设备,该终端设备可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图6其并不对上述电子设备的结构造成限定。例如,终端设备还可包括比图6中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图6所示的不同的配置。
170.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、rom、ram、磁盘或光盘等。
171.根据本技术实施例的又一个方面,还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行产品组件安装部署的方法的程序代码。
172.可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
173.可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
174.在接收到用于表征虚拟机处于运行的第一指示的情况下,获取目标对象的标识信息,其中,标识信息用于唯一指示目标对象;
175.根据标识信息获取目标配置文件;
176.从目标配置文件中获取属于多个组件对象的第一镜像和配置服务的第二镜像,其中,配置服务用于管理组件对象对应的文件;
177.获取并下载第一镜像和第二镜像内均已更新的目标子集;
178.将目标子集安装在目标服务器上,并在接收到用于表征目标服务器处于运行的第二指示的情况下,按照目标配置文件中声明的各个组件对象的启动顺序,从第二镜像中获取与目标子集内的每个组件对象对应的目标文件,基于目标文件完成安装部署。
179.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例
中对此不再赘述。
180.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、rom、ram、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
181.根据本技术实施例的又一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中;计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一个实施例中的产品组件安装部署的方法步骤。
182.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
183.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例产品组件安装部署的方法的全部或部分步骤。
184.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
185.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
186.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例中所提供的方案的目的。
187.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
188.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1