docker - 可以创建增量检查点 CRIU

标签 docker migration

我想知道是否有人知道是否可以使用 CRIU 进行增量检查点,特别是当进程是 Docker 时。

此外,我对在不终止进程的情况下拍摄快照很感兴趣。

我的目标是实现从一个主机到另一个主机的快速(几乎)实时迁移过程。

似乎现在使用 CRIU 是不可能的,但是我看过人们这样做的视频,我认为在发布了将近一年的这些文章后,我可能会在这里遗漏一些东西。

最佳答案

是的,同样的担忧。
您需要的是 predumm 选项。

  1. 一项资源可能会有所帮助。 github.com/xemul/p.haul p.haul 使调整预转储请求成为可能

  2. runC with predump 选项。这是您在 youtube.15dockerCon 上观看的内容。 github.com/marcosnils/runc

目前,我们有多种方式来制作docker checkpoint/restore。
一种。 原生方式:github.com/boucher/docker/releases

docker checkpoint
docker restore

b.runC方式:github.com/marcosnils/cmt github.com/marcosnils/runc

runc checkpoint 
runc restore 

c.外部方式:

criu dump -o dump.log -v4 -t 15215 \
  -D /tmp/m1  \
  --root /var/lib/docker/aufs/mnt/container id  \
  --manage-cgroups \
  --evasive-devices \
  --ext-mount-map /etc/resolv.conf:/etc/resolv.conf \
  --ext-mount-map /etc/hosts:/etc/hosts \
  --ext-mount-map /etc/hostname:/etc/hostname \
  --ext-mount-map /etc/resolv.conf:/etc/resolv.conf

基本上,我们更喜欢 docker native 和 runc。 但是现在两者都不支持预转储。 黑客方式。 github.com/marcosnils/runc 但是我加倍runC版本是旧的。

关于docker - 可以创建增量检查点 CRIU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37648075/

相关文章:

docker - 在Docker容器中与 `apt-get install`一起安装的软件包在哪里?

python - 无法使用kafka-python从另一个容器向Kafka容器发出请求

docker - 如何重新启动停止的 docker 容器

migration - 如何升级 SSRS 2005 报告项目以与现代 SSRS 版本一起使用?

migration - TFS 2012 到 TFS 2018 迁移/升级路径

docker - 如何在Kubernetes中直接挂载外部NFS共享/卷(1.10.3)

docker.service 失败。详情见 'journalctl -xe'

ruby-on-rails - 删除当前迁移文件后如何修复数据库?

django - 迁移日期时间 w。 PostgreSQL 中的时区到 UTC 时区以使用 Django 1.4

php - 简单迁移后 Laravel 测试失败