CN114416296A - 一种混合cpu构架大规模集群容器的启动提速方法及系统 - Google Patents

一种混合cpu构架大规模集群容器的启动提速方法及系统 Download PDF

Info

Publication number
CN114416296A
CN114416296A CN202210024490.3A CN202210024490A CN114416296A CN 114416296 A CN114416296 A CN 114416296A CN 202210024490 A CN202210024490 A CN 202210024490A CN 114416296 A CN114416296 A CN 114416296A
Authority
CN
China
Prior art keywords
mirror image
container
module
mirror
warehouse
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.)
Pending
Application number
CN202210024490.3A
Other languages
English (en)
Inventor
石光银
蔡卫卫
高传集
孙思清
张勇
张佳伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202210024490.3A priority Critical patent/CN114416296A/zh
Publication of CN114416296A publication Critical patent/CN114416296A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种混合CPU构架大规模集群容器的启动提速方法及系统,属于集群容器领域;所述的方法具体步骤如下:S1根据节点的CPU架构,构建对应架构的镜像;S2将镜像推送到镜像仓库;S3Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;S4容器运行时从镜像仓库拉取镜像;S5容器运行时创建沙箱和容器组;本发明方法能够提升大规模集群场景中容器的启动速度,并将其复杂度降至O(1);通过使用本发明方法,可以便捷地管理上千节点容器的构建和创建,支持基于混合操作系统运行容器,并且提供了一套适配混合CPU架构的容器管理工具,提升了容器的启动效率,满足了函数计算、超算等对容器启动性能要求极高的场景需求。

Description

一种混合CPU构架大规模集群容器的启动提速方法及系统
技术领域
本发明公开一种混合CPU构架大规模集群容器的启动提速方法及系统,涉及集群容器技术领域。
背景技术
随着容器云平台大规模的运用,传统应用都启动了上云操作,纷纷使用容器技术提供应用微服务。当前大规模集群存在多个特点:1.集群种类不同:包含了各种异构物理设备和软件设备,不同的操作系统,如Ubuntu、CentOS、UOS、国产麒麟和Windows等以及不同的CPU架构,包括X86、ARM、MIPS、PPC和S390等;2.集群规模大小不一:节点数量可以上千甚至上万,并且随着各种应用需求和场景,集群规模总体呈现持续增长。
针对上述特点,容器云平台需要提供一套高效的容器管理工具管理大规模集群,适配不同操作系统、不同CPU架构环境,同时支持构建多CPU架构的业务镜像。
在新的硬件平台构建多CPU架构的业务镜像,可能会遇到目的平台上不允许或不能够安装所需编译器、目的平台资源贫乏、所需编译器无法运行甚至目的平台还未建立的情况,使用交叉编译技术有利于解决这些问题。关于交叉编译技术是指从源代码到能直接被计算机或虚拟机执行的目标代码的翻译过程,编译器可以生成在指定计算机架构和操作系统环境下运行的目标代码。
为了满足多种应用以及需求,就目前常规的容器启动方法而言,大规模集群中容器运行时启动容器的时间约为10秒,若应用容器为单副本且应用容器发生漂移时,还可能造成服务中断时间较长。针对特定的超算或者函数计算等场景,这些场景对容器启动速度要求较高,传统的容器启动速度无法满足大规模集群的业务需求。因此,现发明一种混合CPU构架大规模集群容器的启动提速方法及系统,以解决上述问题。
发明内容
本发明针对现有技术的问题,提供一种混合CPU构架大规模集群容器的启动提速方法及系统,所采用的技术方案为:一种混合CPU构架大规模集群容器的启动提速方法,所述的方法具体步骤如下:
S1根据节点的CPU架构,构建对应架构的镜像;
S2将镜像推送到镜像仓库;
S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
S4容器运行时从镜像仓库拉取镜像;
S5容器运行时创建沙箱和容器组。
所述S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,具体步骤如下:
S301将文件分发协议嵌入到Docker仓库项目中;
S302镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点。
所述S4容器运行时从镜像仓库拉取镜像的具体步骤如下:
S401通过每个节点拉取部分镜像层文件;
S402在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
S403根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器。
所述S5容器运行时创建沙箱和容器组的具体步骤如下:
S501在每个节点上启用容器运行时的插件,并作为守护进程运行;
S502转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
S503根据镜像名称和tag解析得到镜像manifest的digest值;
S504根据镜像manifest的digest值,从仓库中下载manifest,保存在contentstore中;
S505根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
S506容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑。
一种混合CPU构架大规模集群容器的启动提速系统,所述的系统具体包括镜像构件模块、镜像推送模块、拉取创建模块、镜像拉取模块和运行创建模块:
镜像构件模块:根据节点的CPU架构,构建对应架构的镜像;
镜像推送模块:将镜像推送到镜像仓库;
拉取创建模块:Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
镜像拉取模块:容器运行时从镜像仓库拉取镜像;
运行创建模块:容器运行时创建沙箱和容器组。
所述拉取创建模块Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,拉取创建模块具体包括文件嵌入模块和数据分割模块:
文件嵌入模块:将文件分发协议嵌入到Docker仓库项目中;
数据分割模块:镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点。
所述镜像拉取模块具体包括文件拉取模块、数据指引模块和镜像组成模块:
文件拉取模块:通过每个节点拉取部分镜像层文件;
数据指引模块:在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
镜像组成模块:根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器。
所述运行创建模块具体包括插件启用模块、文件访问模块、镜像处理模块、第一镜像运算模块、第二镜像运算模块和容器处理模块:
插件启用模块:在每个节点上启用容器运行时的插件,并作为守护进程运行;
文件访问模块:转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
镜像处理模块:根据镜像名称和tag解析得到镜像manifest的digest值;
第一镜像运算模块:根据镜像manifest的digest值,从仓库中下载manifest,保存在content store中;
第二镜像运算模块:根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
容器处理模块:容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑。
本发明的有益效果为:,本发明方法能够提升大规模集群场景中容器的启动速度,并将其复杂度降至O(1);通过使用本发明方法,可以便捷地管理上千节点容器的构建和创建,支持基于混合操作系统运行容器,并且提供了一套适配混合CPU架构的容器管理工具,提升了容器的启动效率,满足了函数计算、超算等对容器启动性能要求极高的场景需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明方法实施例实现流程图;图2是本发明实施例的容器云分布式下载拉取镜像示意图;图3是本发明实施例的容器启动镜像加载过程示意图;
图4是本发明实施例的容器创建时间优化前后对比图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定;
实施例一:
一种混合CPU构架大规模集群容器的启动提速方法,所述的方法具体步骤如下:
S1根据节点的CPU架构,构建对应架构的镜像;
S2将镜像推送到镜像仓库;
S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
S4容器运行时从镜像仓库拉取镜像;
S5容器运行时创建沙箱和容器组;
传统的容器管理工具无法满足大规模集群的使用需求和性能要求,本发明中使用的容器运行时兼顾易用性和效率,提供了大规模集群下的镜像构建、推送以及运行时创建等功能,实现过程如图1所示,其中镜像的构建使用了混合CPU架构的交叉编译技术,该技术基于C、GO等语言,编译出多CPU架构的二进制文件,制作为相应CPU架构的容器镜像,使用镜像仓库的混合CPU架构元数据,最终保存为不同架构的镜像文件;在容器产品发出拉取镜像指令后,将CPU架构信息发送给镜像仓库,镜像仓库返回对应CPU架构的镜像;
进一步的,所述S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,具体步骤如下:
S301将文件分发协议嵌入到Docker仓库项目中;
S302镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点;
为了提升大规模集群中镜像的拉取速度,该发明使用了基于镜像分层技术的分布式下载网络,功能示意图如图2所示;
针对Docker镜像分层的特点以及镜像层大小分布,将文件分发协议嵌入到Docker仓库项目中,允许不同的host之间共享镜像,集群中的节点形成分布式下载网络;
镜像仓库按照镜像的分层分割成多个block种子数据块,一旦一个数据块被请求,那么接下来相同分片的子分片则会被依次请求,将一个分片的请求并行地发送到多个节点;
进一步的,所述S4容器运行时从镜像仓库拉取镜像的具体步骤如下:
S401通过每个节点拉取部分镜像层文件;
S402在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
S403根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器;
每个节点只负责拉取部分镜像层文件,有效地降低镜像仓库的压力,同时也提升了镜像下载速度,保证集群拉取镜像时间约等于单个节点拉取镜像时间;镜像拉取过程中,节点间对外共享已下载的数据块,镜像仓库记录下载情况,用于指引后续下载请求;当一个节点拥有了镜像后,就可以作为种子节点为其他节点分发镜像;在容器创建过程中,拉取镜像的策略可以配置为Always、Never和IfNotPresent;当拉取策略为IfNotPresent时,如果节点上已存在容器镜像,则跳过镜像拉取环节,加速容器的启动;根据镜像的拉取机制,最终将镜像文件组成完整的镜像用于创建容器;以上流程保证了大规模集群中拉取镜像的时间复杂度为O(1);
再进一步的,所述S5容器运行时创建沙箱和容器组的具体步骤如下:
S501在每个节点上启用容器运行时的插件,并作为守护进程运行;
S502转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
S503根据镜像名称和tag解析得到镜像manifest的digest值;
S504根据镜像manifest的digest值,从仓库中下载manifest,保存在contentstore中;
S505根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
S506容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑;
为了提升容器的启动速度,本发明实现了容器启动镜像按需下载的功能,具体实现如图3所示:
在每个节点上启用容器运行时的插件,并作为守护进程运行;
转换镜像时,将所有层文件设置为可访问,并且按照访问顺序对存档条目进行排序,并在末尾放置一个地标文件;在运行容器前,通过单个HTTP范围请求预取和预缓存此范围,这有利于提升工作负载的缓存命中率,减轻容器运行时的开销;
根据镜像名称和tag解析得到镜像manifest的digest值;
根据镜像manifest的digest值,从仓库中下载manifest,保存在content store中;
根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑;
当有拉取镜像的操作发生时,解析镜像中的每一层,镜像层采用一种高效的压缩文件格式,用于有选择地查找存档和提取文件条目,而无需扫描整个blob;该文件格式通过地标文件将镜像层中的文件分为运行时最有可能用到的和可能用不到的文件;这样后台任务会优先缓存容器运行时需要的文件,增加本地缓存的命中率,从而加速容器的启动速度;
所有镜像层解析完后会保存镜像的元数据;容器启动时,根据容器元数据挂载远端镜像层文件到节点,后续层在容器使用时,按需加载,无需等到镜像全部下载完再启动,大大提升了容器启动速度;
本发明方法在单节点和大规模集群的对比测试结果如图4所示,容器启动过程,主要耗时在于镜像的拉取过程;其中单节点拉取镜像需要5s,大规模集群(1000节点)在未优化情况下拉取需要32秒,结合分布式下载网络后1000节点的大规模集群拉取镜像则仅需6秒;在大规模集群上,优化后拉取镜像速度基本和单节点保持一致,本发明大大地提升了大规模集群场景中容器的启动速度,并将其复杂度降至O(1);通过使用本发明方法,可以便捷地管理上千节点容器的构建和创建,支持基于混合操作系统运行容器,并且提供了一套适配混合CPU架构的容器管理工具,提升了容器的启动效率,满足了函数计算、超算等对容器启动性能要求极高的场景需求。
实施例二:
一种混合CPU构架大规模集群容器的启动提速系统,所述的系统具体包括镜像构件模块、镜像推送模块、拉取创建模块、镜像拉取模块和运行创建模块:
镜像构件模块:根据节点的CPU架构,构建对应架构的镜像;
镜像推送模块:将镜像推送到镜像仓库;
拉取创建模块:Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
镜像拉取模块:容器运行时从镜像仓库拉取镜像;
运行创建模块:容器运行时创建沙箱和容器组;
进一步的,所述拉取创建模块Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,拉取创建模块具体包括文件嵌入模块和数据分割模块:
文件嵌入模块:将文件分发协议嵌入到Docker仓库项目中;
数据分割模块:镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点;
进一步的,所述镜像拉取模块具体包括文件拉取模块、数据指引模块和镜像组成模块:
文件拉取模块:通过每个节点拉取部分镜像层文件;
数据指引模块:在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
镜像组成模块:根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器;
再进一步的,所述运行创建模块具体包括插件启用模块、文件访问模块、镜像处理模块、第一镜像运算模块、第二镜像运算模块和容器处理模块:
插件启用模块:在每个节点上启用容器运行时的插件,并作为守护进程运行;
文件访问模块:转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
镜像处理模块:根据镜像名称和tag解析得到镜像manifest的digest值;
第一镜像运算模块:根据镜像manifest的digest值,从仓库中下载manifest,保存在content store中;
第二镜像运算模块:根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
容器处理模块:容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种混合CPU构架大规模集群容器的启动提速方法,其特征是所述的方法具体步骤如下:
S1根据节点的CPU架构,构建对应架构的镜像;
S2将镜像推送到镜像仓库;
S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
S4容器运行时从镜像仓库拉取镜像;
S5容器运行时创建沙箱和容器组。
2.根据权利要求1所述的方法,其特征是所述S3 Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,具体步骤如下:
S301将文件分发协议嵌入到Docker仓库项目中;
S302镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点。
3.根据权利要求2所述的方法,其特征是所述S4容器运行时从镜像仓库拉取镜像的具体步骤如下:
S401通过每个节点拉取部分镜像层文件;
S402在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
S403根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器。
4.根据权利要求3所述的方法,其特征是所述S5容器运行时创建沙箱和容器组的具体步骤如下:
S501在每个节点上启用容器运行时的插件,并作为守护进程运行;
S502转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
S503根据镜像名称和tag解析得到镜像manifest的digest值;
S504根据镜像manifest的digest值,从仓库中下载manifest,保存在content store中;
S505根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
S506容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑。
5.一种混合CPU构架大规模集群容器的启动提速系统,其特征是所述的系统具体包括镜像构件模块、镜像推送模块、拉取创建模块、镜像拉取模块和运行创建模块:
镜像构件模块:根据节点的CPU架构,构建对应架构的镜像;
镜像推送模块:将镜像推送到镜像仓库;
拉取创建模块:Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时;
镜像拉取模块:容器运行时从镜像仓库拉取镜像;
运行创建模块:容器运行时创建沙箱和容器组。
6.根据权利要求5所述的系统,其特征是所述拉取创建模块Kubelet在节点上发起拉取镜像和创建容器组命令到容器运行时,基于镜像分层技术的分布式下载网络,拉取创建模块具体包括文件嵌入模块和数据分割模块:
文件嵌入模块:将文件分发协议嵌入到Docker仓库项目中;
数据分割模块:镜像仓库按照镜像的分层分割成多个block种子数据块,依次请求并行地发送到多个节点。
7.根据权利要求6所述的系统,其特征是所述镜像拉取模块具体包括文件拉取模块、数据指引模块和镜像组成模块:
文件拉取模块:通过每个节点拉取部分镜像层文件;
数据指引模块:在镜像拉取时,节点间对外分享已下载的数据块,镜像仓库记录下载情况用于指引后续下载请求;
镜像组成模块:根据镜像的拉取机制,将镜像文件组成完整的镜像用于创建容器。
8.根据权利要求7所述的系统,其特征是所述运行创建模块具体包括插件启用模块、文件访问模块、镜像处理模块、第一镜像运算模块、第二镜像运算模块和容器处理模块:
插件启用模块:在每个节点上启用容器运行时的插件,并作为守护进程运行;
文件访问模块:转换镜像时,将所有层文件设置为可访问,并按照访问顺序对存档条目进行排序,在末尾放置一个地标文件;
镜像处理模块:根据镜像名称和tag解析得到镜像manifest的digest值;
第一镜像运算模块:根据镜像manifest的digest值,从仓库中下载manifest,保存在content store中;
第二镜像运算模块:根据manifest的内容获取镜像config的digest值,从镜像仓库中下载config,保存在content store中;
容器处理模块:容器运行时生成rootfs目录为当前层准备文件系统,并从镜像仓库挂载到本地,再执行文件系统中的逻辑。
CN202210024490.3A 2022-01-11 2022-01-11 一种混合cpu构架大规模集群容器的启动提速方法及系统 Pending CN114416296A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210024490.3A CN114416296A (zh) 2022-01-11 2022-01-11 一种混合cpu构架大规模集群容器的启动提速方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210024490.3A CN114416296A (zh) 2022-01-11 2022-01-11 一种混合cpu构架大规模集群容器的启动提速方法及系统

Publications (1)

Publication Number Publication Date
CN114416296A true CN114416296A (zh) 2022-04-29

Family

ID=81272396

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210024490.3A Pending CN114416296A (zh) 2022-01-11 2022-01-11 一种混合cpu构架大规模集群容器的启动提速方法及系统

Country Status (1)

Country Link
CN (1) CN114416296A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114860344A (zh) * 2022-05-26 2022-08-05 中国工商银行股份有限公司 容器启动方法、装置、计算机设备和存储介质
CN115826995A (zh) * 2022-10-31 2023-03-21 北京凯思昊鹏软件工程技术有限公司 一种分布式镜像构建系统
CN116541133A (zh) * 2023-07-05 2023-08-04 苏州浪潮智能科技有限公司 容器应用的纳管方法、其装置及电子设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114860344A (zh) * 2022-05-26 2022-08-05 中国工商银行股份有限公司 容器启动方法、装置、计算机设备和存储介质
CN115826995A (zh) * 2022-10-31 2023-03-21 北京凯思昊鹏软件工程技术有限公司 一种分布式镜像构建系统
CN115826995B (zh) * 2022-10-31 2023-07-14 北京凯思昊鹏软件工程技术有限公司 一种分布式镜像构建系统
CN116541133A (zh) * 2023-07-05 2023-08-04 苏州浪潮智能科技有限公司 容器应用的纳管方法、其装置及电子设备
CN116541133B (zh) * 2023-07-05 2023-09-15 苏州浪潮智能科技有限公司 容器应用的纳管方法、其装置及电子设备

Similar Documents

Publication Publication Date Title
CN114416296A (zh) 一种混合cpu构架大规模集群容器的启动提速方法及系统
US11068245B2 (en) Containerized deployment of microservices based on monolithic legacy applications
US11829742B2 (en) Container-based server environments
EP3411785B1 (en) Containerized deployment of microservices based on monolithic legacy applications
US8549106B2 (en) Leveraging remote server pools for client applications
US9027022B2 (en) Software virtual machine for acceleration of transactional data processing
US6192514B1 (en) Multicomputer system
US6393459B1 (en) Multicomputer with distributed directory and operating system
Fagg et al. HARNESS and fault tolerant MPI
US8812627B2 (en) System and method for installation and management of cloud-independent multi-tenant applications
US9147373B2 (en) Transparent efficiency for in-memory execution of map reduce job sequences
US8429649B1 (en) Systems and methods for data management in a virtual computing environment
US20190243681A1 (en) Image subunit based guest scheduling
US20060090045A1 (en) System and method for synchronizing copies of data in a computer system
US10824369B2 (en) Elastic method of remote direct memory access memory advertisement
US6424988B2 (en) Multicomputer system
US20210286654A1 (en) Method, device and computer program product for processing computing job
WO2023124543A1 (zh) 用于大数据的数据处理方法和数据处理装置
Wang et al. {MGG}: Accelerating graph neural networks with {Fine-Grained}{Intra-Kernel}{Communication-Computation} pipelining on {Multi-GPU} platforms
Fan et al. Gear: Enable efficient container storage and deployment with a new image format
Kim et al. Comprehensive techniques of multi-GPU memory optimization for deep learning acceleration
Miki et al. PACC: a directive-based programming framework for out-of-core stencil computation on accelerators
Guo et al. Distributed join algorithms on multi-CPU clusters with GPUDirect RDMA
US20220137946A1 (en) State-driven virtualization system imaging
WO2023039341A1 (en) Systems and methods for configuration of sequence handlers

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