commit b9bae02af2168ad64d3b3d28c97c3853cee73272
Author: Chris Friesen <email address hidden>
Date: Fri Mar 27 09:23:48 2015 -0600
fix "down" nova-compute service spuriously marked as "up"
Currently we use the auto-updated "updated_at" field to determine
whether a service is "up". An end-user can cause the "updated_at"
field to be updated by disabling or enabling the service, thus
potentially causing a service that is unavailable to be detected
as "up". This could result in the scheduler trying to assign
instances to an unavailable compute node, or in the system
mistakenly preventing evacuation of an instance.
The fix is to add a new field to explicitly track the timestamp of
the last time the service sent in a status report and use that if
available when testing whether the service is up.
DocImpact
This commit will cause a behaviour change for the DB servicegroup
driver. It will mean that enabling/disabling the service will
cause the "updated_at" field to change (as before) but that will
no longer be tied to the "up/down" status of the service. So
"nova service-list" could show the service as "down" even if it
shows a recent "updated_at". (But this could happen for the other
servicegroup drivers already.)
Reviewed: https:/ /review. openstack. org/163060 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=b9bae02af21 68ad64d3b3d28c9 7c3853cee73272
Committed: https:/
Submitter: Jenkins
Branch: master
commit b9bae02af2168ad 64d3b3d28c97c38 53cee73272
Author: Chris Friesen <email address hidden>
Date: Fri Mar 27 09:23:48 2015 -0600
fix "down" nova-compute service spuriously marked as "up"
Currently we use the auto-updated "updated_at" field to determine
whether a service is "up". An end-user can cause the "updated_at"
field to be updated by disabling or enabling the service, thus
potentially causing a service that is unavailable to be detected
as "up". This could result in the scheduler trying to assign
instances to an unavailable compute node, or in the system
mistakenly preventing evacuation of an instance.
The fix is to add a new field to explicitly track the timestamp of
the last time the service sent in a status report and use that if
available when testing whether the service is up.
DocImpact
This commit will cause a behaviour change for the DB servicegroup
driver. It will mean that enabling/disabling the service will
cause the "updated_at" field to change (as before) but that will
no longer be tied to the "up/down" status of the service. So
"nova service-list" could show the service as "down" even if it
shows a recent "updated_at". (But this could happen for the other
servicegroup drivers already.)
Closes-Bug: #1420848 bca3cf2c711217e 1a3b7d24a03
Change-Id: Ied7d47363d0489