容器迁移方法技术

技术编号:39678799 阅读:15 留言:0更新日期:2023-12-11 18:56
本申请涉及一种容器迁移方法

【技术实现步骤摘要】
容器迁移方法、装置、计算机设备和存储介质


[0001]本申请涉及计算机
,特别是涉及一种容器迁移方法

装置

计算机设备

存储介质和计算机程序产品


技术介绍

[0002]随着云计算的发展,出现了容器技术,基于容器技术的发展使得云原生逐渐成为一种应用云化开发

部署和运行的业务主流方式
。Kubernetes
作为一种容器编排与调度的分布式架构领先方案,逐渐成为使用容器技术的主流方案被广泛运用,因此出现了在
Kubernetes
上热迁移容器的需求

[0003]然而,传统技术中通常是采用断开链接再重建的方式,断开有状态容器建立的链接会造成业务的中断,导致服务提供不连续,且在链接重建后无法沿用先前业务的中间态数据


技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种能够保证服务连续性的容器迁移方法

装置

计算机设备

存储介质和计算机程序产品

[0005]第一方面,本申请提供了一种容器迁移方法,所述方法包括:
[0006]获取目标迁移任务;所述目标迁移任务用于在云平台容器管理系统中对源容器进行热迁移,所述源容器与链接容器之间已建立业务侧链接,所述目标迁移任务包括预迁移子任务和切换子任务;
[0007]执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移;所述数据预迁移包括所述源容器的容器备份数据的迁移和增量数据的迁移;
[0008]在完成所述容器备份数据的预迁移之后,执行所述切换子任务,根据所述业务侧链接的心跳链接信息,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器

[0009]在其中一个实施例中,所述执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移,包括:
[0010]从所述预迁移子任务中,获取首次迁移指示信息和增量迁移指示信息;
[0011]按照所述首次迁移指示信息,将所述源容器的容器备份数据迁移至所述目标容器;
[0012]按照所述增量迁移指示信息中的预设时间间隔,将所述源容器的容器增量数据同步至所述目标容器

[0013]在其中一个实施例中,在所述执行所述切换子任务的步骤之前,所述方法还包括:
[0014]检测所述源容器对应的服务器与所述目标容器对应的服务器之间的网络连接状态,判断所述源容器与所述目标容器之间是否处于网络连通状态;
[0015]在所述源容器与所述目标容器之间处于网络连通状态的情况下,执行所述切换子任务的步骤

[0016]在其中一个实施例中,所述根据所述业务侧链接的心跳链接信息,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器,包括:
[0017]从所述业务侧链接的心跳链接信息中,获取心跳链接周期信息和心跳间隔信息;
[0018]根据所述心跳链接周期信息确定迁移业务中间态数据的触发时间,以及根据所述心跳间隔信息确定迁移业务中间态数据的迁移时间范围;
[0019]按照所述触发时间和所述迁移时间范围,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器

[0020]在其中一个实施例中,所述根据所述心跳链接周期信息确定迁移业务中间态数据的触发时间,包括:
[0021]根据所述心跳链接周期信息,得到新的心跳链接周期的开始时刻,作为所述迁移业务中间态数据的触发时间;
[0022]所述根据所述心跳间隔信息确定迁移业务中间态数据的迁移时间范围,包括:
[0023]针对所述新的心跳链接周期的开始时刻,根据所述心跳间隔信息,确定所述新的心跳链接周期对应的时间区间,作为所述迁移业务中间态数据的迁移时间范围

[0024]在其中一个实施例中,所述按照所述触发时间和所述迁移时间范围,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器,包括:
[0025]在所述新的心跳链接周期的开始时刻下,保持所述源容器中存在且正在处理的业务链接,将所述源容器的网络配置参数同步至所述目标容器;
[0026]在所述新的心跳链接周期对应的时间区间内,按照所述源容器的网络配置参数,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并迁移所述源容器中增量的业务中间态数据至所述目标容器

[0027]在其中一个实施例中,在所述将所述源容器的业务中间态数据迁移至所述目标容器的步骤之后,所述方法还包括:
[0028]在校核所述源容器中的文件目录与所述目标容器中的文件目录相一致的情况下,释放所述源容器中存在且正在处理的业务链接

[0029]第二方面,本申请还提供了一种容器迁移装置,所述装置包括:
[0030]目标迁移任务获取模块,用于获取目标迁移任务;所述目标迁移任务用于在云平台容器管理系统中对源容器进行热迁移,所述源容器与链接容器之间已建立业务侧链接,所述目标迁移任务包括预迁移子任务和切换子任务;
[0031]数据预迁移模块,用于执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移;所述数据预迁移包括所述源容器的容器备份数据的迁移和增量数据的迁移;
[0032]业务中间态数据迁移模块,用于在完成所述容器备份数据的预迁移之后,执行所述切换子任务,根据所述业务侧链接的心跳链接信息,在保持所述源容器中存在且正在处
理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器

[0033]第三方面,本申请还提供了一种计算机设备

所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0034]获取目标迁移任务;所述目标迁移任务用于在云平台容器管理系统中对源容器进行热迁移,所述源容器与链接容器之间已建立业务侧链接,所述目标迁移任务包括预迁移子任务和切换子任务;
[0035]执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移;所述数据预迁移包括所述源容器的容器备份数据的迁移和增量数据的迁移;
[0036]在完成所述容器备份数据的预迁移之后,执行所述切换子任务,根据所述业务侧链接的心跳链接信息,在保持所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种容器迁移方法,其特征在于,所述方法包括:获取目标迁移任务;所述目标迁移任务用于在云平台容器管理系统中对源容器进行热迁移,所述源容器与链接容器之间已建立业务侧链接,所述目标迁移任务包括预迁移子任务和切换子任务;执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移;所述数据预迁移包括所述源容器的容器备份数据的迁移和增量数据的迁移;在完成所述容器备份数据的预迁移之后,执行所述切换子任务,根据所述业务侧链接的心跳链接信息,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器
。2.
根据权利要求1所述的方法,其特征在于,所述执行所述预迁移子任务,在所述源容器与目标容器之间进行数据预迁移,包括:从所述预迁移子任务中,获取首次迁移指示信息和增量迁移指示信息;按照所述首次迁移指示信息,将所述源容器的容器备份数据迁移至所述目标容器;按照所述增量迁移指示信息中的预设时间间隔,将所述源容器的容器增量数据同步至所述目标容器
。3.
根据权利要求1所述的方法,其特征在于,在所述执行所述切换子任务的步骤之前,所述方法还包括:检测所述源容器对应的服务器与所述目标容器对应的服务器之间的网络连接状态,判断所述源容器与所述目标容器之间是否处于网络连通状态;在所述源容器与所述目标容器之间处于网络连通状态的情况下,执行所述切换子任务的步骤
。4.
根据权利要求1所述的方法,其特征在于,所述根据所述业务侧链接的心跳链接信息,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器,包括:从所述业务侧链接的心跳链接信息中,获取心跳链接周期信息和心跳间隔信息;根据所述心跳链接周期信息确定迁移业务中间态数据的触发时间,以及根据所述心跳间隔信息确定迁移业务中间态数据的迁移时间范围;按照所述触发时间和所述迁移时间范围,在保持所述源容器中存在且正在处理的业务链接的情况下,将所述业务侧链接切换为所述目标容器与所述链接容器之间,并将所述源容器的业务中间态数据迁移至所述目标容器
。5.
根据权利要求4所述的方法,其特征在于,所述根据所述心跳链接周期信息确定迁移业务中间态数据的触发时间,包括:根据所述心跳链接周期信息,得到新的心跳链接周期的开始时刻,作为所述迁移业务中间态数据的触发时间;所述根据所述心跳间隔信息确定迁移业务中间态数据的迁...

【专利技术属性】
技术研发人员:朱万意高深师春雨李德恒任慧蕾
申请(专利权)人:中国电信股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1