migrate a server with qos port with compute RPC pinned to 5.1 fails and leaves the qos port in an inconsistent state

Bug #1844993 reported by Balazs Gibizer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
High
Balazs Gibizer

Bug Description

Steps to reproduce
==================

1) Set the [upgrade_levels]/compute config parameter to '5.1'
2) Boot an instance with a neutron port having resource request (e.g. QoS min bandwidth policy)
4) Do the migration

Expected result
===============

Migration is rejected as qos port handing in migration needs at least RPC 5.2. Instance remains on the source host.

Actual result
=============

Migration fails at finish_resize step. Server goes to ERROR state on the destination host. The allocation key in the qos port binding profile still points to the source host.

Changed in nova:
assignee: nobody → Balazs Gibizer (balazs-gibizer)
summary: - migrate a server with qos port with compute RPC pinned to 5.0 fails and
+ migrate a server with qos port with compute RPC pinned to 5.1 fails and
leaves the qos port in an inconsistent state
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/683948

Changed in nova:
status: New → In Progress
Matt Riedemann (mriedem)
tags: added: conductor train-rc-potential upgrade
Changed in nova:
importance: Undecided → High
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to nova (master)

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

commit a3024b5cead9ad8668fcef57bf101ddaf6efea89
Author: Balazs Gibizer <email address hidden>
Date: Mon Sep 23 12:44:31 2019 +0200

    Functional reproduction for bug 1844993

    If the compute RPC is pinned to < 5.2 a server with QoS port cannot be
    migrated. However nova not just fails the migration but also leaves the
    server and the QoS port in an inconsistent state.

    Change-Id: Ia8dc51d11b8ce93c372ee77f2c0b43910f992574
    Related-Bug: #1844993

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

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

commit 4a10f8eaa7685e3ce03d728a4a1669946492097d
Author: Balazs Gibizer <email address hidden>
Date: Mon Sep 23 12:48:20 2019 +0200

    Reject migration with QoS port from conductor if RPC pinned

    The MigrationTask in the conductor already checks the service version as
    old computes cannot support migration with QoS port. However it is still
    possible that every compute is new but the compute RPC API is pinned to
    < 5.2. In this case the migration still cannot be supported.

    This patch adds an extra RPC version check to the conductor.

    Change-Id: Ib4e0b9ab050a59ab5a290e6eecea01b87c3bd4c6
    Closes-Bug: #1844993

Changed in nova:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/nova 20.0.0.0rc1

This issue was fixed in the openstack/nova 20.0.0.0rc1 release candidate.

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.