[发明专利]内核态进程复制方法以及装置、容器扩容方法以及装置有效
申请号: | 201910011972.3 | 申请日: | 2019-01-07 |
公开(公告)号: | CN111414240B | 公开(公告)日: | 2023-05-09 |
发明(设计)人: | 喻望;吴启翾;秦承刚 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁;窦晓慧 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内核 进程 复制 方法 以及 装置 容器 扩容 | ||
本申请公开了一种内核态进程复制方法,包括:对待复制的原进程进行冻结处理;基于所述原进程的进程资源在内核态复制至少一个目标进程;对处于冻结状态的所述原进程进行解冻处理。本申请提供的内核态进程复制方法,在原进程被冻结的基础上,基于原进程的进程资源复制目标进程,并在目标进程复制完成后恢复原进程的业务承接处理能力,在内核态实现对容器内进程进行快速复制,从而使该方法应用在扩容场景中能够大幅优化扩容的速度,降低扩容期间的处理延迟。
技术领域
本申请涉及操作系统领域,具体涉及一种内核态进程复制方法。本申请同时涉及一种内核态进程复制装置,一种容器扩容方法以及装置,以及两种电子设备。
背景技术
应用运行过程中往往伴随着新业务上线和业务升级等场景,许多应用已经提出考虑引入容器技术进行应用部署。容器技术作为一种被广泛认可和应用的服务器资源共享方式,开发者可以通过容器技术将应用部署到任何支持容器的机器上,容器不仅能够用于对应用程序构建、分发、运行的统一平台,能够实现应用程序的自动化安装、部署及升级。
容器既可以部署在物理机中,也可以部署在虚拟机中,但不论具体如何部署,在同一节点(虚拟机或物理机)上部署的容器,都会共用同一个操作系统内核。Linux操作系统的体系架构分为用户态和内核态,内核态是操作系统内核所运行的模式,并提供上层应用程序运行的环境,运行在内核态的代码可以无限制地对系统存储、外部设备进行访问;用户态即上层应用程序的活动空间,应用程序的执行必须依托于内核提供的资源,包括CPU资源、存储资源、I/O资源等。
当在线应用需要扩容时,按照当前容器的模板来创建新的容器,而在这一扩容过程中,为避免扩容期间应用的延迟出现抖动,影响服务质量,需尽可能降低扩容期间应用的延迟,而这其中,在线应用扩容过程中进程复制是重要一环。
发明内容
本申请提供一种内核态进程复制方法,以解决现有技术存在的缺陷。本申请同时涉及一种内核态进程复制装置,一种容器扩容方法以及装置,以及两种电子设备。
本申请提供一种内核态进程复制方法,包括:
对待复制的原进程进行冻结处理;
基于所述原进程的进程资源在内核态复制至少一个目标进程;
对处于冻结状态的所述原进程进行解冻处理。
可选的,所述基于所述原进程的进程资源在内核态复制至少一个目标进程,包括:
针对所述进程资源包含的至少一种资源,采用写入时复制方式从所述原进程复制到所述目标进程。
可选的,所述原进程与所述目标进程包含的目标进程共享内存资源,并且,若检测到针对所述内存资源的写入请求,则将所述写入请求对应的内存页复制到所述目标进程的目标内存空间中。
可选的,所述原进程与所述目标进程包含的目标进程不具有父子进程关系。
可选的,所述进程资源,包括下述至少一项:
线程、内存、文件系统、网络、栈、安全、终端设备。
可选的,所述目标进程包含的目标进程中的线程数目与所述原进程的进程资源包含的线程数目相同。
可选的,所述对内核态待复制的原进程进行冻结处理步骤执行之前,包括:
接收针对所述原进程所属的容器的扩容请求。
可选的,所述容器与所述原进程具有唯一对应关系,且所述目标进程与接收到所述扩容请求后创建的目标容器具有唯一对应关系。
本申请还提供一种内核态进程复制装置,包括:
原进程冻结单元,用于对待复制的原进程进行冻结处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910011972.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:数据传输方法及通信设备
- 下一篇:获取目标物质的摄入量的方法和装置