CN113268312A - 一种应用迁移方法及系统 - Google Patents
一种应用迁移方法及系统 Download PDFInfo
- Publication number
- CN113268312A CN113268312A CN202110527731.1A CN202110527731A CN113268312A CN 113268312 A CN113268312 A CN 113268312A CN 202110527731 A CN202110527731 A CN 202110527731A CN 113268312 A CN113268312 A CN 113268312A
- Authority
- CN
- China
- Prior art keywords
- application
- destination node
- type information
- migration
- migration destination
- 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.)
- Granted
Links
- 238000013508 migration Methods 0.000 title claims abstract description 160
- 230000005012 migration Effects 0.000 title claims abstract description 160
- 238000000034 method Methods 0.000 title claims abstract description 28
- 230000036541 health Effects 0.000 claims description 38
- 238000012544 monitoring process Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 12
- 238000010276 construction Methods 0.000 claims description 5
- 230000003862 health status Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 1
Images
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
-
- 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/45591—Monitoring or debugging support
-
- 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/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种应用迁移方法及系统,包括:确定待迁移应用对应的迁移目的节点;通过迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将处理器架构类型信息以及操作系统类型信息发送至镜像仓库;通过镜像仓库基于处理器架构类型信息以及操作系统类型信息获取目标镜像中的目标层文件,并将目标层文件发送至迁移目的节点;其中,目标镜像包括多种处理器架构的基础镜像以及应用层文件,目标层文件包括应用层文件以及迁移目的节点的处理器架构类型信息以及操作系统类型信息对应的基础镜像;通过迁移目的节点获取目标层文件,并基于目标层文件启动对应的应用容器实例。能够保障应用在不同处理器架构之间快速迁移。
Description
技术领域
本申请涉及容器技术领域,特别涉及一种应用迁移方法及系统。
背景技术
目前,随着云计算技术的发展,对应用的云原生化改造以及创新也成为热点,除了传统的X86处理,以ARM、RISC-V等处理器也在飞速发展,呈现多架构并存的态势,如何做到云原生应用系统在不同架构之间快速、平滑迁移变成了一个亟需解决的问题。然而,基于已有的传统物理机、虚拟机形式,无法实现应用的跨架构快速迁移,具有很大的技术壁垒。
发明内容
有鉴于此,本申请的目的在于提供一种应用迁移方法及系统,能够保障应用在不同处理器架构之间快速迁移。其具体方案如下:
第一方面,本申请公开了一种应用迁移方法,包括:
确定待迁移应用对应的迁移目的节点;
通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库;
通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像;
通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
可选的,所述确定待迁移应用对应的迁移目的节点,包括:
获取应用迁移指令;
基于所述应用迁移指令确定所述迁移目的节点。
可选的,所述确定待迁移应用对应的迁移目的节点,包括:
监测各服务器节点中应用容器实例的健康状态;
当监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
可选的,所述监测各服务器节点中应用容器实例的健康状态,包括:
获取各服务器节点上报的应用容器实例的健康状态;
其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
可选的,所述方法还包括:
确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;
获取各个所述操作系统的基础镜像;
建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;
将所述应用镜像推送到所述镜像仓库。
可选的,所述建立所述应用系统与各个所述基础镜像的关联关系,包括:
基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
可选的,所述方法还包括:
通过所述迁移目的节点将所述待迁移应用对应的应用标识发送至所述镜像仓库;
相应的,所述通过所述镜像仓库基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
第二方面,本申请公开了一种应用迁移系统,包括云平台、迁移目的节点、镜像仓库,其中,
所述云平台,用于确定待迁移应用对应的迁移目的节点;
所述迁移目的节点,用于获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库;
所述镜像仓库,用于基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像;
所述迁移目的节点,用于获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
可选的,所述云平台,具体用于:
获取应用迁移指令;
基于所述应用迁移指令确定所述迁移目的节点。
可选的,所述云平台,包括:
节点健康状态监测模块,用于监测各服务器节点中应用容器实例的健康状态;
迁移目的节点确定模块,用于当所述节点健康状态监测模块监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
可选的,所述节点健康状态监测模块,具体用于:
获取各服务器节点上报的应用容器实例的健康状态;
其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
可选的,所述系统还包括:
应用镜像构建模块,用于确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;获取各个所述操作系统的基础镜像;建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;
应用镜像推送模块,用于将所述应用镜像推送到所述镜像仓库。
可选的,所述应用镜像构建模块,具体用于:
基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
可选的,所述迁移目的节点,还用于:
将所述待迁移应用对应的应用标识发送至所述镜像仓库;
相应的,所述镜像仓库,还用于基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
可见,本申请先确定待迁移应用对应的迁移目的节点,之后通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库,然后通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像,之后通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。也即,本申请通过获取目标镜像中的目标层文件在迁移目的节点创建应用容器实例,而目标镜像中包括多种处理器架构的基础镜像以及应用层文件,获取迁移目的节点的处理器架构类型信息以及操作系统类型信息对应的基础镜像,以实现将应用迁移至迁移目的节点,这样,能够保障应用在不同处理器架构之间快速迁移。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种应用迁移方法流程图;
图2为本申请公开的一种具体的应用迁移方法流程图;
图3为本申请公开的一种具体的应用迁移示意图;
图4为本申请公开的一种应用迁移系统结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,随着云计算技术的发展,对应用的云原生化改造以及创新也成为热点,除了传统的X86处理,以ARM、RISC-V等处理器也在飞速发展,呈现多架构并存的态势,如何做到云原生应用系统在不同架构之间快速、平滑迁移变成了一个亟需解决的问题。然而,基于已有的传统物理机、虚拟机形式,无法实现应用的跨架构快速迁移,具有很大的技术壁垒。为此,本申请实施例公开了一种应用迁移方案,能够保障应用在不同处理器架构之间快速迁移。
参见图1所示,本申请实施例公开了一种应用迁移方法,包括:
步骤S11:确定待迁移应用对应的迁移目的节点。
在具体的实施方式中,可以获取应用迁移指令;基于所述应用迁移指令确定所述迁移目的节点。
也即,用户可以选择迁移目的节点,并触发基于选择出的迁移目的节点生成的应用迁移指令,本申请实施例中云平台获取到应用迁移指令,解析出迁移目的节点。
步骤S12:通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库。
在具体的实施方式中,云平台进行容器调度,向迁移目的节点下发应用容器调度指令,迁移目的节点通过容器引擎获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息作为参数发送至镜像仓库。
步骤S13:通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像。
也即,镜像仓库基于获取到的处理器架构类型信息以及操作系统类型信息对目标镜像进行层次化剥离,得到目标层文件。
并且,在具体的实施方式中,本实施例可以确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;获取各个所述操作系统的基础镜像;建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;将所述应用镜像推送到所述镜像仓库。
其中,本实施例可以基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
也即,本申请实施例可以基于容器镜像清单技术,使用manifest(镜像清单文件)将应用系统关联多个架构的基础镜像,得到联合基础镜像层文件,然后在这个联合基础镜像层文件之上,完成应用层的二进制应用文件叠加,形成支持跨架构的胖镜像,从而构建关联了各个所述处理器架构的基础镜像的应用镜像,实现镜像的兼容性。
其中,镜像仓库可以为Registry、Harbor等。
例如,用户针对要进行云原生化的应用系统选择要适配的多种处理器架构,以及各架构所需适配的操作系统,根据选择的操作系统寻找各操作系统的基础镜像,生成应用镜像的清单文件,与选择的操作系统基础镜像形成软连接关联关系,形成胖镜像,推送到Registry/Harbor等镜像仓库中。
并且,在具体的实施方式中,本实施例可以通过所述迁移目的节点将所述待迁移应用对应的应用标识发送至所述镜像仓库;相应的,所述通过所述镜像仓库基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
也即,本申请实施例可以预先构建多个应用的应用镜像,推送至镜像仓库。
步骤S14:通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
在具体实施方式中,可以将获取到的目标层文件在本地保存,并根据清单技术对目标层文件进行完整性校验,然后基于目标层文件创建并启动对应的应用容器实例。
可见,本申请实施例先确定待迁移应用对应的迁移目的节点,之后通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库,然后通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像,之后通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。也即,本申请实施例通过获取目标镜像中的目标层文件在迁移目的节点创建应用容器实例,而目标镜像中包括多种处理器架构的基础镜像以及应用层文件,获取迁移目的节点的处理器架构类型信息以及操作系统类型信息对应的基础镜像,以实现将应用迁移至迁移目的节点,这样,能够保障应用在不同处理器架构之间快速迁移。
参见图所示,本申请实施例公开了一种具体的应用迁移方法,包括:
步骤S21:监测各服务器节点中应用容器实例的健康状态。
在具体的实施方式中,服务器节点当接收到云平台下发的容器调度指令,通过容器引擎获取自身的处理器架构类型信息以及操作系统类型信息,并将处理器架构类型信息以及操作系统类型信息发送至镜像仓库,镜像仓库基于处理器架构类型信息以及操作系统类型信息进行镜像层次化剥离,得到层文件,服务器节点基于该层文件启动对应的应用容器实例。其中,服务器节点创建并启动应用容器实例的具体内容可以参考前述实施例公开的相关内容。
步骤S22:当监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
在具体的实施方式中,本实施例可以获取各服务器节点上报的应用容器实例的健康状态;其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
步骤S23:通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库。
步骤S24:通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点。其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像。
步骤S25:通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
例如,参见图3所示,图3为本申请实施例公开的一种具体的应用迁移示意图。首先基于容器镜像清单技术,创建应用镜像即胖镜像,保证容器镜像的清单中可以指向多种架构处理器的容器镜像层文件,将应用镜像推送至镜像仓库。在云平台中完成容器调度后,可以在不同的架构处理器的服务器节点上进行应用容器实例的创建,在创建的时候容器引擎可以自动获取当前服务器节点的处理器架构和操作系统类型,将这些信息作为入参发送到镜像仓库,镜像仓库根据前述信息对应用镜像进行层次化剥离,剥离后的层文件传输到服务器节点服务器节点将层文件在本地保存,形成完整运行时镜像,从而实现在异构节点上可以正确启动应用容器。在云平台中完成应用创建后,如果当前节点发生故障引起应用跨架构迁移或人为迁移时,云平台可以进行调度,完成跨架构调度后可以完成应用容器启动。具体的,通过云平台中的容器编排层进行容器调度,以及获取服务器节点上报的容器实例健康状态,具体的,服务器节点对当前节点已有的容器实例进行健康检查,判断当前容器是否健康,当不健康的时候上报编排层,编排层根据整个计算节点系统中的各节点状态确定目的节点,完成跨架构调度,根据前述方法完成应用跨架构迁移。以实现云原生应用系统在不同架构之间快速、平滑迁移,使得一套容器云平台可以在当前多架构处理器并存的大背景下快速增长,推动云原生发展落地。
参见图4所示,本申请实施例公开了一种应用迁移系统,包括云平台11、迁移目的节点12、镜像仓库13,其中,
所述云平台11,用于确定待迁移应用对应的迁移目的节点;
所述迁移目的节点12,用于获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库;
所述镜像仓库13,用于基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像;
所述迁移目的节点12,用于获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
可见,本申请实施例先确定待迁移应用对应的迁移目的节点,之后通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库,然后通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像,之后通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。也即,本申请实施例通过获取目标镜像中的目标层文件在迁移目的节点创建应用容器实例,而目标镜像中包括多种处理器架构的基础镜像以及应用层文件,获取迁移目的节点的处理器架构类型信息以及操作系统类型信息对应的基础镜像,以实现将应用迁移至迁移目的节点,这样,能够保障应用在不同处理器架构之间快速迁移。
在一种具体的实施方式中,所述云平台11,具体用于获取应用迁移指令;基于所述应用迁移指令确定所述迁移目的节点。
在另一种具体的实施方式中,所述云平台11,具体包括:
节点健康状态监测模块,用于监测各服务器节点中应用容器实例的健康状态;
迁移目的节点确定模块,用于当所述节点健康状态监测模块监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
其中,节点健康状态监测模块,具体用于获取各服务器节点上报的应用容器实例的健康状态;其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
所述系统还包括:
应用镜像构建模块,用于确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;获取各个所述操作系统的基础镜像;建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;
应用镜像推送模块,用于将所述应用镜像推送到所述镜像仓库。
其中,应用镜像构建模块,具体用于基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
并且,所述迁移目的节点,还用于将所述待迁移应用对应的应用标识发送至所述镜像仓库;相应的,所述镜像仓库,还用于基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种应用迁移方法及系统进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种应用迁移方法,其特征在于,包括:
确定待迁移应用对应的迁移目的节点;
通过所述迁移目的节点获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库;
通过所述镜像仓库基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像;
通过所述迁移目的节点获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
2.根据权利要求1所述的应用迁移方法,其特征在于,所述确定待迁移应用对应的迁移目的节点,包括:
获取应用迁移指令;
基于所述应用迁移指令确定所述迁移目的节点。
3.根据权利要求1所述的应用迁移方法,其特征在于,所述确定待迁移应用对应的迁移目的节点,包括:
监测各服务器节点中应用容器实例的健康状态;
当监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
4.根据权利要求3所述的应用迁移方法,其特征在于,所述监测各服务器节点中应用容器实例的健康状态,包括:
获取各服务器节点上报的应用容器实例的健康状态;
其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
5.根据权利要求1所述的应用迁移方法,其特征在于,还包括:
确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;
获取各个所述操作系统的基础镜像;
建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;
将所述应用镜像推送到所述镜像仓库。
6.根据权利要求5所述的应用迁移方法,其特征在于,所述建立所述应用系统与各个所述基础镜像的关联关系,包括:
基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
7.根据权利要求5所述的应用迁移方法,其特征在于,还包括:
通过所述迁移目的节点将所述待迁移应用对应的应用标识发送至所述镜像仓库;
相应的,所述通过所述镜像仓库基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
8.一种应用迁移系统,其特征在于,包括云平台、迁移目的节点、镜像仓库,其中,
所述云平台,用于确定待迁移应用对应的迁移目的节点;
所述迁移目的节点,用于获取自身的处理器架构类型信息以及操作系统类型信息,并将所述处理器架构类型信息以及所述操作系统类型信息发送至镜像仓库;
所述镜像仓库,用于基于所述处理器架构类型信息以及所述操作系统类型信息获取目标镜像中的目标层文件,并将所述目标层文件发送至所述迁移目的节点;其中,所述目标镜像包括多种处理器架构的基础镜像以及应用层文件,所述目标层文件包括所述应用层文件以及所述迁移目的节点的所述处理器架构类型信息以及所述操作系统类型信息对应的基础镜像;
所述迁移目的节点,用于获取所述目标层文件,并基于所述目标层文件启动对应的应用容器实例。
9.根据权利要求8所述的应用迁移系统,其特征在于,所述云平台,具体用于:
获取应用迁移指令;
基于所述应用迁移指令确定所述迁移目的节点。
10.根据权利要求8所述的应用迁移系统,其特征在于,所述云平台,包括:
节点健康状态监测模块,用于监测各服务器节点中应用容器实例的健康状态;
迁移目的节点确定模块,用于当所述节点健康状态监测模块监测到任一所述服务器节点中的所述应用容器实例的健康状态为不健康,则基于其他节点的所述健康状态确定出所述迁移目的节点。
11.根据权利要求10所述的应用迁移系统,其特征在于,所述节点健康状态监测模块,具体用于:
获取各服务器节点上报的应用容器实例的健康状态;
其中,各所述服务器节点定时触发检测指令,基于所述检查指令检测自身相应应用容器实例的健康状态。
12.根据权利要求8所述的应用迁移系统,其特征在于,还包括:
应用镜像构建模块,用于确定应用系统待适配的多种处理器架构以及多种所述处理器架构对应的操作系统;获取各个所述操作系统的基础镜像;建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系,并将所述应用系统的应用文件确定为应用层文件,得到应用镜像;
应用镜像推送模块,用于将所述应用镜像推送到所述镜像仓库。
13.根据权利要求12所述的应用迁移系统,其特征在于,所述应用镜像构建模块,具体用于:
基于容器镜像清单文件建立所述应用系统与各个所述处理器架构的所述基础镜像的关联关系。
14.根据权利要求12所述的应用迁移系统,其特征在于,所述迁移目的节点,还用于:
将所述待迁移应用对应的应用标识发送至所述镜像仓库;
相应的,所述镜像仓库,还用于基于所述应用标识从全部所述应用镜像中确定所述目标镜像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110527731.1A CN113268312B (zh) | 2021-05-14 | 2021-05-14 | 一种应用迁移方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110527731.1A CN113268312B (zh) | 2021-05-14 | 2021-05-14 | 一种应用迁移方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113268312A true CN113268312A (zh) | 2021-08-17 |
CN113268312B CN113268312B (zh) | 2022-08-02 |
Family
ID=77230979
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110527731.1A Active CN113268312B (zh) | 2021-05-14 | 2021-05-14 | 一种应用迁移方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113268312B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115826995A (zh) * | 2022-10-31 | 2023-03-21 | 北京凯思昊鹏软件工程技术有限公司 | 一种分布式镜像构建系统 |
CN117369953A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
CN117369952A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 集群的处理方法、装置、设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790713A (zh) * | 2017-03-08 | 2017-05-31 | 中国人民解放军国防科学技术大学 | 云计算环境下的跨数据中心虚拟机迁移方法 |
US20180189176A1 (en) * | 2017-01-05 | 2018-07-05 | Portworx, Inc. | Graph driver layer management |
CN110275761A (zh) * | 2018-03-16 | 2019-09-24 | 华为技术有限公司 | 调度方法、装置和主节点 |
CN111124430A (zh) * | 2019-12-31 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种混合架构的微服务部署方法和装置 |
CN111309401A (zh) * | 2020-03-24 | 2020-06-19 | 广西梯度科技有限公司 | 一种在Kubernetes中运行多CPU架构服务的方法 |
CN111338641A (zh) * | 2020-02-11 | 2020-06-26 | 腾讯云计算(北京)有限责任公司 | 一种应用发布方法及装置 |
CN111736952A (zh) * | 2020-06-21 | 2020-10-02 | 苏州浪潮智能科技有限公司 | 一种云平台资源池部署的方法、装置、设备及可读介质 |
CN111752806A (zh) * | 2020-07-01 | 2020-10-09 | 浪潮云信息技术股份公司 | 一种云环境下虚拟磁盘io指标采集的方法 |
CN111984275A (zh) * | 2020-07-25 | 2020-11-24 | 苏州浪潮智能科技有限公司 | 基于cpu架构类型的系统部署方法、系统、终端及存储介质 |
CN112162852A (zh) * | 2020-09-18 | 2021-01-01 | 北京浪潮数据技术有限公司 | 一种多架构cpu节点的管理方法、装置及相关组件 |
CN112187532A (zh) * | 2020-09-18 | 2021-01-05 | 北京浪潮数据技术有限公司 | 一种节点管控方法及系统 |
CN112379892A (zh) * | 2020-10-29 | 2021-02-19 | 远光软件股份有限公司 | 喷氨预测代码的处理方法、装置、存储介质及终端设备 |
-
2021
- 2021-05-14 CN CN202110527731.1A patent/CN113268312B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180189176A1 (en) * | 2017-01-05 | 2018-07-05 | Portworx, Inc. | Graph driver layer management |
CN106790713A (zh) * | 2017-03-08 | 2017-05-31 | 中国人民解放军国防科学技术大学 | 云计算环境下的跨数据中心虚拟机迁移方法 |
CN110275761A (zh) * | 2018-03-16 | 2019-09-24 | 华为技术有限公司 | 调度方法、装置和主节点 |
CN111124430A (zh) * | 2019-12-31 | 2020-05-08 | 苏州浪潮智能科技有限公司 | 一种混合架构的微服务部署方法和装置 |
CN111338641A (zh) * | 2020-02-11 | 2020-06-26 | 腾讯云计算(北京)有限责任公司 | 一种应用发布方法及装置 |
CN111309401A (zh) * | 2020-03-24 | 2020-06-19 | 广西梯度科技有限公司 | 一种在Kubernetes中运行多CPU架构服务的方法 |
CN111736952A (zh) * | 2020-06-21 | 2020-10-02 | 苏州浪潮智能科技有限公司 | 一种云平台资源池部署的方法、装置、设备及可读介质 |
CN111752806A (zh) * | 2020-07-01 | 2020-10-09 | 浪潮云信息技术股份公司 | 一种云环境下虚拟磁盘io指标采集的方法 |
CN111984275A (zh) * | 2020-07-25 | 2020-11-24 | 苏州浪潮智能科技有限公司 | 基于cpu架构类型的系统部署方法、系统、终端及存储介质 |
CN112162852A (zh) * | 2020-09-18 | 2021-01-01 | 北京浪潮数据技术有限公司 | 一种多架构cpu节点的管理方法、装置及相关组件 |
CN112187532A (zh) * | 2020-09-18 | 2021-01-05 | 北京浪潮数据技术有限公司 | 一种节点管控方法及系统 |
CN112379892A (zh) * | 2020-10-29 | 2021-02-19 | 远光软件股份有限公司 | 喷氨预测代码的处理方法、装置、存储介质及终端设备 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115826995A (zh) * | 2022-10-31 | 2023-03-21 | 北京凯思昊鹏软件工程技术有限公司 | 一种分布式镜像构建系统 |
CN117369953A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
CN117369952A (zh) * | 2023-12-08 | 2024-01-09 | 中电云计算技术有限公司 | 集群的处理方法、装置、设备及存储介质 |
CN117369953B (zh) * | 2023-12-08 | 2024-03-15 | 中电云计算技术有限公司 | 镜像同步方法、装置、设备及存储介质 |
CN117369952B (zh) * | 2023-12-08 | 2024-03-15 | 中电云计算技术有限公司 | 集群的处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113268312B (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113268312B (zh) | 一种应用迁移方法及系统 | |
CN106528224B (zh) | 一种Docker容器的内容更新方法、服务器及系统 | |
EP3304303B1 (en) | Allocating or announcing availability of a software container | |
US20220179682A1 (en) | Task processing method, apparatus, and system based on distributed system | |
CN111190714B (zh) | 一种基于区块链的云计算任务调度系统及方法 | |
CN110138577B (zh) | 集群创建方法、第一服务器以及可读存储介质 | |
US11216343B1 (en) | System and method for accelerating processing in event-driven server-less computing | |
CN114153566A (zh) | 跨处理器架构多容器集群间服务发现方法、装置及设备 | |
US10860375B1 (en) | Singleton coordination in an actor-based system | |
CN110674095B (zh) | 一种ctdb集群扩展方法、装置、设备及可读存储介质 | |
CN115088235B (zh) | 主节点选取方法、装置、电子设备以及存储介质 | |
CN108769118B (zh) | 一种分布式系统中主节点的选取方法及装置 | |
CN112084004A (zh) | 一种面向容器应用的容器探测与维护方法及系统 | |
WO2018004403A1 (en) | Managing a lifecycle of a software container | |
CN112214413B (zh) | 一种应用程序的测试方法、装置、设备及存储介质 | |
CN113687940B (zh) | 负载均衡方法、装置及物理机 | |
CN113391814A (zh) | 任务处理方法、装置、系统及存储介质 | |
CN117170799A (zh) | 容器迁移方法、装置、计算机设备和存储介质 | |
CN110688200A (zh) | 一种在线迁移虚拟机磁盘树的方法及装置 | |
CN111008064A (zh) | 虚机资源调度方法和装置、集群部署方法和装置 | |
CN116263727A (zh) | 主备数据库集群及选主方法、计算设备及计算机存储介质 | |
US9348672B1 (en) | Singleton coordination in an actor-based system | |
CN112148348B (zh) | 任务处理方法、装置及存储介质 | |
CN114896018B (zh) | 一种bmc应用界面语言切换的方法、装置及介质 | |
CN112905109B (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 |