[CRIU] criu + threaded program + TCP_REPAIR
Ruslan Kuprieiev
kupruser at gmail.com
Mon Oct 20 06:58:52 PDT 2014
On 20.10.2014 16:42, Sowmini Varadhan wrote:
> On (10/20/14 13:55), Ruslan Kuprieiev wrote:
>> Well, p.haul is meant to be used with installed criu.
>> You can easily install criu by running "make && make install".
>>
> But the criu documentation at http://criu.org/Installation#Linux_Kernel
> doesn't explicitly mention the install target :-)
Oops! Added http://criu.org/Installation#Installation . Thanks!
> anyway, that was easy enough to fix, once you pointed out the $PATH
> issue.
>> Looks like smth happened on the remote. Could you provide
>> p.haul-service log too?
> I had to fix a couple of pilot-errors first- needed to make install
> criu on the target-vm, and also set up a mirror image of the lxc config
> there (so that the p.haul service would find the criu needed lxc config).
>
> After that, I'm getting a bit further:
>
> the src ("client") reports
>
> root at vm:~/src/p.haul# ./p.haul -v4 lxc iperfs 192.168.122.54
> Connecting to target host
> Setting up local
> `- Passing (ctl:5, data:4) pair to CRIU
> Loading config file from /var/lib/lxc/iperfs/config
> Initilized shared FS hauler
> Setting up remote
> Checking CPU compatibility
> `- Dumping CPU info
> `- Sending CPU info
> `- Checking CPU info
> Preliminary FS migration
> Starting iterations
> * Iteration 0
> Making directory /var/local/p.haul-fs/dmp-JUOEXm-14.10.20-09.34/img/1
> Issuing pre-dump command to service
> Traceback (most recent call last):
> File "./p.haul", line 39, in <module>
> worker.start_migration()
> File "/home/sowmini/src/p.haul/p_haul_iters.py", line 122, in start_migration
> raise Exception("Pre-dump failed")
> Exception: Pre-dump failed
>
> The criu-service log is not very interesting:
>
> root at vm:~# cat /tmp/criu.log
> (00.000087) The service socket is bound to /var/run/criu_service.socket
> (00.000345) Waiting for connection...
As I mentioned before, p.haul doesn't use criu-service, but it uses
standalone service worker, so it's log is (judging from the log above)
/var/local/p.haul-fs/dmp-JUOEXm-14.10.20-09.34/criu_*.log (most likely
criu_pre_dump.0.log). Could you provide it too?
> On the p.haul-service, the error is
> root at vm2:~/src/p.haul# `pwd`/p.haul-service -v4
> Starting p.haul rpyc service
> Connected
> Data socket (datask) accepted
> Setting up service side ('lxc', 'iperfs')
> `- Passing (ctl:8, data:7) pair to CRIU
> Loading config file from /var/lib/lxc/iperfs/config
> :
> :
> Started images server
> Waiting for images to unpack
> Checking cpuinfo
> `- True
> Making directory /var/local/p.haul-fs/rst-J48TPi-14.10.20-09.34/img/1
> Starting page server for iter 1
> Sending criu rpc req
> Page server started at 5353
> Disconnected
> Error (cr-service.c:661): Can't recv request: Connection reset by peer
> Closing images
> Keeping images
> Images are kept in /var/local/p.haul-fs/rst-J48TPi-14.10.20-09.34
>
Yes, we need that /var/local/p.haul-fs/dmp-JUOEXm-14.10.20-09.34/criu_*.log
logs to figure out what is wrong.
More information about the CRIU
mailing list