Customize the Kubernetes Monitoring Helm chart
After you complete the easy deployment process in Kubernetes Monitoring, you can further customize your configuration using the Helm chart. For example, you may want to collect more data, add more destinations, or need guidance on authentication settings.
The examples in the Kubernetes Monitoring Helm chart are complete examples designed to help you correctly alter your configuration by editing the values.yaml file. The following categories provide a means to find the example you need for customization.
After you make any customizations in values.yaml, redeploy the Helm chart to apply your changes.
Authentication
Use the following examples to configure authentication.
Example | Description |
---|---|
Bearer token | User a bearer token for a Prometheus, Loki, or OTLP destination. |
Embedded secret | Embed the secret data directly into the destination configuration. |
External secret | Use pre-existing secrets to authenticate to external services. |
Oauth2 | Use OAuth2 for authentication. |
Sigv4 | Configure a Prometheus destination using the AWS Signature Version 4 authentication method. |
Data collection
Alloy
Gather metrics from Grafana Alloy.
Application data
The Application Observability feature encompasses receiving data via various receivers, processing that data, and delivering it to the specified destinations. This example shows the settings to collect telemetry data from an application.
Grafana
Gather metrics and logs from Grafana.
Grafana Loki
Gather metrics and logs from Grafana Loki.
Kubernetes infrastructure data
Example | Description |
---|---|
cert-manager | Gather metrics from cert-manager. |
Cluster events | Gather Kubernetes Cluster events from the Kubernetes API server, and deliver them to a logs destination. |
Cluster metrics | Gather metrics about the Kubernetes Cluster and deliver them to a metrics destination. |
Cluster and control plane metrics | Gather metrics about the Kubernetes Cluster that include the control plane components, and deliver them to a metrics destination. |
etcd | Gather metrics from etcd. |
Node logs | Gather logs from the Nodes in your Kubernetes Cluster. This is useful when you create your own Kubernetes Cluster with kubeadm , because the kubelet runs as a systemd service on Linux. |
Pod logs | Gather logs from the Pods in your Kubernetes Cluster. |
Pods and Services | Kubernetes Pods or Services are automatically discovered and scraped by the collector. |
PodMonitors, ServiceMonitors, and Probes | Enable annotation-based autodiscovery using Prometheus-style annotations to discover and gather metrics from PodMonitors, ServiceMonitors, and Probes in your Kubernetes Cluster. |
Profiles | Gather profiles from your Kubernetes Cluster, and deliver them to Pyroscope. |
MySQL
Gather metrics and logs from MySQL.
Destinations and proxies
Specify single or multiple destinations, whether a local service deployed on the same cluster, or a remote SaaS service. Use proxy URLs and TLS settings to send data to external services.
Example | Description |
---|---|
Loki | Send logs using the loki protocol to a logs destination. |
OTLP gateway | Send all your telemetry data to a single destination using OTLP destination. |
OTLP or OTLPHTTP | Send metrics, logs, or traces using the OTLP protocol to an OTLP destination. |
Proxies for external services | Use proxy URLs and TLS settings to send data to external services. |
Prometheus | Send metrics using the remote write protocol to a metrics destination. |
Pyroscope | Send metrics using the pyroscope protocol to a profiles destination. |
Discovery
Add scrape targets with auto discovery and labeling using Extra discovery rules and labels. You can refine what services are discovered and control the target’s label.
Instrumentation for applications
Automatically instrument your applications for telemetry collection.
Example | Description |
---|---|
Metrics | Deploy Grafana Beyla to automatically instrument your application for metrics collection. |
Metrics and traces | Deploy Grafana Beyla to automatically instrument your application for metrics collection, and generate traces for your application. |
Platforms
Customize your platform to work correctly with Kubernetes Monitoring.
Example | Description |
---|---|
Azure AKS | Enable Kubernetes Monitoring to work correctly with Azure AKS Clusters. |
EKS Fargate | Gather Pod logs on an EKS Fargate Cluster so that Kubernetes Monitoring works correctly. |
GKE Autopilot | Enable Kubernetes Monitoring to work correctly on GKE Autopilot Clusters. |
OpenShift | Enable Kubernetes Monitoring to work correctly on OpenShift Clusters. |
Processing and labeling
During the processing phase, you can enable additional processing for telemetry data, refine the metrics you want to collect, and relabel or add labels.
Example | Description |
---|---|
Additional labels | Relabel or add labels to metrics, logs, environments, and so on. |
Additional processing | Enable additional processing for logs and metrics. |
Metrics tuning | Allow greater or fewer metrics to be sent to a metrics destination by using a rule to exclude or include metrics. |
Private image registry
To support environments that are air gapped or should be excluded from using public image registries, override the container image registries for every subchart and use a private image registry.
Remote configuration
Enable Grafana Alloy to fetch and load the configuration from a remote endpoint.
Scaling and reliability
Enhance scaling and reliability where needed.
Example | Description |
---|---|
Alloy auto scaling | Enable an Alloy instance to scale up and down based on its CPU and memory utilization. |
Collector storage | Enable metric scraping to use a Write-Ahead Log (WAL) to store metrics in case of a scrape failure. Enable log gathering to use a volume to store log file positions. This provides a starting point for reading logs after a restart. |