Docker容器中检查点和恢复点的功能实现方法及系统技术方案

技术编号:23212511 阅读:47 留言:0更新日期:2020-01-31 21:46
本发明专利技术涉及Docker容器中检查点和恢复点的功能实现方法及系统,所述系统包括内核空间及用户空间,其中:内核空间包括:用于实现计算机的功能的基础进程和应用程序模块,用于通过基础进程和应用程序模块,获取用户空间内运行的进程的镜像信息的寄生代码模块以及,用于保存从暂停的进程收集的镜像信息的镜像进程和应用程序模块;用户空间包括:用于运行相应程序的进程和应用程序模块,用于暂停进程并收集暂停进程镜像信息的检查点功能模块以及,用于保存镜像信息的镜像进程和应用程序模块。本发明专利技术使得对容器暂停、恢复、动态迁移、容器整体迁移、无缝内核升级、网络负载均衡,桌面环境暂停、恢复,应用程序远程调试、过程复制等等功能变成可能。

Function implementation method and system of checkpoint and recovery point in docker container

【技术实现步骤摘要】
Docker容器中检查点和恢复点的功能实现方法及系统
本专利技术涉及虚拟机数据恢复
,具体涉及一种Docker容器中检查点和恢复点的功能实现方法及系统。
技术介绍
云计算是一种新兴的共享基础架构的方法,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务。云计算的底层需要虚拟化技术支持,比较出名的有vmware公司的虚拟化技术,它提供云计算和硬件虚拟化的软件和服务,产品有VMwareWorkstation、VMwareServer,允许用户创建和运行多个X86虚拟机,虚拟机可以暂停、恢复运行。Docker技术基于云计算,是一个开放源代码软件项目,让应用程序布署在软件容器下的工作可以自动化进行,借此在Linux操作系统上,提供一个额外的软件抽象层,和操作系统层虚拟化的自动管理机制。Docker基于Linux内核的cgroup、namespace、以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也本文档来自技高网...

【技术保护点】
1.一种Docker容器中检查点和恢复点的功能实现系统,其特征在于,所述功能实现系统包括内核空间及用户空间,其中:/n内核空间包括基础进程和应用程序模块、寄生代码模块以及镜像进程和应用程序模块,其中,/n基础进程和应用程序模块用于实现计算机的基础功能;/n寄生代码模块与基础进程和应用模块连接,用于通过基础进程和应用程序模块,获取用户空间内运行的进程的镜像信息;/n镜像进程和应用程序模块用于保存从暂停的进程收集的镜像信息;/n用户空间包括进程和应用程序模块、系统调用模块、检查点功能模块以及恢复点功能模块,其中,/n进程和应用程序模块通过系统调用模块与内核空间的基础进程和应用程序模块连接,用于通过...

【技术特征摘要】
1.一种Docker容器中检查点和恢复点的功能实现系统,其特征在于,所述功能实现系统包括内核空间及用户空间,其中:
内核空间包括基础进程和应用程序模块、寄生代码模块以及镜像进程和应用程序模块,其中,
基础进程和应用程序模块用于实现计算机的基础功能;
寄生代码模块与基础进程和应用模块连接,用于通过基础进程和应用程序模块,获取用户空间内运行的进程的镜像信息;
镜像进程和应用程序模块用于保存从暂停的进程收集的镜像信息;
用户空间包括进程和应用程序模块、系统调用模块、检查点功能模块以及恢复点功能模块,其中,
进程和应用程序模块通过系统调用模块与内核空间的基础进程和应用程序模块连接,用于通过系统调用模块调用内核空间内的需要运行的程序;
检查点功能模块与内核空间内的基础进程和应用程序模块、寄生代码模块以及镜像进程和应用程序模块连接,用于暂停用户空间内的运行的进程,并通过寄生代码模块收集暂停进程的镜像信息,并将镜像信息保存至镜像进程和应用程序模块;
恢复点功能模块与镜像进程和应用程序模块连接,用于根据镜像信息恢复暂停的进程。


2.如权利要求1所述的Docker容器中检查点和恢复点的功能实现系统,其特征在于:所述寄生代码模块由检查点功能模块通过内核空间的ptrace接口注入寄生代码形成。


3.如权利要求1所述的Docker容器中检查点和恢复点的功能实现系统,其特征在于:所述检查点功能模块通过内核空间的ptrace接口暂停用户空间内的运行的进程。


4.如权利要求1所述的Docker容器中检查点和恢复点的功能实现系统,其特征在于:所述检查点功能模块通过如下步骤暂停正在运行的进程并获取进程的镜像信息:
步骤Sa:通过ptrace接口冻结目标进程,并向该目标进程注入寄生代码;
步骤Sb:寄生代码侵入对应的特定目标进程,对进程进行透明监控,获取文件描述符;
步骤Sc:获取目标进程的socket及netns信息;
步骤Sd:获取目标进程procfs中特定PID的内容;
步骤Se:通过寄生代码模块获取目标进程的系统调用并保存;
步骤Sf:保存目标进程内存页的图形文件;
步骤Se:检查目标进程中所有子进程的CRIU检查点。


5.如权利要求1所述的Docker容器中检查点和恢复点的功能实现系统,其特征在于:所述检查点功能模块的功能还包括:暂停正在运行的进程中,收集进程运行时的镜像信息,并于暂停正在运行的进程后,解锁镜像信息并返回结果,供恢复点功能模块恢复对应的进程。

【专利技术属性】
技术研发人员:孟杰吕非薛皓琳张蓓刘莉
申请(专利权)人:中标软件有限公司
类型:发明
国别省市:上海;31

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

1