[Bug 1996229] Re: [SRU] magnum ui can not delete the coe cluster
Robie Basak
1996229 at bugs.launchpad.net
Thu Jun 29 16:09:20 UTC 2023
Please do not re-upload until the requested fix is provided, or you've
agreed an alternative path with an SRU team member.
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/1996229
Title:
[SRU] magnum ui can not delete the coe cluster
Status in Ubuntu Cloud Archive:
Invalid
Status in Ubuntu Cloud Archive ussuri series:
Won't Fix
Status in magnum-ui package in Ubuntu:
Invalid
Status in python-magnumclient package in Ubuntu:
Invalid
Status in python-magnumclient source package in Focal:
Triaged
Bug description:
[ Impact ]
When trying to manipulate objects over the Magnum API (container-infra endpoint)
the client available in the Ubuntu 20.04 archive implements an older and
incompatible API version (1.1 instead of 1.9), this makes impossible to complete
certain operations like creating and destroy clusters.
For example when creating clusters the following error is returned by
Horizon:
"Key must be in
name,node_count,discovery_url,master_count,baymodel_id,bay_create_timeout,cluster_template_id,create_timeout,keypair,docker_volume_size,labels,master_flavor_id,flavor_id"
This is because manugm-ui is passing keys that magnumclient is not
aware of.
The list of python-magnumclient releases for the Ussuri (Focal)
release is available at [0], the versions compatible are 2.17.0, 3.0.0
and 3.0.1, while the version shipped in Ubuntu 20.04 is 2.11.0 which
corresponds to the version released during the OpenStack Stein
cycle[1]
The specific list of packages and their versions that need to be
aligned in the Ubuntu 20.04 (Focal) archive with the upstream
OpenStack Ussuri release are:
magnum (SRU at bug 2009966)
- Upstream: 10.1.0
- Ubuntu: 10.0.0-0ubuntu0.20.04.2
magnum-ui (SRU at bug 2009966)
- Upstream 6.0.1
- Ubuntu: 5.2.0-1
python-magnumclient (this SRU)
- Upstream: 3.0.1
- Ubuntu: 2.11.0-0ubuntu6
[0] https://releases.openstack.org/teams/magnum.html#team-ussuri-python-magnumclient
[1] https://releases.openstack.org/teams/magnum.html#team-stein-python-magnumclient
[ Test Plan ]
Steps to reproduce:
1. Deploy a Magnum based environment with charmed-openstack-tester
including charm-mistral:
git clone https://github.com/openstack-charmers/charmed-openstack-tester.git
cd charmed-openstack-tester
# update focal-ussuri-magnum bundle to include charm-mistral
tox -e func-target -- keystone_v3_smoke_focal_magnum:focal-ussuri-magnum
2. Once the deployment has completed go Horizon and follow these
steps:
- Create Cluster Template object with any configuration and name it "k8s-template"
- Create a Cluster based on the previosly created template ("k8s-template")
Expected result:
- A new cluster is spawn
Actual result:
- The cluster fails to be created, Horizon displays a notification without details of the failure
- Looking into Firefox developer tools network the followin error can be found in a 400 error request to Horizon:
"Key must be in
name,node_count,discovery_url,master_count,baymodel_id,bay_create_timeout,cluster_template_id,create_timeout,keypair,docker_volume_size,labels,master_flavor_id,flavor_id"
[ Where problems could occur ]
* The main component in an OpenStack cloud that consumes python-
magnumclient is Horizon when the magnum-ui package is installed and
enabled, any issues with this SRU would express with the inability to
manipulate Magnum containers from the web UI, errors would show up in
/var/log/apache2/error.log where any stacktrace would be logged.
* Other consumer of this package is actual final users trying to
manage their Magnum containers from the CLI, problems with this
package would have the symptom of incompatible APIs versions, although
the client is capable of downgrading to a API version compatible.
* A third aspect to have in mind is users with custom program (e.g.
python scripts that import magnumclient as library), when analyzing
the git log no removal of code was found (e.g. deprecated API removed)
nor incompatible features added.
* In order to provide support that is equivalent to the latest
supported upstream ussuri version, the following 3 commits are
included. These are worth noting because they cause behavioral changes
to the cluster show and nodegroup list commands:
1) cluster show adds a column for project_id - this is useful for cloud admin/ops to display the project_id in cluster show
https://github.com/openstack/python-magnumclient/commit/d91d4c72a10493e57a664e18e1f98268e43dd537
2) cluster list adds a column for health_status and health_status_reason - these are useful for cloud admin/ops to display health status in cluster show
https://github.com/openstack/python-magnumclient/commit/74c5f22c6ffb23154f2e0412ba43371f3c02f3b7
3) nodegroup list adds columns for `image_id` and `status` and moves column positions for `node_count` and `role` only changed position - these are useful for providing more details to nodegroup list output
https://github.com/openstack/python-magnumclient/commit/934cf548540086268991dab47b5bcb85f65b693f
[ Other Info ]
* This SRU brings onboard 52 new commits
$ git log --oneline 2.11.0..3.0.1 | wc -l
52
* There are 7 releases between 2.11.0 and 3.0.1, which it's a lot for
a SRU, although since the version shipped in Focal is not correctly
aligned with the version upstream released for Ussuri (the version
shipped in Focal), users will be better served with a one time bump up
of the package.
[Original description]
Try to delete the coe cluster through magnum UI. It removes the entry
from UI immediately, but when we refresh the dashboard interface
cluster, it appears again. It happens on packages magnum-ui from
Ussuri on Focal. Did not try with latest version of Openstack.
To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1996229/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list