[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