NUMA-aware live migration
When an instance with NUMA characteristics is live-migrated, those characteristics are not recalculated on the destination compute host. In the CPU pinning case, using the source host’s pin mappings on the destination can lead to multiple instances being pinned to the same pCPUs. In the case of hugepage-backed instances, which are NUMA-localized, an instance needs to have its NUMA mapping recalculated on the destination compute host during a live migration.
Blueprint information
- Status:
- Complete
- Approver:
- Sylvain Bauza
- Priority:
- Medium
- Drafter:
- Artom Lifshitz
- Direction:
- Needs approval
- Assignee:
- Artom Lifshitz
- Definition:
- Approved
- Series goal:
- Accepted for train
- Implementation:
- Implemented
- Milestone target:
- None
- Started by
- Matt Riedemann
- Completed by
- Eric Fried
Related branches
Related bugs
Bug #1289064: live migration of instance should claim resources on target compute node | Fix Released |
Bug #1417667: Move operations need to recalculate NUMA topology | Fix Released |
Sprints
Whiteboard
Approved for Rocky on April 3rd. -- mriedem 20180404
Gerrit topic: https:/
Addressed by: https:/
Fix typos in NUMA-aware live migration
Addressed by: https:/
WIP: Add InstanceNUMATop
Addressed by: https:/
WIP: Service version check for NUMA live migration
Addressed by: https:/
WIP: NUMA-aware live migration
Addressed by: https:/
DNM: Depends on intel-nfv-ci-tests to test NUMA LM
Addressed by: https:/
WIP: Libvirt live migration: update NUMA XML for dest
We're past feature freeze for Rocky, so this must be deferred. Please re-propose the spec for Stein if you'd like to work on it next cycle. -- melwitt 20180727
Addressed by: https:/
Re-propose numa-aware-
Re-approved for Stein. -- mriedem 20181130
Addressed by: https:/
[WIP] Add migration param to check_can_
Addressed by: https:/
[WIP] Use claims when live migrating
Addressed by: https:/
[Very WIP] New objects to transmit NUMA config from dest to source
Addressed by: https:/
[Very WIP] Send dest NUMA info inside LiveMigrateData
Addressed by: https:/
[Very WIP] Update NUMA XML during live migration
Addressed by: https:/
[WIP] Introduce live migration claims
Addressed by: https:/
Remove _legacy_dict methods
Addressed by: https:/
Trivial: reorder hashes according to object_hashes.txt
Addressed by: https:/
Clarify upgrade situation in NUMA live migration
Addressed by: https:/
[WIP] Drop MoveClaim in rollback_
Addressed by: https:/
Revert "Fail to live migration if instance has a NUMA topology"
Addressed by: https:/
Make the use of the CastAsCall fixture configurable
Addressed by: https:/
CONF.
This did not complete in the Stein release so I am deferring to the Train release. Remember to re-propose the spec for Train as necessary: https:/
Addressed by: https:/
re add for train
efried 20190326: reapproved for train
Gerrit topic: https:/
Addressed by: https:/
[WIP] Introduce live_migration_
Addressed by: https:/
New objects for NUMA live migration
Addressed by: https:/
LM: add support for sending NUMAMigrateData to the source
Addressed by: https:/
LM: add support for updating NUMA-related XML on the source
Addressed by: https:/
RPC changes to prepare for NUMA live migration
Addressed by: https:/
NUMA live migration support
Addressed by: https:/
CONF.
Addressed by: https:/
[WIP] Functional tests for NUMA live migration
Addressed by: https:/
DNM: Run LM integration tests with NUMA flavor
Gerrit topic: https:/
Addressed by: https:/
multi numa nfv testing job
Addressed by: https:/
[DNM] testing with new lable.
Addressed by: https:/
[DNM] testing with old lable
Addressed by: https:/
DNM: Run grenade multinode with vcpu_pin_set
Addressed by: https:/
[DNM] test migration with pinning
Addressed by: https:/
[DNM] test non overlaping vcpu pin sets.
Addressed by: https:/
[DNM] numa + pcpus in placment live migration tests
Addressed by: https:/
[DNM] cpu pinning testing
Addressed by: https:/
[DNM] test with dedicated cpus only
Addressed by: https:/
[DNM] legacy vcpu_pin_set pinning with shared emulator threads
[efried 20190916] Marked complete; only functional test patch https:/
Addressed by: https:/
[WIP] Helper to start computes with different HostInfos
Addressed by: https:/
Add regression test for bug #1843639
Addressed by: https:/
libvirt: Ignore volume exceptions during post_live_migration
Addressed by: https:/
[WIP] NUMA LM: Add func test for bug 1845146
Addressed by: https:/
func tests: move _run_periodics() into own mixin
Addressed by: https:/
tests: work around malformed serial XML
Addressed by: https:/
func tests: move _run_periodics() into base class
Addressed by: https:/
Follow-up for NUMA live migration functional tests
Addressed by: https:/
Functional tests for NUMA live migration
Addressed by: https:/
Follow-up for NUMA live migration functional tests
Addressed by: https:/
func tests: move _run_periodics() into base class
Addressed by: https:/
Helper to start computes with different HostInfos