compute resource providers not equal to compute nodes in deployment
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
iain MacDonnell | ||
Pike |
Fix Committed
|
Medium
|
s10 | ||
Queens |
Fix Committed
|
Medium
|
s10 | ||
Rocky |
Fix Committed
|
Medium
|
s10 |
Bug Description
Description
===========
When I execute the command `nova-status upgrade check`,
output:
nova-status upgrade check
+------
| Upgrade Check Results |
+------
| Check: Cells v2 |
| Result: Success |
| Details: None |
+------
| Check: Placement API |
| Result: Success |
| Details: None |
+------
| Check: Resource Providers |
| Result: Warning |
| Details: There are 4 compute resource providers and 15 compute nodes |
| in the deployment. Ideally the number of compute resource |
| providers should equal the number of enabled compute nodes |
| otherwise the cloud may be underutilized. See |
| http://
| for more details. |
+------
Steps to reproduce
==================
How to replicate this?
Remove the hosts from the openstack controller:
nova hypervisor-list
nova service-delete {id}
Then run:
su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova
The deleted compute node will be added again as a new node.
run:
nova-status upgrade check
Expected result
===============
No warning when you run:
nova-status upgrade check
Actual result
=============
You can find the warning.
This causes issue with placement of new VM's.
The compute host which was deleted and added again will not be considered during VM scheduling and placement.
Environment
===========
OpenStack Pike release
Neutron Networking which is default.
Logs and Configs
================
Config as the Openstack documentation.
tags: | added: neutron |
tags: | added: nova-manage |
tags: | removed: neutron |
description: | updated |
description: | updated |
tags: | removed: nova-manage |
Changed in nova: | |
importance: | Undecided → Medium |
> su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova
The deleted compute node will be added again as a new node.
That doesn't actually have anything to do with the compute node records getting re-created after you delete the service records.
Are you actually stopping the nova-compute service before you delete the service records via the API? Because if not, there is a periodic task in the nova-compute service that will automatically re-create the compute_nodes records in the database.
See the note in the API reference:
https:/ /developer. openstack. org/api- ref/compute/ #delete- compute- service