一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

容器内服务配置修改方法及装置、电子设备及存储介质与流程

2022-04-16 15:29:59 来源:中国专利 TAG:


1.本技术涉及服务配置技术领域,尤其涉及一种容器内服务配置修改方法及装置、电子设备及存储介质。


背景技术:

2.随着计算机技术运用的越来越广泛,对各种运行环境进行配置的频率也越来越高。在配置信息上线之前,需要对各种软件服务进行测试。在相关技术中,由于测试环境场景多样性较高,在对多个容器内服务进行配置时,测试人员需要根据自己的要求调整服务配置,并且需要进出多个容器进行重复调整动作,操作繁琐,效率低下。
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.图1为本技术实施例提供的一种容器内服务配置修改方法的流程图;
38.图2为本技术另一实施例提供的一种容器内服务配置修改方法的流程图;
39.图3为本技术应用例提供的一种容器内服务配置修改方法的流程图;
40.图4为本技术实施例提供的一种容器内服务配置修改装置的框图;
41.图5为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
42.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
43.根据本技术实施例的一个方面,提供了一种容器内服务配置修改方法。可选地,在本实施例中,上述容器内服务配置修改方法可以应用于由终端和服务器所构成的硬件环境中。服务器通过网络与终端进行连接,可通过终端或终端上安装的客户端对服务器上的容器内服务进行配置信息的修改,也可以直接对服务器上的容器内服务进行配置信息的修改。
44.上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:wifi(wireless fidelity,无线保真),蓝牙。终端可以并不限定于为pc、手机、平板电脑等。
45.本技术实施例的容器内服务配置修改方法可以由服务器来执行,也可以由终端来执行,还可以是由服务器和终端共同执行。其中,终端执行本技术实施例的容器内服务配置修改方法也可以是由安装在其上的客户端来执行。
46.以由服务器来执行本实施例中的对象推送方法为例,图1为本技术实施例提供的一种容器内服务配置修改方法,包括如下所述步骤:
47.步骤s101,获取目标修改请求,其中,目标修改请求用于请求对多个目标容器内服务的配置信息进行修改。
48.本实施例中的容器内服务配置修改方法可以应用于需要对容器化部署的服务的配置信息进行修改的场景,例如:对测试环境中的容器内服务进行配置修改的场景等,也可
以是对其他环境中的容器内服务进行配置修改的场景。本技术实施例中以对测试环境中的容器内服务进行配置修改的为例说明上述的容器内服务配置修改方法,对于其他类型的环境,在不矛盾的情况下,上述的容器内服务配置修改方法同样适用。
49.以对设于目标服务器中的目标运行环境内的容器内服务进行配置修改的场景为例,在需求方需要对目标运行环境中的多个容器内服务的配置信息进行修改时,目标服务器可以通过特定的接口接收得到用于对配置信息进行修改的目标修改请求,以基于目标修改请求确定需要进行配置信息修改的目标容器内服务,以及用于对每个目标容器内服务的配置信息进行修改的目标配置信息,并且,多个目标容器内服务分别处于多个容器内,例如,当存在目标容器内服务a、b、c、d、e,以及容器a、b时,可以是目标容器内服务a、b、c处于容器a内,目标容器内服务d、e处于容器b内,也可以是多个目标容器内服务都位于一个容器内,还可以是目标容器内服务分别与容器一一对应。
50.例如,在目标服务器中,可以设有基于python flask(是一个使用python编写的轻量级web应用程序框架)框架的基础上,开发得到的配置更新接口/config-update。需求方可以通过该配置更新接口/config-update将目标修改请求发送至目标服务器中,以便于后期目标服务器可以根据该目标修改请求对多个目标容器内服务的配置信息进行修改。
51.步骤s102,响应目标修改请求,获取多个目标配置信息,其中,多个目标配置信息与多个目标容器内服务一一对应,每个目标配置信息中包括目标配置信息对应的配置信息的路径信息。
52.目标服务器在接收得到目标修改请求之后,便可对目标修改请求进行响应,以获取目标修改请求中的各个目标配置信息。
53.目标修改请求中可以携带有多个目标配置信息,并且,为了使目标服务器可以准确的识别各个目标配置信息所对应的目标容器内服务,可以在每个目标配置信息的标识字段,写入该目标配置信息的所对应的目标容器内服务的服务名。并且,在目标修改请求中,各个目标配置信息之间可以通过预设的标识符进行区分,以便于目标服务器可以对目标修改请求进行拆分,得到每个目标配置信息,进一步的,在一些特殊情况下,目标修改请求中还可以写有目标配置信息的存储位置,以通过目标修改请求的存储位置读取得到目标配置信息。
54.目标配置信息可以是与某一目标容器内服务对应的,用于对该目标容器内服务的配置信息进行修改的信息。一般情况下,每个目标配置信息只用于对一个目标容器内服务的配置信息进行修改,例如,配置信息可以是容器内服务运行时用于连接至其他服务的接口信息或者从数据库中调取得到所需数据的地址信息等。
55.进一步的,为了定位出待修改的配置信息的位置,每个目标配置信息中包括目标配置信息对应的配置信息的路径信息,例如,该路径信息可以是用于写该配置信息的配置文件的路径信息,因此,可以基于目标配置信息中的路径信息,查询到与该目标配置信息对应的配置文件,便于后期根据该路径信息对配置文件中的配置信息的修改。
56.目标容器内服务可以是需要进行配置信息修改的容器化部署的服务。一般的,每个目标容器内服务具有唯一对应的待修改的配置信息。
57.例如,当目标服务器接收得到目标修改请求a之后,按照预设的解析策略,对该目标修改请求a进行解析,得到目标配置信息a1、目标配置信息a2、目标配置信息a3;然后目标
服务器可以通过对各个目标配置信息中写有对应的容器内服务的字段进行解析,得到每个标配置信息中写有对应的容器内服务的服务标识:目标配置信息a1对应的服务标识a1,目标配置信息a2对应服务标识a2,目标配置信息a3对应服务标识a3;因此目标配置信息a1对应有服务标识为a1的容器内服务,目标配置信息a2对应有服务标识为a2的容器内服务,目标配置信息a3对应有服务标识为a3的容器内服务。
58.步骤s103,按照每个目标配置信息中的路径信息,将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息。
59.目标服务器在解析得到各个目标配置信息之后,即可按照每个目标配置信息中的路径信息,将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息。
60.容器内服务的配置信息可以是目标容器内服务在进行配置信息修改之前的配置信息,每个目标容器内服务都可以包括一个用于写配置信息的配置文件,当目标服务器确定该目标容器内服务的目标配置信息之后,可以先确定出目标配置信息中的路径信息,然后基于该路径信息查询到目标配置信息所用于修改的目标容器内服务的配置信息,该目标容器内服务的配置文件中的配置信息修改为该目标配置信息对应的目标配置信息。可选的,可以在每解析得到一个目标配置信息时,即通过该目标配置信息对该目标配置信息对应的目标容器内服务的配置信息进行修改;也可以是在得到所有目标配置信息之后,再通过各个目标配置信息分别对各个目标配置信息对应的目标容器内服务的配置信息进行修改。
61.例如,当目标服务器确定目标容器内服务i对应目标配置信息i时,获取目标容器内服务i的配置文件i,并确定配置文件i中的可配置的信息i1、i2、i3,最后再基于目标配置信息i中的配置信息j1、j2、j3,并且当j1对应于i1、j2对应于i2、j3对应于i3时,将j1用于写入i1中,j2用于写入i2中,j2用于写入i2中,即可完成对目标容器内服务i的配置信息的修改;当存在目标容器内服务ii、目标容器内服务iii时,也可参照上述方法,依次通过各个目标容器内服务对应的目标配置信息对各个目标容器内服务的配置信息进行修改;以此达到通过目标修改请求对多个目标容器内服务的配置信息进行修改的目的。
62.由上可知,通过本实施例中的方法,只通过一个目标修改请求即可自动查询到所有需要进行配置信息修改目标容器内服务,进而无需关注具体容器名称、服务配置文件的路径,即可自动根据目标修改请求对各个容器内服务进行配置文件的修改;同时,无需手动登入容器集群机器命令行或者登入界面,即可逐个对容器内服务进行修改,避免人工频繁进出容器环境,重复相同动作,节约配置的耗时,进而可以有效提高配置效率。
63.如图2所示,作为一种可选的实施方式,如前述的方法,在所述步骤s101获取目标修改请求之后,方法还包括如下所述步骤:
64.步骤s201,获取目标修改请求中携带的目标环境标识,其中,目标环境标识用于标识待修改配置信息的容器内服务所在的运行环境。
65.在获取目标修改请求之后,为了准确的定位到目标修改请求对应的运行环境,因此需要获取目标修改请求中携带的目标环境标识。
66.目标环境标识可以是目标修改请求中携带的,用于指示目标修改请求所需修改的运行环境的标识信息。一般的,每个运行环境都存在唯一对应的环境标识。
67.步骤s202,在确定存在与目标环境标识对应的目标运行环境的情况下,确定目标运行环境中待修改配置信息的多个目标容器内服务。
68.在获取目标环境标识之后,即可根据目标环境标识判断需要进行配置信息修改的服务所处的运行环境是否存在。
69.目标服务器可以获取其中的各个的运行环境的环境标识,因此,在获取目标环境标识之后,可以通过目标环境标识与各个运行环境的环境标识进行匹配,当匹配到与目标环境标识一致的某一运行环境的环境标识时,即可将该运行环境确定为目标运行环境。
70.例如,修改请求中的环境标识可以通过特定的字符进行定位,当目标服务器获取目标修改请求之后,即可先基于特定的字符定位到对应的位置,然后根据该特定的字符进行解析,以得到目标环境标识x1。在得到目标环境标识x1之后,通过目标环境标识x1与目标服务器中各个运行环境的环境标识进行匹配,当匹配到与目标环境标识一致的某一运行环境x的环境标识x2时,即可将该运行环境x确定为目标运行环境。当目标服务器未查询得到目标运行环境时,则可生成提示信息(例如,“不存在该环境”),以使发送该目标修改请求的需求方根据提示信息重新确认目标修改请求中的信息是否正确,或者目标修改请求中的环境是否存在于目标服务器中。
71.通过本实施例中的方法,可以在进行配置信息修改之前,预先确定环境是否存在,进而可以避免因为运行环境不匹配,而对错误运行环境中的容器内服务的配置文件进行修改的问题。
72.作为一种可选的实施方式,如前述的方法,所述步骤s202确定目标运行环境中待修改配置信息的多个目标容器内服务包括如下所述步骤:
73.步骤s301,从目标修改请求中提取出多个目标服务标识,其中,一个目标服务标识用于标识与一个目标配置信息所对应的容器内服务。
74.在获取目标修改请求之后,为了确定各个目标配置信息所需修改的容器内服务的配置文件,因此需要从目标修改请求中提取出目标服务标识。
75.目标修改请求中可以通过设置配置调整列表,列表中可以依次写有各个目标配置信息。目标服务器在获取目标修改请求之后,可以基于配置调整列表读取到各个目标配置信息以及各个目标配置信息中携带的目标服务标识。
76.目标服务标识可以是用于标识与目标配置信息所对应的容器内服务的标识信息。一般的,对于同一运行环境中的所有容器内服务,其中的每个容器内服务都唯一对应有一个服务标识。
77.例如,每个配置信息的特定的字段中写有对应的容器内服务的服务标识。目标服务器可以根据对特定的字段进行解析,以得到每个目标配置信息对应的目标服务标识,通过目标服务标识用于标识与该目标配置信息所对应的容器内服务,以便于后期按照目标服务标识,通过目标配置信息对该目标配置信息所对应的容器内服务进行配置信息的修改。
78.步骤s302,确定目标运行环境中多个目标服务标识所标识的多个目标容器内服务。
79.在确定多个目标服务标识之后,即可通过目标服务标识在目标运行环境中定位得到每个目标配置信息所对应的目标容器内服务。
80.目标服务器可以获取运行环境中的各个容器内服务的服务标识,因此,在获取目
标服务标识之后,可以通过目标服务标识与各个容器内服务的服务标识进行匹配,当匹配到与目标服务标识一致的某一容器内服务的服务标识时,即可将该容器内服务确定为目标容器内服务。
81.由上可知,通过本实施例中的方法,可以确保能够找到与目标配置信息对应的容器内服务,避免出现配置错误的情况。
82.作为一种可选的实施方式,如前述的方法,所述步骤s103按照每个目标配置信息中的路径信息,将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息包括如下所述步骤:
83.按照目标配置信息中的路径信息,查询出目标容器内服务的配置信息;
84.在目标配置信息用于还原目标容器内服务的配置信息的情况下,通过目标配置信息对目标容器内服务的配置信息进行清理,以还原目标容器内服务的配置信息,其中,目标配置信息为目标容器内服务的初始配置信息。
85.在获取目标配置信息,并确定目标配置信息对应的目标容器内服务之后,即需要将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息。
86.在获取目标配置信息之后,由于目标配置信息中存在路径信息,因此,可查询出该路径信息指向的目标容器内服务的配置信息。
87.在目标配置信息用于还原目标容器内服务的配置信息的情况下,可以通过目标修改请求中写有的目标配置信息的存储位置,进行读取得到该目标配置信息,即,目标服务器可以将容器内服务的各个版本的配置信息进行保存,以通过保存的配置信息对容器内服务的配置进行清理。
88.通过目标配置信息对目标容器内服务的配置信息进行清理,可以是通过初始配置信息,对目标容器内服务的当前配置文件上的配置信息进行清理,得到清理后配置文件,然后通过初始配置信息对清理后配置文件再进行配置,以还原目标容器内服务的配置信息。
89.通过本实施例中的方法,可以快速将目标容器内服务的配置信息进行还原,以得到初始配置信息,进而能够有效提高配置信息还原的效率。
90.作为一种可选的实施方式,如前述的方法,所述步骤s103按照每个目标配置信息中的路径信息,将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息包括:
91.按照目标配置信息中的路径信息,查询出目标容器内服务的配置信息;
92.在目标配置信息用于对目标容器内服务的配置信息进行更新的情况下,将目标容器内服务的配置信息替换为目标配置信息。
93.在获取目标配置信息,并确定目标配置信息对应的目标容器内服务之后,即需要将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息。
94.在获取目标配置信息之后,由于目标配置信息中存在路径信息,因此,可查询出该路径信息指向的目标容器内服务的配置信息。
95.在目标配置信息用于对目标容器内服务的配置信息进行更新的情况下,可以先对目标容器内服务的当前配置文件上的配置信息进行清理,得到清理后配置文件,然后通过目标配置信息对清理后配置文件再进行配置,得到更新后的配置信息;还可以是,直接通过目标配置信息对当前配置文件上的配置信息进行替换,以得到更新后的配置信息。
96.通过本实施例中的方法,可以快速将目标容器内服务的配置信息进行替换为目标配置信息,进而能够有效提高配置信息更新的效率。
97.作为一种可选的实施方式,如前述的方法,在所述步骤s103将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息之后,方法还包括如下所述步骤:
98.步骤s401,重启每个目标容器内服务,以使目标容器内服务加载得到目标配置信息。
99.在对目标容器内服务的配置信息修改为与该目标容器内服务对应的目标配置信息之后,需要目标容器内服务加载到最新的配置信息。
100.为了使目标容器内服务加载得到最新配置的目标配置信息,需要对每个目标容器内服务进行重启,以使其触发对配置信息的加载动作,进而加载得到该目标容器内服务最新修改后的目标配置信息。
101.通过本实施例中的方法,可以使每个目标容器内服务都加载得到最新配置的目标配置信息,进而便于后期判断各个目标配置信息是否成功完成配置。
102.作为一种可选的实施方式,如前述的方法,在所述步骤s103将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息之后,方法还包括以下步骤的至少一个:
103.步骤s501,确定每个目标容器内服务的配置修改结果,其中,配置修改结果用于指示目标容器内服务的配置信息是否修改为目标配置信息。
104.在将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息之后,有可能存在修改失败的情况,因此需要确定每个目标容器内服务的配置修改结果。
105.由于配置修改结果用于指示目标容器内服务的配置信息是否修改为目标配置信息,因此,可以通过将目标配置信息与通过目标配置信息进行修改的目标容器内服务的修改后配置信息进行比对,当两者完全一致时,则可以表征配置修改结果为“已将目标容器内服务的配置信息修改为目标配置信息”,当两者存在至少一个差异点时,则可以表征配置修改结果为“未将目标容器内服务的配置信息修改为目标配置信息”。
106.步骤s502,获取加载到目标配置信息之后的目标容器内服务的服务运行状态信息。
107.在将每个目标容器内服务的配置信息修改为与每个目标容器内服务对应的目标配置信息之后,有可能存在配置信息本身存在错误,导致目标容器内服务按照该目标配置信息进行配置后无法正常运行的情况,因此需要对每个目标容器内服务的服务运行状态信息进行校验。
108.服务运行状态信息可以是用于标识目标容器内服务是否能够正常运行的信息。
109.例如,当目标服务器确定目标容器内服务q已加载到目标配置信息之后,便对该目标容器内服务q进行启动,并获取目标容器内服务q的服务运行状态信息(例如,输入测试数据,判断是否能够输出满足预设要求的处理后数据)。
110.进一步的,在获取配置修改结果和/或服务运行状态信息之后,可以根据配置修改结果和/或服务运行状态信息生成对应的提示信息,例如,当步骤s103同时包括步骤s501和
s502时,则当配置修改结果和服务运行状态信息都正常时,可以返回“成功完成配置”等用于指示目标配置信息成功对目标容器内服务进行配置的提示信息,当配置修改结果和服务运行状态信息中至少一个异常时,则返回“配置失败”等用于指示目标配置信息对目标容器内服务配置失败的提示信息;当步骤s103只包括步骤s501时,则当配置修改结果正常时,可以返回“成功完成配置”;当步骤s103只包括步骤s502时,当配置修改结果和服务运行状态信息都正常时,可以返回“成功完成配置”。
111.通过本实施例中的方法,可以快速确定对目标容器内服务的配置信息进行修改后的修改结果,以便于能够快速得到正确的用于对目标容器内服务进行修改的目标配置文件,以提高修改效率。
112.如图3所示,还提供一个应用前述任一实施例的中所述方法的应用例:
113.step1:通过基于python flask框架的基础上开发得到的配置更新接口/config-update接收得到配置更新信息(即,目标修改请求)。
114.step2:接口收到配置更新信息后,首先判断需要修改的环境(即,目标运行环境)是否存在,存在则进行下一步,否则发出环境确认提示,并返回用于指示修改失败的本次配置修改结果。
115.step3:获取配置更新信息中的配置调整列表(即,包括各个目标服务标识的列表),循环对服务名称(即,目标服务标识)进行拆解判断,在待修改服务(即,待修改的容器内服务)未全部修改时,确认待修改服务及修改类型,确保寻找到的容器内服务所处的容器和容器内服务配置文件确实属于当前服务。
116.step4:在目标配置文件(即,目标容器内服务的配置信息)不存在时,确认配置错误信息,并返回用于指示修改失败的本次配置修改结果;在目标配置文件存在时,根据目标配置信息的调整类型oper_type判断目标配置文件是否是新增服务配置,对待修改服务(即,配置信息修改前的目标容器内服务)进行配置调整:
117.oper_type=1,还原配置,读取需要还原的配置信息,到指定容器指定路径下删除该待修改服务的配置文件内容,并通过原配置信息对配置文件内容进行还原;
118.oper_type=2,更新配置,根据指定的配置更新数据,到指定容器指定路径下,通过目标配置信息更新该待修改服务的配置文件内容。
119.step5:重启容器内服务加载新配置,循环重启容器内服务,以使容器内服务加载最新配置信息,并校验待修改服务状态。
120.step6:返回待修改服务的配置修改结果和容器内服务(即,配置信息修改后的目标容器内服务)运行状态信息
121.如图4所示,根据本技术另一方面的一个实施例,本技术还提供了一种容器内服务配置修改装置,包括:
122.第一获取模块1,用于获取目标修改请求,其中,目标修改请求中用于请求对多个目标容器内服务的配置信息进行修改;
123.第二获取模块2,用于响应目标修改请求,获取多个目标配置信息,其中,多个目标配置信息与多个目标容器内服务一一对应,每个目标配置信息中包括目标配置信息对应的配置信息的路径信息;
124.修改模块3,用于按照每个目标配置信息中的路径信息,将每个目标容器内服务的
配置信息修改为与每个目标容器内服务对应的目标配置信息。
125.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
126.作为一种可选的实施方式,如前述的装置,还包括:
127.环境标识模块,用于获取目标修改请求中携带的目标环境标识,其中,目标环境标识用于标识待修改配置信息的容器内服务所在的运行环境;
128.环境确定模块,用于在确定存在与目标环境标识对应的目标运行环境的情况下,确定目标运行环境中待修改配置信息的多个目标容器内服务。
129.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
130.作为一种可选的实施方式,如前述的装置,环境确定模块,用于:
131.从目标修改请求中提取出多个目标服务标识,其中,一个目标服务标识用于标识与一个目标配置信息所对应的容器内服务;
132.确定目标运行环境中多个目标服务标识所标识的多个目标容器内服务。
133.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
134.作为一种可选的实施方式,如前述的装置,修改模块3包括:
135.第一修改单元,用于按照目标配置信息中的路径信息,查询出目标容器内服务的配置信息;在目标配置信息用于还原目标容器内服务的配置信息的情况下,通过目标配置信息对目标容器内服务的配置信息进行清理,以还原目标容器内服务的配置信息,其中,目标配置信息为目标容器内服务的初始配置信息。
136.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
137.作为一种可选的实施方式,如前述的装置,修改模块3包括:
138.第二修改单元,用于按照目标配置信息中的路径信息,查询出目标容器内服务的配置信息;在目标配置信息用于对目标容器内服务的配置信息进行更新的情况下,将目标容器内服务的配置信息替换为目标配置信息。
139.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
140.作为一种可选的实施方式,如前述的装置,还包括重启模块,用于:
141.重启每个目标容器内服务,以使目标容器内服务加载得到目标配置信息。
142.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
143.作为一种可选的实施方式,如前述的装置,还包括以下至少之一:
144.修改结果模块,用于确定每个目标容器内服务的配置修改结果,其中,配置修改结果用于指示目标容器内服务的配置信息是否修改为目标配置信息;
145.运行状态模块,用于获取加载到目标配置信息之后的目标容器内服务的服务运行状态信息。
146.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例
中的相关描述,此处不再赘述。
147.根据本技术的另一个实施例,还提供一种电子设备,包括:如图5所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
148.存储器1503,用于存放计算机程序;
149.处理器1501,用于执行存储器1503上所存放的程序时,实现上述方法实施例的步骤。
150.上述电子设备提到的总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
151.通信接口用于上述电子设备与其他设备之间的通信。
152.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
153.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
154.本技术实施例还提供一种计算机可读存储介质,存储介质包括存储的程序,其中,程序运行时执行上述方法实施例的方法步骤。
155.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
156.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献