[CRIU] [PHAUL] Question Regarding RPC Interface
Adrian Reber
adrian at lisas.de
Wed Feb 28 17:04:42 MSK 2018
On Mon, Feb 26, 2018 at 03:10:09PM -0700, John Goen wrote:
> I have a question regarding the RPC interfaces with CRIU and their
> application to P.Haul.
>
> As of now, it looks like P.Haul does all of its interaction with CRIU
> through the RPC interface defined in protocol buffers. However, there seems
> to be certain fields/arguments missing from the protobuf interface that
> would be necessary to invoke post-copy migration functionality through
> P.Haul.
>
> >From what I can understand, these are the steps necessary to conduct proper
> post-copy live migration through CRIU:
>
> - Tell CRIU to perform the initial dump at the source, having the
> lazy-pages flag set (this can be easily passed in a criu_req with
> lazy_pages=TRUE in the criu_opts protobuf message and with
> criu_req_type=DUMP)
>
> - Bring up the lazy-pages daemon on the destination with the lazy-pages
> flag set (currently there seems no means of passing this through the
> protobuf RPC interface, though I feel something like having a new
> criu_req_type like LP_DAEMON with proper handling on the CRIU side would
> work, but I don't know the CRIU side of the code well enough to be sure
> this is the case)
>
> - Call restore with the lazy-pages flag set (much like the initial
> dump, this seems to be fully doable through current protobuf RPC interfaces)
>
> Does this sound right to anyone? If so, I'm fully willing to go in and try
> adding the RPC protobuf field and interaction necessary to get CRIU to work
> in this way, but I'm unsure where exactly this code would need to live or
> where to start with it.
When I used lazy migration with runc I started the lazy-pages daemon
manually and probably therefore I never added the necessary RPC calls.
https://rhelblog.redhat.com/2017/10/12/container-migration-around-the-world/
With those script to migrate the container:
https://people.redhat.com/areber/criu/migrate
https://people.redhat.com/areber/criu/migrate-server.py
https://people.redhat.com/areber/criu/migrate-server.service
Adrian
More information about the CRIU
mailing list