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

Create OpenShift metrics dashboards from the operator #2995

Open
iblancasa opened this issue May 29, 2024 · 16 comments · May be fixed by #2996
Open

Create OpenShift metrics dashboards from the operator #2995

iblancasa opened this issue May 29, 2024 · 16 comments · May be fixed by #2996
Labels
enhancement New feature or request needs triage

Comments

@iblancasa
Copy link
Contributor

Component(s)

collector

Is your feature request related to a problem? Please describe.

The OpenShift Console allows the creation of dashboards to display graphs created from metrics. Those are based on [the Grafana JSON Model] for dashboards, more concretely on Grafana 6.x dashboard format.

The creation of the dashboard is done by creating a ConfigMap with the label "console.openshift.io/dashboard" set to "true" in the "openshift-config-managed" namespace.

The idea of this issue would be to create one dashboard to visualize the metrics from the OpenTelemetry Collector automatically. Those metrics would be the ones associated to the OpenTelemetry Collector monitoring.

Describe the solution you'd like

It is not necessary to create this dashboard per collector so, after a talk with @pavolloffay we think it would be nice if we create this dashboard as part of the steps to set up the operator.

We don't need to reconcile this ConfigMap.

Also, we can enable/disable the creation of the ConfigMap with a CLI flag (set to false by default).

Describe alternatives you've considered

No response

Additional context

Dashboard example

@iblancasa iblancasa added enhancement New feature or request needs triage labels May 29, 2024
iblancasa added a commit to iblancasa/opentelemetry-operator that referenced this issue May 29, 2024
…try#2995

Signed-off-by: Israel Blancas <iblancasa@gmail.com>
@jaronoff97
Copy link
Contributor

jaronoff97 commented May 29, 2024

IMO this feels like something that should be packaged in the helm chart no? Are there other repos / operators that do this today that I could check out?

@iblancasa
Copy link
Contributor Author

IMO this feels like something that should be packaged in the helm chart no? Are there other repos / operators that do this today that I could check out?

I see this as a valid use case. Also, not everybody uses Helm to deploy the operator. For instance, in our case, we use OLM.

@jaronoff97
Copy link
Contributor

true............ hm...... idk I need some other thoughts here @swiatekm-sumo @pavolloffay. We do already have some OpenShift specific code but a lot of that is for creating openshift related resources, not necessarily creating something for a vendor's backend.

@swiatekm
Copy link
Contributor

Logically, this feels more like something that should be part of the OLM package rather than the operator itself, especially if it's static. I don't see why we need to involve the operator in what is essentially just creating a fixed ConfigMap.

@pavolloffay
Copy link
Member

@iblancasa could the CM be put into the bundle and be installed by OLM? Meaning the integration would be static without code change on the operator

@iblancasa
Copy link
Contributor Author

@iblancasa could the CM be put into the bundle and be installed by OLM? Meaning the integration would be static without code change on the operator

Yes. It should be fine if we just create the CM somewhere. Do you mean to add it to the bundle or how?

@jaronoff97
Copy link
Contributor

@iblancasa i do think we should add it to the bundle, yes. feels a lot cleaner :)

@iblancasa
Copy link
Contributor Author

@iblancasa i do think we should add it to the bundle, yes. feels a lot cleaner :)

Is it ok if we add it to the bundle for regular K8s environments? I don't know if there is a way to enable/disable this somehow... or just we can add it always. Nothing will be done for the K8s clusters (if something fails should be detected during the E2E). WDYT?

@jaronoff97
Copy link
Contributor

I was under the impression that the openshift bundle is installed from a single path here. I think if we just add in the file there it would only be installed for openshift. Though my knowledge of this is very shaky.

@iblancasa
Copy link
Contributor Author

I was under the impression that the openshift bundle is installed from a single path here. I think if we just add in the file there it would only be installed for openshift. Though my knowledge of this is very shaky.

That will affect the installation in plain Kubernetes too. @pavolloffay and I were thinking about having a separate bundle for OpenShift. We are doing that for other projects and it goes well.

@jaronoff97
Copy link
Contributor

Oh that would work well too. I would support that.

@pakita
Copy link

pakita commented Jun 6, 2024

Please can you provide link to OpenShift Dashboard JSON file.
And can you direct me to the link where I can find list of all related metrics that are used for Dashboard.
Thank you

@iblancasa
Copy link
Contributor Author

I was under the impression that the openshift bundle is installed from a single path here. I think if we just add in the file there it would only be installed for openshift. Though my knowledge of this is very shaky.

That will affect the installation in plain Kubernetes too. @pavolloffay and I were thinking about having a separate bundle for OpenShift. We are doing that for other projects and it goes well.

This is not an option because OLM will create the ConfigMap in the same namespace where the operator is installed.

@pavolloffay
Copy link
Member

We should still consider creating on OCP specific bundle if there will be functionality we want to enable by default on that platform

@iblancasa
Copy link
Contributor Author

We should still consider creating on OCP specific bundle if there will be functionality we want to enable by default on that platform

Sure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs triage
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants