Add live-migration support in pool-based multi-hosts OpenStack environments

Registered by Naichuan Sun

Problem:
The existing implementation doesn't support live migration between hosts which belong to a XAPI pool. The shared storage migration depends aggregate pool and it depends on uppercall to check if hosts belong to the same aggregate pool. But the upper call is broken in cells.

This BP is to support live migration in XAPI pool so that we can use XAPI pool instead of aggregate pool and the broken aggregate uppercall can be removed.

The needed work include:
1. Support live migration in XAPI pool:
    -Add code to support resource pre-check before live migration.
    -Add code to support resource clean after live migration.
    -Add code to support using local storage in xapi pool.
2. Remove the upcall on aggregate based pools checking.
Note: After adding the support of xapi pool, all the XAPI calls to the host will be re-direct to the master host. But we still have a 1:1 relationship between the XenServer host and the nova-compute service by sending current host ref to the master host.

Blueprint information

Status:
Complete
Approver:
Matt Riedemann
Priority:
Medium
Drafter:
Naichuan Sun
Direction:
Approved
Assignee:
Naichuan Sun
Definition:
Approved
Series goal:
Accepted for rocky
Implementation:
Implemented
Milestone target:
milestone icon rocky-1
Started by
Matt Riedemann
Completed by
Matt Riedemann

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/live-migration-in-xapi-pool,n,z

Addressed by: https://review.openstack.org/489451
    xenapi: Live migration failed in xapi pool

There was agreement in today's nova meeting to approve this specless blueprint. -- mriedem 20180315

Addressed by: https://review.openstack.org/554154
    xenapi: Use XAPI pool instead of aggregate pool for shared SR migration

Addressed by: https://review.openstack.org/562482
    xenapi: Documents update for XAPI pool shared SR migration

Addressed by: https://review.openstack.org/563724
    doc: add note about xenapi aggregate upcall being resolved

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.