Difference between revisions of "XAPI VM Migration"

From Xen
Line 1: Line 1:
<!-- 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"
 
{| class="prettytable"
| '''Receiver'''
+
! '''Receiver'''
|
 
 
|-
 
|-
| * attach the VDIs
+
| attach the VDIs
|
 
 
|-
 
|-
| * create the domain
+
| create the domain
 
|-
 
|-
| * restore the devices (unless we must delay until after VDI activation)
+
| restore the devices (unless we must delay until after VDI activation)
 
|-
 
|-
| * send handshake to transmitter
+
| send handshake to transmitter
 
|-
 
|-
 
| '''''Synchronisation point 1'''''
 
| '''''Synchronisation point 1'''''
|
 
 
|-
 
|-
| * restore the domain, deserialising it from the transmitter
+
| restore the domain, deserialising it from the transmitter
|
 
 
|-
 
|-
|
 
 
|
 
|
 
|-
 
|-
 
| '''''Synchronisation point 2'''''
 
| '''''Synchronisation point 2'''''
|
 
 
|-
 
|-
| * receive handshake from transmitter
+
| receive handshake from transmitter
|
 
 
|-
 
|-
|
 
|
 
|-
 
|
 
 
|
 
|
 
|-
 
|-
 
| '''''Synchronisation point 3'''''
 
| '''''Synchronisation point 3'''''
|
 
 
|-
 
|-
| * activate VDIs (unless it's a localhost migrate)
+
| activate VDIs (unless it's a localhost migrate)
|
 
 
|-
 
|-
| * restore the devices (unless done already)
+
| restore the devices (unless done already)
|
 
 
|-
 
|-
| * unpause the domain
+
| unpause the domain
|
 
 
|-
 
|-
| * plug PCI devices
+
| plug PCI devices
|
 
 
|-
 
|-
| * send handshake to transmitter
+
| send handshake to transmitter
 
|-
 
|-
 
| '''''Synchronisation point 4'''''
 
| '''''Synchronisation point 4'''''
|
 
 
|-
 
|-
|
 
 
|
 
|
 
|}
 
|}
Line 77: Line 46:
 
[[Category:XAPI Devel]]
 
[[Category:XAPI Devel]]
 
[[Category:Design Document]]
 
[[Category:Design Document]]
[[Category:Developers]]
 

Revision as of 12:48, 11 July 2013

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