XAPI VM Migration

From Xen

Note: this description has been out of date for a while. To see how migration works, it is best to read the code starting from here: https://github.com/xapi-project/xen-api/blob/a232a3db5e51bf21eed2680386e4de79dcf4c70e/ocaml/xapi/message_forwarding.ml#L1638


XAPI VM Migration

Here's an overview of how xapi does migration of VMs. The code can be found in api.hg/ocaml/xapi/xapi_vm_migrate.ml.

Receiver
attach the VDIs
create the domain
restore the devices (unless we must delay until after VDI activation)
send handshake to transmitter
Synchronisation point 1
restore the domain, deserialising it from the transmitter
Synchronisation point 2
receive handshake from transmitter
Synchronisation point 3
activate VDIs (unless it's a localhost migrate)
restore the devices (unless done already)
unpause the domain
plug PCI devices
send handshake to transmitter
Synchronisation point 4

You may be interested in a proposal for CrossPoolMigration