CN113672337B - 一种应用迁移方法、装置、设备及计算机可读存储介质 - Google Patents
一种应用迁移方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113672337B CN113672337B CN202110808735.7A CN202110808735A CN113672337B CN 113672337 B CN113672337 B CN 113672337B CN 202110808735 A CN202110808735 A CN 202110808735A CN 113672337 B CN113672337 B CN 113672337B
- Authority
- CN
- China
- Prior art keywords
- node
- information
- application
- mirror image
- container
- 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
- 238000013508 migration Methods 0.000 title claims abstract description 83
- 230000005012 migration Effects 0.000 title claims abstract description 83
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000005096 rolling process Methods 0.000 claims abstract description 24
- 238000012216 screening Methods 0.000 claims abstract description 19
- 238000004590 computer program Methods 0.000 claims description 11
- 238000012795 verification Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
Classifications
-
- 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/4557—Distribution of virtual machine instances; Migration and load balancing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种应用迁移方法、装置、设备及计算机可读存储介质,方法包括:接收容器的镜像地址,根据镜像地址获取镜像元数据;对镜像元数据进行解析,得到目标架构信息;获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点;采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。本申请公开的上述技术方案,实现应用迁移的自动进行,减少人工参与,从而提高迁移效率,减少迁移过程中出现的失误,且通过采用滚动升级策略进行应用迁移而使得新容器完全正常运行之后再停止旧容器的运行,以尽量避免应用在运行过程中发生中断。
Description
技术领域
本申请涉及服务器技术领域,更具体地说,涉及一种应用迁移方法、装置、设备及计算机可读存储介质。
背景技术
随着服务器架构的多样化,有时会需要将容器中的应用从以前架构的服务器上迁移到其他架构的服务器上,其中,容器是一种打包应用程序及它运行所需一切的一种手段。
目前,在进行应用迁移时,一般均是由相关人员先找到目标架构的服务器,之后,将旧架构服务器中应用相关的数据进行备份,并停止旧架构服务器的运行,且将备份的数据迁移到目标架构的服务器上,以在目标架构的服务器上进行运行,但是,由于这种方式需要相关人员进行手动迁移,因此,对相关人员来说迁移工作量比较大,复杂度比较高,应用迁移效率比较低,且会因人工操作失误而带来损失,另外,由于需要先关停旧架构的服务器,因此,则会导致业务发生中断。
综上所述,如何提高应用迁移效率,并尽量避免应用发生中断,是目前本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本申请的目的是提供一种应用迁移方法、装置、设备及计算机可读存储介质,用于提高应用迁移效率,并尽量避免应用发生中断。
为了实现上述目的,本申请提供如下技术方案:
一种应用迁移方法,包括:
接收容器的镜像地址,根据所述镜像地址获取镜像元数据;
对所述镜像元数据进行解析,得到目标架构信息;
获取各节点的节点架构信息,从中筛选出节点架构信息与所述目标架构信息相同的目标节点;
采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中,并将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器。
优选的,在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中之前,还包括:
记录所述当前容器绑定的存储信息、访问信息和配置信息;
在将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器之后,还包括:
校验所述新容器是否成功绑定所述存储信息、所述访问信息和所述配置信息;
若所述存储信息、所述访问信息和所述配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对所述新容器进行绑定。
优选的,在根据记录的对应信息对所述新容器进行绑定之后,还包括:
发出应用迁移成功的提示。
优选的,根据所述镜像地址获取镜像元数据,包括:
根据所述镜像地址确定所述镜像地址对应的镜像仓库类型及镜像仓库URL;
根据所述镜像仓库URL调用与所述镜像仓库类型对应的接口,通过所述接口获取所述镜像元数据。
优选的,在从中筛选出节点架构信息与所述目标架构信息相同的目标节点之后,还包括:
若所述目标节点的数量大于1,则根据各所述目标节点的参数确定各所述目标节点的优先级,并将优先级最高的目标节点确定为最终的目标节点。
优选的,获取各节点的节点架构信息,包括:
接收kubelet上报的所述节点的节点架构信息。
一种应用迁移装置,包括:
接收模块,用于接收容器的镜像地址,根据所述镜像地址获取镜像元数据;
解析模块,用于对所述镜像元数据进行解析,得到目标架构信息;
筛选模块,用于获取各节点的节点架构信息,从中筛选出节点架构信息与所述目标架构信息相同的目标节点;
迁移模块,用于采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中,并将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器。
优选的,还包括:
记录模块,用于在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中之前,记录所述当前容器绑定的存储信息、访问信息和配置信息;
校验模块,用于在将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器之后,校验所述新容器是否成功绑定所述存储信息、所述访问信息和所述配置信息;
绑定模块,用于若所述存储信息、所述访问信息和所述配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对所述新容器进行绑定。
一种应用迁移设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的应用迁移方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的应用迁移方法的步骤。
本申请提供了一种应用迁移方法、装置、设备及计算机可读存储介质,其中,该方法包括:接收容器的镜像地址,根据镜像地址获取镜像元数据;对镜像元数据进行解析,得到目标架构信息;获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点;采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。
本申请公开的上述技术方案,通过根据接收到的容器的镜像地址获取镜像元数据,对镜像元数据进行解析以得到目标架构信息,基于目标架构信息及获取到的各节点的节点架构信息自动筛选出目标节点,并通过采用滚动升级策略将待迁移节点中当前容器中的应用自动迁移到目标节点的新容器中,且自动将与应用对应的绑定关系中的当前容器替换为新容器,以减少应用迁移过程中的人为干预,从而减少相关人员在应用迁移过程中的工作量,并通过自动实现应用迁移来提高迁移效率,减少迁移过程中出现的失误,另外,通过采用滚动升级策略进行应用迁移而使得新容器完全正常运行之后再停止旧容器的运行,以尽量避免应用在运行过程中发生中断,从而避免应用迁移给应用运行所带来的影响。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种应用迁移方法的流程图;
图2为本申请实施例提供的目标节点获取的一种实现流程图;
图3为本申请实施例提供的一种应用迁移装置的结构示意图;
图4为本申请实施例提供的一种应用迁移设备的结构示意图。
具体实施方式
本申请的核心是提供一种应用迁移方法、装置、设备及计算机可读存储介质,用于提高应用迁移效率,并尽量避免应用发生中断。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图1,其示出了本申请实施例提供的一种应用迁移方法的流程图,本申请实施例提供的一种应用迁移方法,可以包括:
S11:接收容器的镜像地址,根据镜像地址获取镜像元数据。
首先,需要说明的是,本申请可以应用于多架构的容器集群中,且具体可以应用在多架构的K8S容器集群中。
在本申请中,在进行应用迁移时,则可以先由用户上传容器的镜像地址,以便通过该镜像地址确定目标架构信息。
在接收到用户上传的容器的镜像地址之后,则可以根据镜像地址发送镜像元数据获取请求,并根据镜像元数据获取请求获取镜像元数据。其中,镜像元数据获取请求具体可为http请求方式或者https请求方式。
S12:对镜像元数据进行解析,得到目标架构信息。
在获取镜像元数据之后,对镜像元数据进行解析,以得到应用所要迁移进去的目标架构信息,例如:假如要把应用迁移到arm架构中,则此时可以通过解析对应得到arm架构信息,假如要把应用迁移到mips架构中,则此时可以通过解析对应得到mips架构信息。
S13:获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点。
另外,还可以获取容器集群内各节点的节点架构信息,并将各节点的节点架构信息与解析得到的目标架构信息进行对比,若对比结果不一致,则可以记录日志并返回调度失败信息,若对比结果一致,则将对比结果一致的节点架构信息对应的节点确定为目标节点,以实现从各节点的节点架构信息中筛选出节点架构信息与目标架构信息相同的目标节点,即确定出应用最终所要迁移进目标架构信息的节点。其中,在将对比结果一致的节点架构信息对应的节点确定为目标节点的基础上,可以记录日志,并返回目标节点的信息,以便于用户查看目标节点的相关信息。
通过步骤S11-步骤S13可以只需用户上传容器镜像地址即可,后续则可以自动根据该镜像地址实现对架构信息为目标架构信息的节点的筛选,而无需依赖用户人工地对各节点的架构信息进行挨个查看和筛选,以找到目标节点,因此,则可以提高目标节点的获取效率,降低用户的工作量。
需要说明的是,步骤S11-步骤S13可以利用异构调度器进行实现,其可以与K8S的原生调度器协同工作,以从容器集群中选择合适的目标节点。
S14:采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。
在确定出目标节点之后,则可以采用滚动升级策略的升级方式将待迁移节点中当前容器中的应用迁移到目标节点中所创建的新容器中,其中,一个容器中一般运行一个应用,且滚动升级策略是会先等待目标节点中的新容器创建完成之后且在新容器正常运行之后,再把待迁移节点中当前容器给停掉,且将当前容器中的应用迁移到新容器中,因此,则可以尽量保证应用的连续性,尽量避免发生业务中断。另外,在将应用迁移到新容器中之后,为了使得应用能够在新容器中正常运行,则可以将与应用对应的绑定关系中的当前容器直接替换为新容器,也即将原本与当前容器存在的对应关系直接替换为新容器,而不再通过备份的方式进行实现,以降低应用迁移的复杂度,缩短应用迁移所花费的时间,并且减少数据的缺失,保证数据的一致性。
需要说明的是,步骤S14可以利用升级控制器进行实现,其可以与当前容器中的容器控制器协同作用,以保证容器在迁移过程中应用不会停掉。
通过本申请的上述过程可以实现应用迁移的自动进行,减少人工参与,并减少应用迁移过程出现的操作失误,提高应用迁移的准确性,且尽量避免应用出现中断。
本申请公开的上述技术方案,通过根据接收到的容器的镜像地址获取镜像元数据,对镜像元数据进行解析以得到目标架构信息,基于目标架构信息及获取到的各节点的节点架构信息自动筛选出目标节点,并通过采用滚动升级策略将待迁移节点中当前容器中的应用自动迁移到目标节点的新容器中,且自动将与应用对应的绑定关系中的当前容器替换为新容器,以减少应用迁移过程中的人为干预,从而减少相关人员在应用迁移过程中的工作量,并通过自动实现应用迁移来提高迁移效率,减少迁移过程中出现的失误,另外,通过采用滚动升级策略进行应用迁移而使得新容器完全正常运行之后再停止旧容器的运行,以尽量避免应用在运行过程中发生中断,从而避免应用迁移给应用运行所带来的影响。
本申请实施例提供的一种应用迁移方法,在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中之前,还可以包括:
记录当前容器绑定的存储信息、访问信息和配置信息;
在将与应用对应的绑定关系中的当前容器替换为新容器之后,还可以包括:
校验新容器是否成功绑定存储信息、访问信息和配置信息;
若存储信息、访问信息和配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对新容器进行绑定。
在本申请中,在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中之前,可以记录当前容器绑定的存储信息(具体包括挂载的存储卷以及挂载的路径等)、访问信息和配置信息,以便于后续对绑定的信息进行查询,且便于利用记录的当前容器绑定的信息对新容器进行校验。
在上述基础上,在将与应用对应的绑定关系中的当前容器替换为新容器之后,可以校验新容器是否成功绑定了当前容器所绑定的存储信息、访问信息和配置信息,若新容器成功绑定存储信息、访问信息和配置信息,则表明应用迁移成功,若新容器未成功绑定存储信息、访问信息和配置信息中的至少一项信息,则可以根据记录的对应信息对新容器进行挂载绑定操作,具体地,可以根据记录的信息将所有信息重新与新容器进行绑定,当然,也可以根据记录的信息将未成功绑定的信息与新容器进行绑定。
通过上述记录和校验过程可以使得新容器能够挂载以前容器的存储,绑定以前容器的域名、访问地址等各种信息,以保证应用在目标节点中可以顺利进行运行。需要说明的是,上述记录和校验的步骤具体可以利用升级控制器进行实现。
本申请实施例提供的一种应用迁移方法,在根据记录的对应信息对新容器进行绑定之后,还可以包括:
发出应用迁移成功的提示。
在根据记录的对应信息对新容器进行绑定之后,可以发出应用迁移成功的提示,以便于用户可以根据提示及时获知应用已成功迁移,从而便于用户对应用进行正常使用。
需要说明的是,具体可以通过提示框显示、语音播放等方式发出应用迁移成功的提示。
参见图2,其示出了本申请实施例提供的目标节点获取的一种实现流程图,本申请实施例提供的一种应用迁移方法,根据镜像地址获取镜像元数据,可以包括:
根据镜像地址确定镜像地址对应的镜像仓库类型及镜像仓库URL;
根据镜像仓库URL调用与镜像仓库类型对应的接口,通过接口获取镜像元数据。
在根据镜像地址获取镜像元数据时,可以先根据镜像地址确定镜像地址对应的镜像仓库类型及镜像仓库URL(Uniform Resource Locator,网页地址),然后,可以基于镜像仓库URL调用与镜像仓库类型对应的接口,具体地,如果镜像仓库类型是harbor类型,则可以调用harbor接口,通过harbor接口获取镜像元数据,如果镜像仓库类型是registry类型,则可以调用registry接口,通过registry接口获取镜像元数据,通过前述过程可以实现准确且顺利地获取镜像元数据。
需要说明的是,如果确定镜像仓库类型并非是harbor接口或者registry类型,则可以记录日志并直接返回调度失败的信息。
本申请实施例提供的一种应用迁移方法,在从中筛选出节点架构信息与目标架构信息相同的目标节点之后,还可以包括:
若目标节点的数量大于1,则根据各目标节点的参数确定各目标节点的优先级,并将优先级最高的目标节点确定为最终的目标节点。
在本申请中,在从各节点的节点架构信息中筛选出节点架构信息与目标架构信息相同的目标节点之后,若目标节点的数量为1,则直接进行后续应用的迁移,若目标节点的数量大于1,则可以根据各目标节点的CPU性能、内存剩余量等为各目标节点进行打分(其中,CPU性能越好、内存剩余量越多,打分越高),并根据各目标节点的最终得分确定各目标节点的优先级(最终得分越高优先级越高),且将优先级最高的目标节点确定为最终的目标节点,之后,则采用滚动升级策略将待迁移节点中当前容器中的应用迁移到最终的目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为最终的目标节点中的新容器。当然,也可以通过其他方式确定各目标节点的优先级,例如可以直接根据各目标节点的参数确定各目标节点的优先级,本申请对确定各目标节点优先级的方式不做任何限定。
通过上述方式可以从多个目标节点中选取最优的一个目标节点来进行应用迁移,以便于提高应用在该节点中的运行性能。
本申请实施例提供的一种应用迁移方法,获取各节点的节点架构信息,可以包括:
接收kubelet上报的节点的节点架构信息。
在本申请汇总,在获取各节点的节点架构信息时,具体可以由kubelet采集容器集群内对应节点的节点架构信息并进行节点架构信息的上报,相应地,则可以接收kubelet上报的节点的节点架构信息,其中,kubelet是K8S工作节点上的一个代理组件,运行在每个节点上。
通过上述过程可以实现节点架构信息的主动上报,从而提高节点架构信息的获取效率。
本申请实施例还提供了一种应用迁移装置,参见图3,其示出了本申请实施例提供的一种应用迁移装置的结构示意图,可以包括:
接收模块31,用于接收容器的镜像地址,根据镜像地址获取镜像元数据;
解析模块32,用于对镜像元数据进行解析,得到目标架构信息;
筛选模块33,用于获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点;
迁移模块34,用于采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。
本申请实施例提供的一种应用迁移装置,还可以包括:
记录模块,用于在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中之前,记录当前容器绑定的存储信息、访问信息和配置信息;
校验模块,用于在将与应用对应的绑定关系中的当前容器替换为新容器之后,校验新容器是否成功绑定存储信息、访问信息和配置信息;
绑定模块,用于若存储信息、访问信息和配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对新容器进行绑定。
本申请实施例提供的一种应用迁移装置,还可以包括:
提示模块,用于在根据记录的对应信息对新容器进行绑定之后,发出应用迁移成功的提示。
本申请实施例提供的一种应用迁移装置,接收模块31可以包括:
确定单元,用于根据镜像地址确定镜像地址对应的镜像仓库类型及镜像仓库URL;
调用单元,用于根据镜像仓库URL调用与镜像仓库类型对应的接口,通过接口获取镜像元数据。
本申请实施例提供的一种应用迁移装置,还可以包括:
确定模块,用于在从中筛选出节点架构信息与目标架构信息相同的目标节点之后,若目标节点的数量大于1,则根据各目标节点的参数确定各目标节点的优先级,并将优先级最高的目标节点确定为最终的目标节点。
本申请实施例提供的一种应用迁移装置,筛选模块33可以包括:
获取单元,用于接收kubelet上报的节点的节点架构信息。
本申请实施例还提供了一种应用迁移设备,参见图4,其示出了本申请实施例提供的一种应用迁移设备的结构示意图,可以包括:
存储器41,用于存储计算机程序;
处理器42,用于执行存储器41存储的计算机程序时可实现如下步骤:
接收容器的镜像地址,根据镜像地址获取镜像元数据;对镜像元数据进行解析,得到目标架构信息;获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点;采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
接收容器的镜像地址,根据镜像地址获取镜像元数据;对镜像元数据进行解析,得到目标架构信息;获取各节点的节点架构信息,从中筛选出节点架构信息与目标架构信息相同的目标节点;采用滚动升级策略将待迁移节点中当前容器中的应用迁移到目标节点的新容器中,并将与应用对应的绑定关系中的当前容器替换为新容器。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的一种应用迁移装置、设备及计算机可读存储介质中相关部分的说明可以参见本申请实施例提供的一种应用迁移方法中对应部分的详细说明,在此不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。另外,本申请实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种应用迁移方法,其特征在于,包括:
接收容器的镜像地址,根据所述镜像地址获取镜像元数据;
对所述镜像元数据进行解析,得到目标架构信息;
获取各节点的节点架构信息,从中筛选出节点架构信息与所述目标架构信息相同的目标节点;
采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中,并将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器;
其中,在采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中之前,还包括:
记录所述当前容器绑定的存储信息、访问信息和配置信息;
在将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器之后,还包括:
校验所述新容器是否成功绑定所述存储信息、所述访问信息和所述配置信息;
若所述存储信息、所述访问信息和所述配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对所述新容器进行绑定;
其中,根据所述镜像地址获取镜像元数据,包括:
根据所述镜像地址确定所述镜像地址对应的镜像仓库类型及镜像仓库URL;
根据所述镜像仓库URL调用与所述镜像仓库类型对应的接口,通过所述接口获取所述镜像元数据;
其中,获取各节点的节点架构信息,包括:
接收kubelet上报的所述节点的节点架构信息。
2.根据权利要求1所述的应用迁移方法,其特征在于,在根据记录的对应信息对所述新容器进行绑定之后,还包括:
发出应用迁移成功的提示。
3.根据权利要求1所述的应用迁移方法,其特征在于,在从中筛选出节点架构信息与所述目标架构信息相同的目标节点之后,还包括:
若所述目标节点的数量大于1,则根据各所述目标节点的参数确定各所述目标节点的优先级,并将优先级最高的目标节点确定为最终的目标节点。
4.一种应用迁移装置,其特征在于,包括:
接收模块,用于接收容器的镜像地址,根据所述镜像地址获取镜像元数据;
解析模块,用于对所述镜像元数据进行解析,得到目标架构信息;
筛选模块,用于获取各节点的节点架构信息,从中筛选出节点架构信息与所述目标架构信息相同的目标节点;
迁移模块,用于采用滚动升级策略将待迁移节点中当前容器中的应用迁移到所述目标节点的新容器中,并将与所述应用对应的绑定关系中的所述当前容器替换为所述新容器;
其中,所述应用迁移装置,还包括:
记录模块,用于记录所述当前容器绑定的存储信息、访问信息和配置信息;
校验模块,用于校验所述新容器是否成功绑定所述存储信息、所述访问信息和所述配置信息;
绑定模块,用于若所述存储信息、所述访问信息和所述配置信息中的至少一项信息未成功绑定,则根据记录的对应信息对所述新容器进行绑定;
其中,所述接收模块,具体用于根据所述镜像地址确定所述镜像地址对应的镜像仓库类型及镜像仓库URL;
根据所述镜像仓库URL调用与所述镜像仓库类型对应的接口,通过所述接口获取所述镜像元数据;
其中,所述筛选模块,具体用于接收kubelet上报的所述节点的节点架构信息。
5.一种应用迁移设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至3任一项所述的应用迁移方法的步骤。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述的应用迁移方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110808735.7A CN113672337B (zh) | 2021-07-16 | 2021-07-16 | 一种应用迁移方法、装置、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110808735.7A CN113672337B (zh) | 2021-07-16 | 2021-07-16 | 一种应用迁移方法、装置、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113672337A CN113672337A (zh) | 2021-11-19 |
CN113672337B true CN113672337B (zh) | 2024-02-13 |
Family
ID=78539449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110808735.7A Active CN113672337B (zh) | 2021-07-16 | 2021-07-16 | 一种应用迁移方法、装置、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672337B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172808A (zh) * | 2021-12-07 | 2022-03-11 | 中国电信股份有限公司 | Kubernetes集群升级方法、系统、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603592A (zh) * | 2015-10-15 | 2017-04-26 | 中国电信股份有限公司 | 一种用于基于服务模型的应用集群迁移的方法和迁移装置 |
WO2017166513A1 (zh) * | 2016-03-31 | 2017-10-05 | 乐视控股(北京)有限公司 | 基于容器技术的应用服务无缝迁移方法和系统 |
CN107728947A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种容器冷迁移方法与系统 |
CN107734019A (zh) * | 2017-09-29 | 2018-02-23 | 中国石油化工股份有限公司 | 勘探开发容器在线迁移的系统和方法 |
CN108958927A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 容器应用的部署方法、装置、计算机设备和存储介质 |
WO2020232890A1 (zh) * | 2019-05-17 | 2020-11-26 | 平安科技(深圳)有限公司 | 负载均衡应用创建方法、装置、计算机设备及存储介质 |
CN112286640A (zh) * | 2020-11-11 | 2021-01-29 | 杭州电子科技大学 | 一种基于CRIU的Podman自动迁移系统及方法 |
US11010259B1 (en) * | 2018-02-28 | 2021-05-18 | Veritas Technologies Llc | Container-based upgrades for appliances |
-
2021
- 2021-07-16 CN CN202110808735.7A patent/CN113672337B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106603592A (zh) * | 2015-10-15 | 2017-04-26 | 中国电信股份有限公司 | 一种用于基于服务模型的应用集群迁移的方法和迁移装置 |
WO2017166513A1 (zh) * | 2016-03-31 | 2017-10-05 | 乐视控股(北京)有限公司 | 基于容器技术的应用服务无缝迁移方法和系统 |
CN107734019A (zh) * | 2017-09-29 | 2018-02-23 | 中国石油化工股份有限公司 | 勘探开发容器在线迁移的系统和方法 |
CN107728947A (zh) * | 2017-10-13 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种容器冷迁移方法与系统 |
US11010259B1 (en) * | 2018-02-28 | 2021-05-18 | Veritas Technologies Llc | Container-based upgrades for appliances |
CN108958927A (zh) * | 2018-05-31 | 2018-12-07 | 康键信息技术(深圳)有限公司 | 容器应用的部署方法、装置、计算机设备和存储介质 |
WO2020232890A1 (zh) * | 2019-05-17 | 2020-11-26 | 平安科技(深圳)有限公司 | 负载均衡应用创建方法、装置、计算机设备及存储介质 |
CN112286640A (zh) * | 2020-11-11 | 2021-01-29 | 杭州电子科技大学 | 一种基于CRIU的Podman自动迁移系统及方法 |
Non-Patent Citations (4)
Title |
---|
eAPT: enhancing APT with a mirror site resolver;Gilhee Lee等;2020 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW);全文 * |
基于Docker Swarm集群的容器迁移策略的实现;毛祺;卢胜林;;信息技术(第09期);全文 * |
基于多种迁移策略的元数据驱动数据迁移研究;张杰;;电脑知识与技术(第08期);全文 * |
异构容器云间应用迁移模型研究;杨凯琪;赵玉龙;陈林;;计算机应用研究(第04期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113672337A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8997088B2 (en) | Methods and systems for automated deployment of software applications on heterogeneous cloud environments | |
CN109388535A (zh) | 一种存储性能测试方法、装置及应用服务器 | |
JP5213671B2 (ja) | テストケースの選択方法及び選択システム | |
CN111064621B (zh) | 业务数据对接方法和装置 | |
CN110798373A (zh) | 一种实现性能测试的方法、测试服务器及计算机存储介质 | |
US20190149571A1 (en) | Method and device for repairing page vulnerability | |
CN113672337B (zh) | 一种应用迁移方法、装置、设备及计算机可读存储介质 | |
CN110688358A (zh) | 一种日志收集方法、装置、设备及可读存储介质 | |
CN111163340A (zh) | 一种基于车联网的ivi系统远程log上报方法和装置 | |
CN110647460A (zh) | 一种测试资源管理方法、装置和测试客户端 | |
CN111435327B (zh) | 一种日志记录的处理方法、装置及系统 | |
CN116775086A (zh) | 一种安卓设备的分区升级方法及相关装置 | |
CN110968475A (zh) | 监控网页的方法、装置、电子设备及可读存储介质 | |
CN103019927B (zh) | 一种性能测试方法和系统 | |
CN115525545A (zh) | 一种基于Docker的自动化测试方法、系统、设备及介质 | |
US11288175B1 (en) | Software production load and software test load synchronization feedback system | |
CN108769246B (zh) | 一种nfs共享最大化的测试方法和系统 | |
CN111258871B (zh) | 一种分布式文件系统的验证方法、装置、设备及存储介质 | |
CN110019262B (zh) | 数据更新方法及装置 | |
WO2022214200A1 (en) | Method and network element for pre-upgrade use case validation | |
CN113377413A (zh) | 一种基于麒麟桌面操作系统的软件批量适配方法 | |
CN106354602A (zh) | 一种服务监控方法和设备 | |
CN111857744A (zh) | 一种超融合系统的安装方法、系统、设备以及介质 | |
CN110784518A (zh) | 一种静态资源获取方法与装置 | |
CN116301931A (zh) | 软件包的部署方法及装置 |
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 |