[CRIU] CRIU in Docker for Mac

Andrei Vagin avagin at virtuozzo.com
Wed Jan 25 11:34:43 PST 2017


On Wed, Jan 25, 2017 at 06:50:32PM +0000, Ross Boucher wrote:
> Still fails:
> 
> https://gist.github.com/boucher/220a9e955422d0b35f9cfe1abffbec14


"""
(00.061531) Running network-lock scripts
modprobe: can't change directory to '/lib/modules': No such file or directory
ip6tables-restore v1.6.0: ip6tables-restore: unable to initialize table 'filter'

Error occurred at line: 1
Try `ip6tables-restore -h' or 'ip6tables-restore --help' for more information.
(00.110236) Error (criu/util.c:670): exited, status=2
"""

You have to load modules from the host:
modprobe xt_mark ip6_tables ip6table_filter nfnetlink nf_conntrack_netlink nf_conntrack

or you can use the next command:
docker run --rm -it --privileged -v /lib/modules:/lib/modules criu-alpine ./test/zdtm.py run -t zdtm/static/env00

> 
> On Wed, Jan 25, 2017 at 1:46 PM Andrei Vagin <avagin at gmail.com> wrote:
> 
>     On Wed, Jan 25, 2017 at 10:39 AM, Ross Boucher <rboucher at gmail.com> wrote:
>     > Should I be applying those patches to your alpine branch or to master? I
>     see
>     > they are already in your branch (the one built by travis, right?). When I
>     > build your branch, it compiles alright but the tests fail:
> 
>     There was an extra commit. Now I removed it and you can use the alpine
>     branch from my repo.
> 
>     Thanks,
>     Andrei
> 
>     >
>     > ========================== Run zdtm/static/env00 in h
>     > ==========================
>     > Start test
>     > ./env00 --pidfile=env00.pid --outfile=env00.out --envname=ENV_00_TEST
>     > Run criu dump
>     > =[log]=> dump/zdtm/static/env00/32/1/dump.log
>     > ------------------------ grep Error ------------------------
>     > (00.044957) Error (criu/util.c:670): exited, status=3
>     > (00.057244) Error (compel/src/lib/infect-rpc.c:72): Command 66 for daemon
>     > failed with -1
>     > (00.057276) Error (criu/mem.c:464): Can't dump page with parasite
>     > (00.057702) Error (criu/cr-dump.c:1673): Dumping FAILED.
>     > ------------------------ ERROR OVER ------------------------
>     > ################### Test zdtm/static/env00 FAIL at CRIU dump
>     > ###################
>     > Send the 9 signal to  32
>     > ##################################### FAIL
>     > #####################################
>     >
>     >
>     > On Wed, Jan 25, 2017 at 2:12 AM Andrei Vagin <avagin at virtuozzo.com>
>     wrote:
>     >>
>     >> On Tue, Jan 24, 2017 at 07:37:50PM -0800, Andrei Vagin wrote:
>     >> > On Tue, Jan 24, 2017 at 11:17:28PM +0000, Ross Boucher wrote:
>     >> > > It seems that this function probably isn't implemented in musl:
>     >> > >
>     >> > > https://git.musl-libc.org/cgit/musl/tree/src/sched/
>     sched_getscheduler.c
>     >> >
>     >> > Uhuuuu. musl is so lightweight and fast!!!!!
>     >> > https://git.musl-libc.org/cgit/musl/tree/src/sched/sched_getparam.c
>     >> >
>     >> > Ross, could you try out this patch:
>     >> >
>     >> > https://github.com/avagin/criu/commit/
>     265e9fc138f98b742a68b6991225f28d3c99f9b5
>     >>
>     >> And you need one more patch:
>     >>
>     >> https://github.com/avagin/criu/commit/
>     ff8777b3628eae6b7cc98c7b925cf88508dd3aa8
>     >>
>     >> With these two patches static/env00 passes on Alpine:
>     >>
>     >> https://travis-ci.org/avagin/criu/builds/195081973
>     >>
>     >> >
>     >> > Thanks,
>     >> > Andrei
>     >> >
>     >> > >
>     >> > > Is there any hope for a workaround?
>     >> > >
>     >> > > On Tue, Jan 24, 2017 at 6:09 PM Ross Boucher <rboucher at gmail.com>
>     >> > > wrote:
>     >> > >
>     >> > >     Installing ip6tables got a bit further, but now it seems to fail
>     >> > > possibly
>     >> > >     on sched_getscheduler:
>     >> > >
>     >> > >     (00.032508) Error (criu/cr-dump.c:134): Can't get sched policy
>     for
>     >> > > 2337:
>     >> > >     Function not implemented
>     >> > >
>     >> > >     Full log:
>     >> > > https://gist.github.com/boucher/5c8edcbf0c7f9d9e39ed1d74c09440e5
>     >> > >
>     >> > >
>     >> > >     On Tue, Jan 24, 2017 at 5:53 PM Ross Boucher <rboucher at gmail.com
>     >
>     >> > > wrote:
>     >> > >
>     >> > >         Hey everyone,
>     >> > >
>     >> > >         Since checkpoint/restore has shipped in experimental mode
>     for
>     >> > > Docker, I
>     >> > >         thought I'd try to get it working with Docker for Mac. I
>     think
>     >> > > this
>     >> > >         should be possible, since it seems building for Alpine linux
>     >> > > has
>     >> > >         already been taken care of, but I haven't gotten it working
>     >> > > just yet.
>     >> > >
>     >> > >         What I have done is install CRIU 2.9, from the apk testing
>     >> > > repository
>     >> > >         for alpine linux, in the d4m vm[1], then run a simple
>     >> > > checkpoint on a
>     >> > >         busybox container. Here's the dump log:
>     >> > >
>     >> > >
>     >> > > https://gist.github.com/boucher/2ac2de1d80ab59bce518d108ec8d0371
>     >> > >
>     >> > >         Seems that some network script isn't working, but I'm not
>     sure
>     >> > > if the
>     >> > >         log is telling me that its an RPC script.
>     >> > >
>     >> > >         Thanis,
>     >> > >         Ross
>     >> > >
>     >> > >
>     >> > >         [1]: You can access the vm with screen:
>     >> > >
>     >> > >         screen ~/Library/Containers/com.docker.docker/Data/
>     >> > >         com.docker.driver.amd64-linux/tty
>     >> > >
>     >> > >
>     >> >
>     >> > > _______________________________________________
>     >> > > CRIU mailing list
>     >> > > CRIU at openvz.org
>     >> > > https://lists.openvz.org/mailman/listinfo/criu
>     >> >
>     >> > _______________________________________________
>     >> > CRIU mailing list
>     >> > CRIU at openvz.org
>     >> > https://lists.openvz.org/mailman/listinfo/criu
>     >
>     >
>     > _______________________________________________
>     > CRIU mailing list
>     > CRIU at openvz.org
>     > https://lists.openvz.org/mailman/listinfo/criu
>     >
> 


More information about the CRIU mailing list