本技术属于计算机,具体涉及一种微服务迁移方法、装置和电子设备。
背景技术:
1、随着软件业务的发展,技术栈不停更新换代,各业务系统通常采用了不同的分布式微服务框架进行功能开发。某些场景下还需要对业务进行整合调整,因此存在对微服务集群进行迁移的需求。
2、而现有技术中,业务系统通常部署在多台机器上,当需要缩容系统时,需要技术人员手动将所有微服务进行迁移、重新部署,此方式操作难度大、消耗时间长,且容易出现手工误操作的问题。
技术实现思路
1、本技术实施例的目的是提供一种微服务迁移方法、装置和电子设备,能够解决现有手动迁移方式操作难度大、消耗时间长,且容易出现手工误操作的问题。
2、第一方面,本技术实施例提供了一种微服务迁移方法,包括:
3、确定微服务集群中的待迁移节点;
4、利用容器集群管理系统中的第一命令,将所述待迁移节点上运行的基本调度单元迁移到目标节点,其中,所述目标节点包括所述微服务集群中除所述待迁移节点之外的至少一个节点;
5、对所述待迁移节点进行目标处理,以更新所述微服务集群。
6、可选地,所述待迁移节点包括待删除节点和待调整节点中的至少一种;
7、所述对所述待迁移节点进行目标处理,包括如下至少一项:
8、将所述待删除节点从所述微服务集群中删除;
9、对所述待调整节点的资源配置进行调整,并在调整后重启所述待调整节点,以及在重启后将所述待调整节点重新加入所述微服务集群。
10、可选地,在所述待调整节点包括多个主节点的情况下,所述对所述待调整节点的资源配置进行调整,并在调整后重启所述待调整节点,包括:
11、逐次对所述多个主节点中的每个主节点进行资源配置调整和重启。
12、可选地,所述方法还包括:
13、在所述待迁移节点在迁移过程中产生了垃圾数据的情况下,利用所述容器集群管理系统中的第二命令删除所述垃圾数据。
14、可选地,所述微服务集群中的flannel组件和kube-proxy组件作为守护进程daemon sets部署在所述微服务集群,其中,所述flannel组件和所述kube-proxy组件的副本数随迁移后所述微服务集群的节点数自适应调整,所述flannel组件和所述kube-proxy组件的副本数均与所述微服务集群的节点数相同。
15、可选地,所述方法还包括如下至少一项:
16、在所述微服务集群中的第一节点的域名系统dns失效的情况下,重新配置所述第一节点的dns,其中,所述第一节点为所述微服务集群中的任一节点;
17、在所述微服务集群中的第二节点失效的情况下,设置所述第二节点为不可调度状态,其中,所述第二节点为所述微服务集群中的任一节点。
18、可选地,所述待迁移节点包括待删除节点;
19、所述确定微服务集群中的待迁移节点之后,所述利用容器集群管理系统中的第一命令,将所述待迁移节点上运行的基本调度单元迁移到目标节点之前,所述方法还包括如下至少一项:
20、将所述微服务集群中除所述待删除节点之外的节点的组件设置为开机自启动;
21、在所述微服务集群使用的负载均衡器上禁用所述待删除节点;
22、确定所述微服务集群中使用主机路径host_path存储微服务历史数据的第三节点,并对所述第三节点在主机路径中存储的微服务历史数据进行备份。
23、第二方面,本技术实施例提供了一种微服务迁移装置,包括:
24、确定模块,用于确定微服务集群中的待迁移节点;
25、迁移模块,用于利用容器集群管理系统中的第一命令,将所述待迁移节点上运行的基本调度单元迁移到目标节点,其中,所述目标节点包括所述微服务集群中除所述待迁移节点之外的至少一个节点;
26、处理模块,用于对所述待迁移节点进行目标处理,以更新所述微服务集群。
27、可选地,所述待迁移节点包括待删除节点和待调整节点中的至少一种;
28、所述处理模块包括如下至少一项:
29、删除单元,用于将所述待删除节点从所述微服务集群中删除;
30、调整单元,用于对所述待调整节点的资源配置进行调整,并在调整后重启所述待调整节点,以及在重启后将所述待调整节点重新加入所述微服务集群。
31、可选地,在所述待调整节点包括多个主节点的情况下,所述调整单元用于逐次对所述多个主节点中的每个主节点进行资源配置调整和重启。
32、可选地,所述微服务迁移装置还包括:
33、删除模块,用于在所述待迁移节点在迁移过程中产生了垃圾数据的情况下,利用所述容器集群管理系统中的第二命令删除所述垃圾数据。
34、可选地,所述微服务集群中的flannel组件和kube-proxy组件作为守护进程daemon sets部署在所述微服务集群,其中,所述flannel组件和所述kube-proxy组件的副本数随迁移后所述微服务集群的节点数自适应调整,所述flannel组件和所述kube-proxy组件的副本数均与所述微服务集群的节点数相同。
35、可选地,所述微服务迁移装置还包括如下至少一项:
36、配置模块,用于在所述微服务集群中的第一节点的域名系统dns失效的情况下,重新配置所述第一节点的dns,其中,所述第一节点为所述微服务集群中的任一节点;
37、第一设置模块,用于在所述微服务集群中的第二节点失效的情况下,设置所述第二节点为不可调度状态,其中,所述第二节点为所述微服务集群中的任一节点。
38、可选地,所述待迁移节点包括待删除节点;所述微服务迁移装置还包括如下至少一项:
39、第二设置模块,用于将所述微服务集群中除所述待删除节点之外的节点的组件设置为开机自启动;
40、禁用模块,用于在所述微服务集群使用的负载均衡器上禁用所述待删除节点;
41、备份模块,用于确定所述微服务集群中使用主机路径host_path存储微服务历史数据的第三节点,并对所述第三节点在主机路径中存储的微服务历史数据进行备份。
42、第三方面,本技术实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的微服务迁移方法的步骤。
43、第四方面,本技术实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的微服务迁移方法的步骤。
44、第五方面,本技术实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的微服务迁移方法。
45、第六方面,本技术实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的微服务迁移方法。
46、在本技术实施例中,确定微服务集群中的待迁移节点;利用容器集群管理系统中的第一命令,将所述待迁移节点上运行的基本调度单元迁移到目标节点,其中,所述目标节点包括所述微服务集群中除所述待迁移节点之外的至少一个节点;对所述待迁移节点进行目标处理,以更新所述微服务集群。这样,通过利用容器集群管理系统的自动调度能力来实现自动迁移微服务架构,能够极大程度地降低操作难度,提高迁移效率且降低错误率。
1.一种微服务迁移方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述待迁移节点包括待删除节点和待调整节点中的至少一种;
3.根据权利要求2所述的方法,其特征在于,在所述待调整节点包括多个主节点的情况下,所述对所述待调整节点的资源配置进行调整,并在调整后重启所述待调整节点,包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述微服务集群中的flannel组件和kube-proxy组件作为守护进程daemon sets部署在所述微服务集群,其中,所述flannel组件和所述kube-proxy组件的副本数随迁移后所述微服务集群的节点数自适应调整,所述flannel组件和所述kube-proxy组件的副本数均与所述微服务集群的节点数相同。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括如下至少一项:
7.根据权利要求1所述的方法,其特征在于,所述待迁移节点包括待删除节点和待调整节点中的至少一种;
8.一种微服务迁移装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至7中任一项所述的微服务迁移方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1至7中任一项所述的微服务迁移方法的步骤。
11.一种计算机程序产品,其特征在于,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以权利要求1至8中任一项所述的微服务迁移方法。