Xenapi-live-migration
Revision as of 10:42, 8 June 2012 by JohnGarbutt (talk)
- Launchpad Entry: NovaSpec:xenapi-live-migration
- Created: 08 June 2012
- Contributors: John Garbutt
Summary
We need to support live migration in the XenAPI driver.
This only deals with live migration using shared storage managed by the XenServer pool. It also does not work when using external ramdisk and kernel
Release Note
Added support for live migration
Rationale
Expose Live Migration using XenAPI, in a similar way to current LibVirt support.
User stories
User is running a VM (w
Assumptions
- Host Aggregates allows you to create a XenServer pool.
- Pool is using shared storage
Design
Make use of the XenAPI pool_migrate call to migrate VMs within a XenServer pool, when they are on shared storage.
Implementation
UI Changes
Same as libvirt
Code Changes
Big code changes are:
- implement live-migration calls in XenAPI driver
- refactor scheduler code so it only has checks common to XenAPI and LibVirt
- above involves the driver making rpc calls to other drivers (just as in XenAPI layer when creating XenServer pools)
- above involves introducing the rpc call "check_can_live_migrate" to replace the calls the scheduler would make to do things like "compare_cpu" and "check_shared_storage"
Migration
None.
Test/Demo Plan
- Manual test of KVM to ensure no regression
- Manual test with XenServer 6.0 to check XenAPI implementation
- Defer tempest tests until using Xen Storage Motion
Unresolved issues
- ramdisk + kernel
- better error reporting
- opened another blueprint for Xen Stroage Motion
- will open another blueprint to look at migrate vs live-migrate