• By Jose
juju deploy grafana-k8s
Show information
You will need Juju 2.9 to be able to run this command. Learn how to upgrade to Juju 2.9.
Channel Version Revision Published Base
latest/stable 1 1 03 May 2021
latest/edge 9 9 13 Sep 2021



Data visualization and observability with Grafana Read more

Relevant links

Discuss this charm

Share your thoughts on this charm with the community on discourse.

Join the discussion

Grafana Charm


This is the Grafana charm for Kubernetes using the Operator Framework.


Initial setup (ensure microk8s is a clean slate with microk8s.reset or a fresh install with snap install microk8s --classic:

microk8s.enable dns storage registry dashboard
juju bootstrap microk8s mk8s
juju add-model lma
juju create-storage-pool operator-storage kubernetes storage-class=microk8s-hostpath

Deploy Grafana on its own:

git clone
cd grafana-operator
charmcraft build
juju deploy ./grafana.charm --resource grafana-image=grafana/grafana:7.2.1

View the dashboard in a browser:

  1. juju status to check the IP of the of the running Grafana application
  2. Navigate to http://IP_ADDRESS:3000
  3. Log in with the default credentials username=admin, password=admin.

Add Prometheus as a datasource:

git clone
cd prometheus-operator
charmcraft build
juju deploy ./prometheus.charm
juju add-relation grafana prometheus
watch -c juju status --color  # wait for things to settle down

Once the deployed charm and relation settles, you should be able to see Prometheus data propagating to the Grafana dashboard.

High Availability Grafana

This charm is written to support a high-availability Grafana cluster, but a database relation is required (MySQL or Postgresql).

If HA is not required, there is no need to add a database relation.

NOTE: HA should not be considered for production use.



Create and activate a virtualenv, and install the development requirements,

virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements-dev.txt


Just run run_tests: