Skip to main content

Kubernetes Installation

This guide covers deploying Grafana on Kubernetes using Kubernetes manifests or Helm charts.

Before You Begin

Ensure you have:
  • A Kubernetes cluster (local or cloud-based)
    • Local: minikube, kind, or Docker Desktop
    • Cloud: GKE, EKS, or AKS
  • kubectl CLI configured to access your cluster
  • For Helm installation: Helm 3.x installed

System Requirements

Minimum hardware requirements per pod:
  • CPU: 250m (0.25 cores)
  • Memory: 750 MiB
  • Disk: 1 GB persistent storage
Ensure port 3000 is accessible in your network environment.

Installation with Kubernetes Manifests

Deploy Grafana using native Kubernetes manifests for full control over the deployment.

Installation with Helm

Helm simplifies Kubernetes deployments using packaged charts.

Helm Configuration

Enable Persistent Storage

Create or download the values.yaml file from the Grafana Helm Charts repository. Edit values.yaml to enable persistence:
Apply the configuration:

Install Plugins

Add plugins to values.yaml:
Apply the configuration:

Custom Admin Password

Set a custom admin password in values.yaml:
Apply the configuration:

Deploy Grafana Enterprise

To deploy Grafana Enterprise on Kubernetes:

Update Deployment

Perform rolling updates to change the Grafana version:
Change the image version:
Verify the rollout:

Rollback Deployment

View rollout history:
Rollback to a previous revision:

Troubleshooting

View logs

For multi-container pods:

Enable debug logging

Create a ConfigMap with custom configuration:

Cleanup

Remove the Grafana deployment:
For Helm installations:
Delete the namespace:

Next Steps

  • Configure data sources using provisioning
  • Set up persistent storage for production
  • Configure high availability with multiple replicas
  • Integrate with ingress controllers for external access