live migration with vpmem will go to error in Train

Bug #1863605 reported by LuyaoZhong
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Undecided
LuyaoZhong
Train
Fix Released
Undecided
LuyaoZhong

Bug Description

We introduced vpmem support in Train release, including create/resize/cold migration, but not live migration(with libvirt/qemu).

Since live migration will essentially rely on an libvirt xml, for vpmem there will be backend files configued in xml, if we live migrate an instance with vpmem under Train release, we may got two
unexpected results:

1. If the dest host has the same vpmem backend files as that used by instance on source host,
the live migration will succeed but the vpmems consumed on dest host will not be tracked.

2. If the dest host doesn't have those vpmems, the live migration will fail.

We need reject the live migration with vpmem in nova conductor when do the precheck. And backport to T release.

LuyaoZhong (luyaozhong)
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (master)

Fix proposed to branch: master
Review: https://review.opendev.org/708110

Changed in nova:
assignee: nobody → LuyaoZhong (luyaozhong)
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (master)

Reviewed: https://review.opendev.org/708110
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=db93b704cecdb72e9c23c7a4c07786f67bcfe7b2
Submitter: Zuul
Branch: master

commit db93b704cecdb72e9c23c7a4c07786f67bcfe7b2
Author: LuyaoZhong <email address hidden>
Date: Mon Feb 17 11:19:42 2020 +0000

    bug-fix: Reject live migration with vpmem

    Reject live migration if there are virtual persistent memory resources.
    Otherwise, if dest host has same vpmem backend file name as that used
    by instance, live migration will succeed and these files will be used
    but not tracked in Nova; if dest host has no those vpmems, it will
    trigger an error.

    Change-Id: I900f74d482fc87da5b1b5ec9db2ad5aefcfcfe7a
    Closes-bug: #1863605
    Implements: blueprint support-live-migration-with-virtual-persistent-memory

Changed in nova:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to nova (stable/train)

Fix proposed to branch: stable/train
Review: https://review.opendev.org/714064

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to nova (stable/train)

Reviewed: https://review.opendev.org/714064
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=b08d59ac7b21909046faee6c8f8fd50866befc76
Submitter: Zuul
Branch: stable/train

commit b08d59ac7b21909046faee6c8f8fd50866befc76
Author: LuyaoZhong <email address hidden>
Date: Mon Feb 17 11:19:42 2020 +0000

    bug-fix: Reject live migration with vpmem

    Reject live migration if there are virtual persistent memory resources.
    Otherwise, if dest host has same vpmem backend file name as that used
    by instance, live migration will succeed and these files will be used
    but not tracked in Nova; if dest host has no those vpmems, it will
    trigger an error.

    Conflicts:
        nova/conductor/tasks/live_migrate.py
        nova/tests/unit/conductor/tasks/test_live_migrate.py

    Note(luyao): Conflicts due to bd8e2fe9c80dbe39bdd03fb213148b30a9dfd36e
        and 5f63ada309f562f3ffe9b75b6f1acf1efb80ee4e not being present in Train.

    Change-Id: I900f74d482fc87da5b1b5ec9db2ad5aefcfcfe7a
    Closes-bug: #1863605
    (cherry picked from commit db93b704cecdb72e9c23c7a4c07786f67bcfe7b2)

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.