Grafana Agent
| Channel | Revision | Published | Runs on |
|---|---|---|---|
| 1/stable | 606 | 18 Sep 2025 | |
| 1/stable | 605 | 18 Sep 2025 | |
| 1/stable | 607 | 18 Sep 2025 | |
| 1/stable | 603 | 18 Sep 2025 | |
| 1/stable | 604 | 18 Sep 2025 | |
| 1/stable | 602 | 18 Sep 2025 | |
| 1/candidate | 606 | 09 Sep 2025 | |
| 1/candidate | 605 | 09 Sep 2025 | |
| 1/candidate | 607 | 09 Sep 2025 | |
| 1/candidate | 603 | 09 Sep 2025 | |
| 1/candidate | 604 | 09 Sep 2025 | |
| 1/candidate | 602 | 09 Sep 2025 | |
| 1/beta | 606 | 02 Sep 2025 | |
| 1/beta | 605 | 02 Sep 2025 | |
| 1/beta | 607 | 02 Sep 2025 | |
| 1/beta | 603 | 02 Sep 2025 | |
| 1/beta | 604 | 02 Sep 2025 | |
| 1/beta | 602 | 02 Sep 2025 | |
| 1/edge | 607 | 20 Aug 2025 | |
| 1/edge | 606 | 20 Aug 2025 | |
| 1/edge | 605 | 20 Aug 2025 | |
| 1/edge | 604 | 20 Aug 2025 | |
| 1/edge | 603 | 20 Aug 2025 | |
| 1/edge | 602 | 20 Aug 2025 | |
| 2/candidate | 667 | 08 Oct 2025 | |
| 2/candidate | 664 | 08 Oct 2025 | |
| 2/candidate | 666 | 08 Oct 2025 | |
| 2/candidate | 662 | 08 Oct 2025 | |
| 2/candidate | 665 | 08 Oct 2025 | |
| 2/candidate | 663 | 08 Oct 2025 | |
| 2/edge | 689 | 29 Oct 2025 | |
| 2/edge | 688 | 29 Oct 2025 | |
| 2/edge | 687 | 29 Oct 2025 | |
| 2/edge | 686 | 29 Oct 2025 | |
| 2/edge | 685 | 29 Oct 2025 | |
| 2/edge | 684 | 29 Oct 2025 |
juju deploy grafana-agent --channel 1/stable
Deploy universal operators easily with Juju, the Universal Operator Lifecycle Manager.
Platform:
The grafana-agent charm has two limitations:
- Only one instance of the charm should be related to each application.
- Only one instance should run per machine.
Failing to enforce these constraints can lead to configuration conflicts and errors.
When applications allow multiple relations with different instances of grafana-agent (e.g., ga-one and ga-two), or several instances of grafana-agent are running in the same machine, several issues can arise:
-
Single service and config file: Even if multiple
grafana-agentcharms are related, only one service and one configuration file are installed on the machine, overwritten by all related charms. -
Conflicting confinement settings: If different
grafana-agentinstances use different confinement types (classicvsstrict), the snap will apply only one type, potentially causing inconsistencies. -
Errors when removing relations: Removing a relation may uninstall the
grafana-agentsnap entirely, leaving other related charms in an error state as they attempt to manage a service that no longer exists.
More information about this, can be found in this post.
Recommended Implementation and Safeguards
-
Applications should use a
limitin theirmetadata.yaml/charmcraft.yamlto restrict relations to only one instance ofgrafana-agent.cos-agent: interface: cos_agent limit: 1 -
Ensure that only one
grafana-agentinstance runs per machine to avoid configuration conflicts and unexpected behaviour. -
Two probes (in
draftstate right now) can be executed in order to verify whether only onegrafana-agentis related to a charm or only onegrafana-agentdeployed in a machine:juju export-bundle | ./probe_bundle.py juju status --format=yaml | ./probe_status.py
Following these practices ensures stable and predictable deployments in production environments.