Author: Matt Riedemann <mriedem...@gmail.com>
Date: Tue Feb 20 13:48:12 2018 -0500
Only attempt a rebuild claim for an evacuation to a new host
Change I11746d1ea996a0f18b7c54b4c9c21df58cc4714b changed the
behavior of the API and conductor when rebuilding an instance
with a new image such that the image is run through the scheduler
filters again to see if it will work on the existing host that
the instance is running on.
As a result, conductor started passing 'scheduled_node' to the
compute which was using it for logic to tell if a claim should be
attempted. We don't need to do a claim for a rebuild since we're
on the same host.
This removes the scheduled_node logic from the claim code, as we
should only ever attempt a claim if we're evacuating, which we
can determine based on the 'recreate' parameter.
** Changed in: nova
Status: In Progress => Fix Released
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
rebuild to same host with a different image results in erroneously
doing a Claim
Status in OpenStack Compute (nova):
Status in OpenStack Compute (nova) ocata series:
Status in OpenStack Compute (nova) pike series:
Status in OpenStack Compute (nova) queens series:
As of stable/pike if we do a rebuild-to-same-node with a new image, it
results in ComputeManager.rebuild_instance() being called with
"scheduled_node=<hostname>" and "recreate=False". This results in a
new Claim, which seems wrong since we're not changing the flavor and
that claim could fail if the compute node is already full.
The comments in ComputeManager.rebuild_instance() make it appear that
it expects both "recreate" and "scheduled_node" to be None for the
rebuild-to-same-host case otherwise it will do a Claim. However, if
we rebuild to a different image it ends up going through the scheduler
which means that "scheduled_node" is not None.
To manage notifications about this bug go to:
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to : email@example.com
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help : https://help.launchpad.net/ListHelp