【技术实现步骤摘要】
Docker容器中检查点和恢复点的功能实现方法及系统
本专利技术涉及虚拟机数据恢复
,具体涉及一种Docker容器中检查点和恢复点的功能实现方法及系统。
技术介绍
云计算是一种新兴的共享基础架构的方法,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和各种软件服务。云计算的底层需要虚拟化技术支持,比较出名的有vmware公司的虚拟化技术,它提供云计算和硬件虚拟化的软件和服务,产品有VMwareWorkstation、VMwareServer,允许用户创建和运行多个X86虚拟机,虚拟机可以暂停、恢复运行。Docker技术基于云计算,是一个开放源代码软件项目,让应用程序布署在软件容器下的工作可以自动化进行,借此在Linux操作系统上,提供一个额外的软件抽象层,和操作系统层虚拟化的自动管理机制。Docker基于Linux内核的cgroup、namespace、以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。Docker在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得Docker技术比虚拟机技术更为轻便、快捷,docker和检查点、还原点的关系如图1所示。传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核 ...
【技术保护点】
1.一种Docker容器中检查点和恢复点的功能实现系统,其特征在于,所述功能实现系统包括内核空间及用户空间,其中:/n内核空间包括基础进程和应用程序模块、寄生代码模块以及镜像进程和应用程序模块,其中,/n基础进程和应用程序模块用于实现计算机的基础功能;/n寄生代码模块与基础进程和应用模块连接,用于通过基础进程和应用程序模块,获取用户空间内运行的进程的镜像信息;/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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。