ceilometer fails talking to keystone during metric-service-relation-changed hook; keystone is not ready
Bug #1749280 reported by
Jason Hobbs
This bug affects 3 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Gnocchi Charm |
Fix Released
|
High
|
David Ames | ||
OpenStack Ceilometer Charm |
Fix Released
|
High
|
David Ames | ||
OpenStack HA Cluster Charm |
Invalid
|
Medium
|
David Ames | ||
OpenStack Keystone Charm |
Invalid
|
Medium
|
David Ames |
Bug Description
the ceilometer charm threw an error in the metric-
log of the failure: http://
That makes sense, because keystone is not yet ready; its status is "Incomplete relations: database".
http://
juju status: http://
Changed in charm-gnocchi: | |
assignee: | nobody → David Ames (thedac) |
Changed in charm-keystone: | |
assignee: | nobody → David Ames (thedac) |
Changed in charm-gnocchi: | |
milestone: | none → 18.02 |
Changed in charm-keystone: | |
milestone: | none → 18.02 |
tags: | added: on-site |
tags: |
added: cpe-onsite removed: on-site |
Changed in charm-gnocchi: | |
importance: | Medium → High |
Changed in charm-ceilometer: | |
importance: | Medium → High |
Changed in charm-keystone: | |
importance: | Medium → High |
Changed in charm-hacluster: | |
status: | Fix Released → Triaged |
assignee: | James Page (james-page) → David Ames (thedac) |
Changed in charm-ceilometer: | |
assignee: | nobody → David Ames (thedac) |
Changed in charm-ceilometer: | |
status: | Triaged → Fix Committed |
Changed in charm-hacluster: | |
importance: | Critical → Medium |
Changed in charm-keystone: | |
importance: | High → Medium |
Changed in charm-ceilometer: | |
milestone: | none → 18.02 |
Changed in charm-hacluster: | |
status: | In Progress → Invalid |
Changed in charm-keystone: | |
status: | In Progress → Invalid |
Changed in charm-ceilometer: | |
status: | Fix Committed → Fix Released |
Changed in charm-gnocchi: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
I see the issue here (cascade of ready states needed before things will actually work); ceilometer-upgrade creates resource-types in gnocchi, which obviously requires gnocchi + mysql + ceph + memcache + keystone; gnocchi units will only present a URL when they think they have everything they need - however keystone looks to be listening on ports, but not actually functional due to missing DB configuration.
Three potential routes here
a) Move ceilometer-upgrade into an action to be completed post deployment (as we did for heat's domain-setup action).
b) Rework the keystone charm to disable services until its completely up and ready, so that only units which are 'complete' will listen for connections - this has added complexity in that we'll want haproxy + VIP to be configured correctly for this scenario as well and due to the async nature of the hacluster configuration, some of that might not happen straight away.
c) Introduce the 'don't give out credentials until I'm clustered' optimization we've done in other charms to the keystone charm as well (it does not have this atm). This will delay gnocchi from going complete until keystone is fully clustered, limiting the scope for this deployment race scenario.