XAPI VM Migration: Difference between revisions
From Xen
Jump to navigationJump to search
Lars.kurth (talk | contribs) (Created page with "<!-- MoinMoin name: XAPI_VM_Migration --> <!-- Comment: --> <!-- WikiMedia name: XAPI VM Migration --> <!-- Page revision: 00000002 --> <!-- Original date: Wed Jul 13 …") |
Dave.scott (talk | contribs) m (Link to the code which is authoritative) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
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 |
|||
<!-- MoinMoin name: XAPI_VM_Migration --> |
|||
<!-- Comment: --> |
|||
<!-- WikiMedia name: XAPI VM Migration --> |
|||
<!-- Page revision: 00000002 --> |
|||
<!-- Original date: Wed Jul 13 13:05:57 2011 (1310562357000000) --> |
|||
__NOTOC__ |
|||
<!-- ## Please edit system and help pages ONLY in the moinmaster wiki! For more --> |
|||
<!-- ## information, please see [[MoinMaster]]:[[MoinPagesEditorGroup]]. --> |
|||
<!-- ##master-page:[[Category:Template]] --> |
|||
<!-- ##master-date:Unknown-Date --> |
|||
<!-- #format wiki --> |
|||
<!-- #language en --> |
|||
== XAPI VM Migration == |
== 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'''. |
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'''. |
||
{| class="prettytable" |
|||
{| border="1" cellpadding="2" cellspacing="0" |
|||
! '''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''''' |
| '''''Synchronisation point 1''''' |
||
| |
|||
|- |
|- |
||
| |
| restore the domain, deserialising it from the transmitter |
||
| |
|||
|- |
|- |
||
| |
|||
| |
| |
||
|- |
|- |
||
| '''''Synchronisation point 2''''' |
| '''''Synchronisation point 2''''' |
||
| |
|||
|- |
|- |
||
| |
| receive handshake from transmitter |
||
| |
|||
|- |
|- |
||
| |
|||
| |
|||
|- |
|||
| |
|||
| |
| |
||
|- |
|- |
||
| '''''Synchronisation point 3''''' |
| '''''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''''' |
| '''''Synchronisation point 4''''' |
||
| |
|||
|- |
|- |
||
| |
|||
| |
| |
||
|} |
|} |
||
Line 75: | Line 47: | ||
You may be interested in a proposal for [[CrossPoolMigration]] |
You may be interested in a proposal for [[CrossPoolMigration]] |
||
[[Category: |
[[Category:XAPI Devel]] |
||
[[Category:Design Document]] |
[[Category:Design Document]] |
||
[[Category:Developers]] |
Latest revision as of 21:21, 20 January 2015
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