[CRIU] Image cache/proxy TODO

Radostin Stoyanov rstoyanov1 at gmail.com
Fri Sep 14 09:55:32 MSK 2018


On 14/09/18 05:19, Mike Rapoport wrote:
> On Sat, Sep 08, 2018 at 10:18:27AM +0100, Radostin Stoyanov wrote:
>> Hi all,
>>
>> I would like to work towards merging the remote option and image
>> cache/proxy into
>> the master branch of CRIU and I was wondering what needs to be done?
>>
>> Below is a brief summary of the tasks from [1] and the commit comment in
>> [2].
>>
>> 1. Add articles for newly introduced actions and options.
>> - I assume that this task is to add more information to the following pages
>> * https://criu.org/CLI/opt/--remote
>> * https://criu.org/CLI/cmd/image-cache
>> * https://criu.org/CLI/cmd/image-proxy
>>
>> 2. Make the UNIX sockets reside in work-dir.
>> - The option -D|--images-dir should become optional. When --remote is used,
>> CRIU should work purely on the work-dir and not generate anything in the
>> images-dir.
>>
>> 3. Tune up the image_cache and image_proxy commands to accept the
>> --status-fd
>> and --pidfile options.
>>
>> 4. Fix local connections not to generate per-image threads.
>> - I believe that this one is already done.
>>
>> 5. No strings in protocol. Now the hard-coded "RESTORE_FINISH" string
>> (and DUMP_FINISHED one) is used to terminate the communication.
>> Need to tune up the protobuf objects to send boolean (or integer) EOF
>> sign rather that the string.
>>
>> 6. Check how proxy/cache works with incremental dumps.
> I'd also check what happens with lazy-pages. I suspect --remote
> --lazy-pages won't play well together, so probably they should be at least
> made mutually exclusive.
>  
Hi Mike,

Yes, the page-server, which is used with --lazy-pages, is not needed
because we already have the cache/proxy connection.
However, I am thinking about implementing a hybrid-copy algorithm (as
described in [1]) rather than just making them mutually exclusive.
Something similar to Adrian's article [2] for combining pre-copy and
post-copy migration.

What do you think?

[1] http://www.mdpi.com/1999-5903/9/3/37/pdf
[2] https://lisas.de/~adrian/?p=1253

Radostin
>> 7. Add support for cache/proxy into go-phaul code.
>>
>> Is there anything else?
>>
>> [1] https://criu.org/Image_cache/proxy_TODO
>> [2]
>> https://github.com/checkpoint-restore/criu/commit/a14f0d0effc92985a79a9a9da86e338b968c26d6
>>
>> Thanks,
>> Radostin
>> _______________________________________________
>> CRIU mailing list
>> CRIU at openvz.org
>> https://lists.openvz.org/mailman/listinfo/criu
>>



More information about the CRIU mailing list