Difference between revisions of "Xenapi-live-migration"
m (Text replace - "NovaSpec" to "NovaSpec") |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | ||
− | * '''Launchpad Entry''': | + | * '''Launchpad Entry''': NovaSpec:xenapi-live-migration |
* '''Created''': 08 June 2012 | * '''Created''': 08 June 2012 | ||
* '''Contributors''': John Garbutt | * '''Contributors''': John Garbutt | ||
Line 12: | Line 12: | ||
== Release Note == | == Release Note == | ||
− | Added support for live migration | + | Added support for live migration in XenAPI. |
+ | |||
+ | For shared storage based live migration, you need to ensure your source and destination host are part of the same aggregate, are configured to use the pool default SR, and that default SR is a shared storage system, similar to NFS. | ||
+ | |||
+ | For more documentation see: http://wiki.openstack.org/XenServer/LiveMigration | ||
== Rationale == | == Rationale == |
Latest revision as of 23:31, 17 February 2013
- Launchpad Entry: NovaSpec:xenapi-live-migration
- Created: 08 June 2012
- Contributors: John Garbutt
Contents
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 in XenAPI.
For shared storage based live migration, you need to ensure your source and destination host are part of the same aggregate, are configured to use the pool default SR, and that default SR is a shared storage system, similar to NFS.
For more documentation see: http://wiki.openstack.org/XenServer/LiveMigration
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