2016-06-06 8 views
2

Ich frage mich, ob jemand weiß, ob es möglich ist, inkrementelle Prüfpunkte mit CRIU, insbesondere wenn der Prozess Docker ist.Mögliche inkrementelle Prüfpunkte CRIU

Auch ich bin daran interessiert, Schnappschüsse zu machen, ohne den Prozess zu töten.

Mein Ziel ist es, schnell, (fast) Live-Migration von einem Host zum anderen zu erreichen.

Es scheint, dass mit CRIU im Moment unmöglich ist, aber ich habe Videos von Leuten gesehen, die es tun, und ich dachte, dass nach fast einem Jahr der meisten dieser Artikel, die gepostet werden, hier etwas fehlt.

Antwort

0

Ja, gleiche Sorge.
was Sie brauchen, ist Predumm Option.

  1. eine Ressource kann helfen. github.com/xemul/p.haul p.haul es möglich machen, anzupassen predump Anfrage

  2. Runc mit predump option.this ist, was Sie auf youtube.15dockerCon beobachten. github.com/marcosnils/runc

Derzeit haben wir Serval Wege Docker Kontrollpunkt zu machen/wiederherzustellen.
a. india Weg: github.com/boucher/docker/releases

docker checkpoint 
docker restore 

b.runC Weg: github.com/marcosnils/cmt github.com/marcosnils/runc

runc checkpoint 
runc restore 

c.external weg:

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 

Grundsätzlich würden wir den Docker native und runc bevorzugen. Aber beide unterstützen jetzt keinen Predump. der Hack-Weg. github.com/marcosnils/runc aber ich verdopple die RunC-Version ist alt.

+0

Entschuldigung wegen des Formats. Der Abschriften-Check macht mich verrückt. Und wegen des Rufs muss ich den Link ändern. Github bezieht sich auf einen Link. – xichen

+0

Ich habe mit dem Nativen experimentiert und kann natürlich bestätigen, dass es iterative Checkpoints nicht unterstützt. Der externe Weg ist die einzige Wette, aber das hier eingefügte Beispiel ist ähnlich dem, das auf dem CRIU-Wiki gepostet wurde, das ein bisschen outdate zu sein scheint. Können Sie eine Dokumentation über die --ext-mount-map und ihre Bedeutung bereitstellen? –

+0

Es scheint, wir haben das gleiche Ziel. Aber sorry, dass ich nicht die Antwort habe. Http://criu.org/External_bind_mounts, kann etwas Hilfe haben – xichen