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

Helm: Remove graphite-web from graphite proxy configuration #5133

Merged
merged 6 commits into from
Jun 12, 2023

Conversation

fionaliao
Copy link
Contributor

@fionaliao fionaliao commented Jun 1, 2023

What this PR does

This PR removes the graphite-web component from the graphite proxy.

graphite-web is used to render queries that the native query engine cannot. However, the Helm chart configuration for graphite-web is broken so it's not been running and handling queries.

Issues:

  • The graphite-web container has to writes to files in the /opt/ and /var/ directories and also changes the ownership of some /opt/ files. It was unable to start up due to the restricted policy that was applied to the pod/container.
  • graphite-web is hardcoded to listen on port 80 (code). In the Helm chart it's configured to use on port 8080, so even without the restricted policy, we were failing to query it.
  • graphite-web expects the host header for the request to be graphite (code). This requires the graphite-web service name to be just graphite instead of {{ include "mimir.resourceName" (dict "ctx" . "component" "graphite-web") }}.

We could either fix these issues or remove graphite-web completely. I decided to remove graphite-web, as the majority of graphite functions and features are supported by the native GEM graphite query engine, and we're currently working on supporting the remaining few issues. Also the configuration for graphite-web has never worked since it was added to the Helm chart, so we're not removing any features. The configuration options for graphite-web are still available in GEM if any users want to use it.

Testing

I tested this manually by deploying the Helm chart locally in a Kind cluster and verifying a) the graphite-web resources had been removed, and b) all the other pods were successfully running. Also ran the test_graphite_write_path.sh and test_graphite_read_path.sh scripts, checked they worked, and also that queries that used to fallback to graphite-web were returning with the expected errors.

Checklist

  • Tests updated
  • Documentation added
  • CHANGELOG.md updated - the order of entries should be [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]

@fionaliao fionaliao marked this pull request as ready for review June 1, 2023 17:42
@fionaliao fionaliao requested a review from a team as a code owner June 1, 2023 17:42
Copy link
Contributor

@dimitarvdimitrov dimitarvdimitrov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, I don't have a concern about introducing a breaking change without deprecation since this hasn't been working for a long time now.

@fionaliao fionaliao force-pushed the fl/remove-graphite-web branch from a0d931f to 9bf127c Compare June 12, 2023 14:18
@dimitarvdimitrov dimitarvdimitrov enabled auto-merge (squash) June 12, 2023 14:20
@dimitarvdimitrov dimitarvdimitrov merged commit 8625540 into main Jun 12, 2023
@dimitarvdimitrov dimitarvdimitrov deleted the fl/remove-graphite-web branch June 12, 2023 14:33
@dimitarvdimitrov dimitarvdimitrov mentioned this pull request Jun 23, 2023
2 tasks
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