Nova cell registration logic broken

Bug #1842460 reported by Doug Szumski
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
kolla-ansible
Fix Released
Medium
Doug Szumski
Rocky
Fix Committed
Medium
Mark Goddard
Stein
Fix Committed
Medium
Mark Goddard
Train
Fix Released
Medium
Doug Szumski

Bug Description

The output from `nova-manage cell_v2 list_cells --verbose` contains an extra column which appears not to have existed previously, stating whether the cell is enabled or not. This means that the regex never matches, so existing_cells is always empty.

This impacts the following tasks during cell creation:

- Create base cell for legacy instances (will always run, previously would only run if base cell didn't exist)

- Update base cell for legacy instances (will never run)

- Print warning if a duplicate cell is detected (will never run)

The main user facing impact is likely to be that if they change the rabbit or mysql connection strings, for example by rotating the passwords, they won't get updated for the base cell.

Doug Szumski (dszumski)
Changed in kolla-ansible:
assignee: nobody → Doug Szumski (dszumski)
Changed in kolla-ansible:
status: New → In Progress
Revision history for this message
Doug Szumski (dszumski) wrote :

The create cell task doesn't fail on multiple invocations, because the `Create base cell for legacy instances` task has ` '"already exists" not in nova_cell.stdout'` in the failed_when conditions. The output when re-registering the base cell is for example:
 `The specified transport_url and/or database_connection combination already exists for another cell with uuid f6725b18-841d-40a1-b91d-7568d7440516.`

Doug Szumski (dszumski)
description: updated
Mark Goddard (mgoddard)
Changed in kolla-ansible:
importance: Undecided → Medium
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to kolla-ansible (master)

Reviewed: https://review.opendev.org/679823
Committed: https://git.openstack.org/cgit/openstack/kolla-ansible/commit/?id=7b636033ee5e40ba90bce1fa95fe5432e344acfc
Submitter: Zuul
Branch: master

commit 7b636033ee5e40ba90bce1fa95fe5432e344acfc
Author: Doug Szumski <email address hidden>
Date: Tue Sep 3 17:42:19 2019 +0100

    Fix Nova cell search

    The output from `nova-manage cell_v2 list_cells --verbose` contains
    an extra column, stating whether the cell is enabled or not. This means
    that the regex never matches, so existing_cells is always empty.

    This fix updates the regex by adding a match group for this field which
    may be used in a later change.

    Unfortuately the CLI doesn't output in JSON format, which would make
    this a lot less messy.

    Closes-Bug: #1842460
    Change-Id: Ib6400b33785f3ef674bffc9329feb3e33bd3f9a3

Changed in kolla-ansible:
status: In Progress → Fix Released
Revision history for this message
Mark Goddard (mgoddard) wrote :

Cell disable feature was added to nova in Rocky: https://review.opendev.org/#/c/555415/

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to kolla-ansible (stable/stein)

Fix proposed to branch: stable/stein
Review: https://review.opendev.org/681010

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to kolla-ansible (stable/rocky)

Fix proposed to branch: stable/rocky
Review: https://review.opendev.org/681012

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to kolla-ansible (stable/stein)

Reviewed: https://review.opendev.org/681010
Committed: https://git.openstack.org/cgit/openstack/kolla-ansible/commit/?id=ba332d42d47c09d033decab33953b9d4ca9b3ed8
Submitter: Zuul
Branch: stable/stein

commit ba332d42d47c09d033decab33953b9d4ca9b3ed8
Author: Doug Szumski <email address hidden>
Date: Tue Sep 3 17:42:19 2019 +0100

    Fix Nova cell search

    The output from `nova-manage cell_v2 list_cells --verbose` contains
    an extra column, stating whether the cell is enabled or not. This means
    that the regex never matches, so existing_cells is always empty.

    This fix updates the regex by adding a match group for this field which
    may be used in a later change.

    Unfortuately the CLI doesn't output in JSON format, which would make
    this a lot less messy.

    Closes-Bug: #1842460
    Change-Id: Ib6400b33785f3ef674bffc9329feb3e33bd3f9a3
    (cherry picked from commit 7b636033ee5e40ba90bce1fa95fe5432e344acfc)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to kolla-ansible (stable/rocky)

Reviewed: https://review.opendev.org/681012
Committed: https://git.openstack.org/cgit/openstack/kolla-ansible/commit/?id=c87d443680da368d9af8087c6ea6f735ad87339c
Submitter: Zuul
Branch: stable/rocky

commit c87d443680da368d9af8087c6ea6f735ad87339c
Author: Doug Szumski <email address hidden>
Date: Tue Sep 3 17:42:19 2019 +0100

    Fix Nova cell search

    The output from `nova-manage cell_v2 list_cells --verbose` contains
    an extra column, stating whether the cell is enabled or not. This means
    that the regex never matches, so existing_cells is always empty.

    This fix updates the regex by adding a match group for this field which
    may be used in a later change.

    Unfortuately the CLI doesn't output in JSON format, which would make
    this a lot less messy.

    Closes-Bug: #1842460
    Change-Id: Ib6400b33785f3ef674bffc9329feb3e33bd3f9a3
    (cherry picked from commit 7b636033ee5e40ba90bce1fa95fe5432e344acfc)

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/kolla-ansible 9.0.0.0rc1

This issue was fixed in the openstack/kolla-ansible 9.0.0.0rc1 release candidate.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/kolla-ansible 7.2.0

This issue was fixed in the openstack/kolla-ansible 7.2.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/kolla-ansible 8.1.0

This issue was fixed in the openstack/kolla-ansible 8.1.0 release.

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.