Live migration support for Cloud-Hypervisor VMs
Goal
We are implementing Live Migration support in "ch" driver of Libvirt. I'd like to confirm if the approach we have chosen would be accepted upstream once implemented.
Technical details
Our immediate goal is to implement Native + Traditional mode of migration. Native referring to VMM(ch) being responsible for data flow and Traditional referring to virsh client responsible for control flow between source and dest hosts.
At the moment, Cloud-Hypervisor supports receiving migration only on Unix Domain Sockets. So, we are considering forking socat processes as documented at https://github.com/cloud-hypervisor/cloud-hypervisor/blob/main/docs/live_migration.md. The socat processes will be forked in **Prepare ** and Perform phases on Destination and Source hosts respectively.
I couldn't find any existing implementation in libvirt to connect Domain Sockets on different hosts. Please let me know, if you'd recommend a different approach from forking socat processes to connect Domain Sockets on source and dest hosts to allow VM Migration.