Overview of Grafana Kubernetes Monitoring Helm chart
The Grafana Kubernetes Monitoring Helm chart offers a complete solution for configuring infrastructure, zero-code instrumentation, and gathering telemetry. The benefits of using this chart include:
- Flexible architecture
- Compatibility with existing systems such as OpenTelemetry and Prometheus Operators
- Dynamic creation of Alloy objects based on your configuration choices
- Scalability for all Cluster sizes
- Built-in testing and schemas to help you avoid errors
Release notes
Refer to Helm chart release notes for all updates.
Container image security
The container images deployed by the Kubernetes Monitoring Helm chart are built and managed by the following subcharts. The Helm chart itself uses a dependency updating system to ensure that the latest version of the dependent charts are used. Subchart authors are responsible for maintaining the security of the container images they build and release.
Packages installed with Helm chart
The Grafana Kubernetes Monitoring Helm chart deploys a complete monitoring solution for your Cluster and applications running within it. The chart installs systems, such as Node Exporter and Alloy Operator, along with their configuration to make these systems run. These elements are kept up to date in the Kubernetes Monitoring Helm chart with a dependency updating system to ensure that the latest versions are used.
The Helm chart installs Alloy Operator, which renders a kind: Alloy
object dynamically that depends on the options you choose for configuration. When an Alloy object is deployed to the Cluster based on the values.yaml file, Alloy Operator:
- Determines the workload type and creates the components needed by the Alloy object (such as file system access, permissions, or the capability to read secrets)
- Performs a Helm install of the Alloy object and its components

Note
Multiple instances of Alloy support the scalability of your infrastructure.
Infrastructure metrics
Alloy Operator installs an Alloy metrics StatefulSet which will retrieve Cluster metrics from components already in the Cluster or those installed by the Helm chart:
kubelet
, the primary Node agent which ensures containers are running and healthy- cAdvisor, which provides container CPU, memory, and disk usage
- Node Exporter, which provides hardware device and kernel-related metrics from Linux Nodes. The exported Prometheus metrics indicate the health and state of Nodes in the Cluster.
- Windows Exporter, which provides hardware device and kernel-related metrics from Windows Nodes. The exported Prometheus metrics indicate the health and state of Nodes in the Cluster.
- kube-state-metrics, which listens to the API server and generates metrics on the health of objects such as Deployments, Nodes, and Pods.
This service generates metrics from Kubernetes API objects, and uses
client-go
to communicate with Clusters. For Kubernetes client-go version compatibility and any other related details, refer to kube-state-metrics. - Prometheus Operator CRDs, which gathers metrics on Pods, services, and containers

This Alloy instance can also gather metrics from:
- OpenCost, to calculate Kubernetes infrastructure and container costs. OpenCost requires Kubernetes 1.8+ Clusters.
- Kepler for energy metrics
Infrastructure logs
The following collectors retrieve logs:
- An Alloy Deployment for Cluster events, to get events from the API server and transform them into logs
Alloy singleton instance installed by Helm chart to gather events - An Alloy DaemonSet to retrieve Pod logs and Node logs
Alloy logs instance for gathering logs
Application telemetry
The Alloy Operator can also create the following to gather metrics, logs, traces, and profiles from applications running in the Cluster:
- An Alloy DaemonSet, which opens receiver ports to process data delivered directly to itself from applications instrumented with OpenTelemetry SDKs
Alloy receiver instance installed by Helm chart to receive telemetry - An Alloy DaemonSet to gather profiles
Alloy profiles instance installed by Helm chart and the profiles gathered
Automatic instrumentation
With the Helm chart, you can install a Grafana Beyla DaemonSet to perform zero code instrumentation of applications and gather network metrics.

Deployment
After you have made configuration choices, the values.yaml
file is altered to reflect your selections for configuration.
Note
In the configuration GUI, you can choose to switch on or off the collection of metrics, logs, events, traces, costs, or energy metrics during the configuration process.
When you deploy the chart, the Alloy Operator dynamically creates the Alloy objects based on your choices and the Helm chart installs the appropriate components required for collecting telemetry data. Separate instances of Alloy deploy so that there are no issues with scaling.
After deployment, you can check the Metrics status tab under Configuration. This page provides a snapshot of the overall health of the metrics being ingested.

Customization
You can also customize the chart for your specific needs and tailor it to specific Cluster environments. For example:
- Your configuration might already have an existing kube-state-metrics in your Cluster, so you don’t want the Helm chart to install another one.
- Enterprise clusters with many workloads running can have specific requirements.
For links to examples for customization, refer to the Customize the Kubernetes Monitoring Helm chart.
Troubleshoot
Refer to Troubleshooting for any issues that occur after configuration.
Metrics management
To learn more about managing metrics, refer to Metrics management and control.