grafana / k8s-monitoring-helm

Apache License 2.0
223 stars 86 forks source link

Support enabling other Alloy components which mount files #726

Open iainlane opened 2 months ago

iainlane commented 2 months ago

I'm set up with k8s-monitoring in Grafana Cloud and it's working well, great job team 👐. Next I'd like to use other components from the Alloy deployed by this chart, so I don't have to manage a separate instance.

Is that something you support / recommend? If not, stop here and close this issue. 😁

Ok!

For that I was thinking I'd use this config settting

https://github.com/grafana/k8s-monitoring-helm/blob/388adca46e3fa8ff5ebcd90888549349ff07673a/charts/k8s-monitoring/values.yaml#L1974-L1979

The component I'm interested in right now is prometheus.exporter.snmp. As you can see on those docs, I need to supply a path to a config file. I can't find a way to do this in the chart as it stands now.

Would you consider providing a way for me to give either file contents / path pairs inline, which get mounted into the pod, or perhaps references to config maps which get volume mounted?

rpeternella-jimdo commented 1 month ago

I'm facing the same issue as @iainlane here.

Trying to setup the snowflake-prometheus-exporter with private key authentication, it expects me to provide the file path in the alloy config, but there's no clear way to mount it.

I've tried using extraObjects, but there I can only create a new pod spec, which does not solve the issue. I checked and this seemed to be possible directly via the alloy-metrics.alloy.mounts.extra key in the previous grafana-agent`. Is this something the chart will support?

petewall commented 1 week ago

If I can make an example that shows how to mount extra files to do private key auth, that would likely solve @rpeternella-jimdo's concern. Would you be able to extrapolate how to use that to mount the snmp files you need, @iainlane ?

iainlane commented 1 week ago

Yes totally. They seem to essentially be the same case but with different paths.