Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: introduce ceilometer helm chart overrides #128

Merged
merged 20 commits into from
Mar 19, 2024

Conversation

LukeRepko
Copy link
Contributor

@LukeRepko LukeRepko commented Mar 8, 2024

Add overrides for the Ceilometer helm chart, making changes to Gnocchi and/or PostgreSQL charts as needed during integration.

Ceilometer provides metering, monitoring, and alarming capabilities in Openstack for billing, performance, optimization, and capacity planning purposes.

@LukeRepko LukeRepko marked this pull request as draft March 8, 2024 00:10
This begins to add the overrides for the Ceilometer helm chart.
Ceilometer provides metering, monitoring, and alarming capabilities in
Openstack for billing, performance, optimization, and capacity planning
purposes.
Trying to pull the wallaby image for ceilometer-api results in a 404 not
found now. ceilometer-api is in the base image as of commit
cd67930 per the upstream kolla repo, so pull that instead.
ceilometer collector was removed from ceilometer code base[1]

[1] https://review.openstack.org/504244
@LukeRepko LukeRepko force-pushed the ceilometer branch 4 times, most recently from 31dc4a5 to d2e87a5 Compare March 19, 2024 00:03
@LukeRepko LukeRepko marked this pull request as ready for review March 19, 2024 00:15
@LukeRepko LukeRepko changed the title [WIP] feat: introduce ceilometer helm chart overrides feat: introduce ceilometer helm chart overrides Mar 19, 2024
@LukeRepko LukeRepko requested review from the2hill and andrew-vant and removed request for andrew-vant March 19, 2024 00:24
@LukeRepko LukeRepko force-pushed the ceilometer branch 2 times, most recently from 14d1231 to 51ae24a Compare March 19, 2024 01:19
This disables deployment of the api pod and removes related api
configuration as ceilometer no longer has a rest API. It is simply a
worker service at this point. Gnocchi API is preferred over ceilometer.
The database section is not used, but the base chart still tries to set
some sane default values, so to avoid confusion, just override those to
a string value that makes it obvious this section is not used.

The recommended storage location for meters and events is Gnocchi, which
is automatically discovered and used by means of keystone.
This was explicitly set to notify:// without any context as to what that
is or does. The configuration does not list that as a valid value, so
let's replace the publisher with the default, `gnocchi`.
There is no endpoint for ceilometer anymore so remove the related job
that makes a service in keystone for one.
This was the newest tagged image that I could find for Ceilometer. We
will need to investigate building our own Ceilometer images for a later
release of Genstack.
The helm chart has a db_sync job which executes ceilometer-upgrade which
executes the storage upgrade function that initiates the resource types
in gnocchi with their attributes.
The event definitions defined in the helm chart were very dated, update
them to match those found in the yoga release.
The gnocchi resources were outdated. This updates them to match what was
released with Yoga.
The existing meters were outdated. This brings them up to date with the
yoga release.
This removes some complexity that the original helm chart introduced
which defines custom meter sinks relating to instance cpu, disk, and net
metrics. We may find ourselves disabling pollsters for individual
instances, so let's not inundate the pipeline with un-necessary
complexity yet. If we find they are useful or needed, we can re-enable
them after verifying their proper operation.

The polled metrics will still be stored in Gnocchi, just not transformed
according to the defined sinks. Iff re-introduced, these pipeline sinks
may need to be further tweaked to work with the updated event defs.
This should make Gnocchi more reliable and have better overall perf.
We don't enforce pod resource limits in other helm charts so set this to
false as the default.
Ceilometer no longer has a rest API so let's remove this section from
the overrides.
When troubleshooting, it helps to raise or lower default log levels
of specific modules, setting requests related loggers to DEBUG for
example can help one diagnose ceilometer CRUD operations.
The default was midnight but a lot of jobs run then; kick this off a
little later to help avoid the thundering herd affect.
@cloudnull cloudnull merged commit 1fc182c into rackerlabs:main Mar 19, 2024
3 checks passed
@LukeRepko LukeRepko deleted the ceilometer branch September 5, 2024 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants