Look into Grafana Alloy -> push to Mimir instead of Prometheus pull #32

Closed
opened 2024-07-05 22:00:03 +00:00 by k900 · 1 comment
Owner

Not sure if we want that yet, but might be worth a look to avoid exposing metrics and also meta flake-wide eval time losses. Open question: is the NixOS module any good? If not, can we make it any good without too much effort? Could we also have it subsume promtail?

Not sure if we want that yet, but might be worth a look to avoid exposing metrics and also meta flake-wide eval time losses. Open question: is the NixOS module any good? If not, can we make it any good without too much effort? Could we also have it subsume promtail?
Member

Disclaimer: I wrote in private with @k900 about this right before the issue was opened.

I do see a lot of benefits in using a push based setup, given Mimir supports this very nicely, and we already push things to Loki anyway.

I strongly suggest, however, to use Grafana Agent instead of Alloy for now.

  1. The only configuration syntax supported by Alloy right now is the HCL inspired "Alloy Configuration Syntax" (previously called "River").
  2. JSON support (just like you can write JSON instead HCL in Hashicorp products) is planned but will take some time1.
  3. For terraform, it was decided to use terranix instead of HCL for this infra. I feel like introducing an extremely similar HCL flavor for Alloy, is the wrong way to go about this.
  4. The services.alloy module is IMHO not good. It expects you to put your configuration in environment.etc."alloy/config.alloy" by default.
  5. Grafana Agent is not EOL until November 2025. The static mode is a breeze. I can share examples or work with you on that, if you want.
  6. Migrating from Agent (static mode) to Alloy (essentially the flow mode in Agent) is very easy and not much work in the future.
Disclaimer: I wrote in private with @k900 about this right before the issue was opened. I do see a lot of benefits in using a push based setup, given Mimir supports this very nicely, and we already push things to Loki anyway. I strongly suggest, however, to use Grafana Agent instead of Alloy for now. 1. The only configuration syntax supported by Alloy right now is the HCL inspired "Alloy Configuration Syntax" (previously called "River"). 1. JSON support (just like you can write JSON instead HCL in Hashicorp products) is planned but will take some time[^1]. 1. For terraform, it was decided to use terranix instead of HCL for this infra. I feel like introducing an extremely similar HCL flavor for Alloy, is the wrong way to go about this. 1. The `services.alloy` module is IMHO not good. It expects you to put your configuration in `environment.etc."alloy/config.alloy"` by default. 1. Grafana Agent is not EOL until November 2025. The static mode is a breeze. I can share examples or work with you on that, if you want. 1. Migrating from Agent (static mode) to Alloy (essentially the flow mode in Agent) is very easy and not much work in the future. [^1]: https://github.com/grafana/alloy/issues/326
k900 closed this issue 2024-07-08 06:45:27 +00:00
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: the-distro/infra#32
No description provided.