我想知道是否有人知道使用CRIU进行增量检查点是否可行,尤其是在使用Docker的情况下。
另外,我有兴趣在不终止进程的情况下拍摄快照。
我的目标是实现从主机到另一主机的快速(几乎)实时迁移过程。
看来CRIU目前尚无法实现,但是我已经看过有人这样做的视频,而且我认为在大多数文章发表了将近一年之后,我可能在这里遗漏了一些东西。
最佳答案
是的,同样的担忧。
您需要的是predumm选项。
github.com/xemul/p.haul
p.haul可以调整预转储请求
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版本翻了一番。