技术小牛钱小白

疯狂的梦想
时而碰的遍体鳞伤,时而经历惨不忍睹的想象...
生不用封万户侯,但愿一识韩荆州。

operation中docker热迁移工具CRIU工作原理相关说明??

参考:https://blog.csdn.net/weixin_38669561/article/details/105723868

【CLI与RPC】:https://blog.csdn.net/weixin_38669561/article/details/105408280

CRIU工作原理系列:images

       criu 备份进程或者容器后,会生成一系列的镜像文件。这些镜像会被用来进程或者容器在任何其他同体系架构主机上的恢复。本文将描述这些镜像文件的格式、功能。

工作原理简单描述起来可以分为两部分,一是检查点的保存,其中分为3步。

  1. 收集进程与其子进程构成的树,并冻结所有进程。

  2. 收集任务(包括进程和线程)使用的所有资源,并保存。

  3. 清理我们收集资源的相关寄生代码,并与进程分离。

第二部分是恢复,分为4步。

  1. 读取快照文件并解析出共享的资源,对多个进程共享的资源优先恢复,其他资源则随后需要时恢复。

  2. 使用fork恢复整个进程树,注意此时并不恢复线程,在第4步恢复。

  3. 恢复所有基础任务(包括进程和线程)资源,除了内存映射、计时器、证书和线程。这一步主要打开文件、准备namespace、创建socket连接等。

  4. 恢复进程运行的上下文环境,恢复剩下的其他资源,继续运行进程。

??

??

评论
2021-11-27