Skip to content

Smart Cities Grafana

All smart citites workloads will be monitored though our smart cities Grafana instance.

Access

Our Grafana instance is available here: Smart Cities Dashboard

Select sign in with VTTI at the bottom of the login page and login with your VTTI credentials.

TODO: Add auth docs for non-VTTI users.

Once logged in, you can explore Grafana's features:

  • Viewing Dashboards:
  • Click on the Dashboards icon in the left sidebar.
  • Select "Manage" to browse existing dashboards.
  • Click on a dashboard name to open it.

  • Exploring Data:

  • Use the Explore feature in the left sidebar to query data directly from a selected data source.

Dashboard Management

The Smart Cities Monitoring system uses the Grafana Operator to manage dashboards as Kubernetes resources. This allows dashboards to be defined as YAML manifests and deployed within the cluster.

We store all the GrafanaDashboard resources in our Smart Cities Kubernetes repo and use FluxCD to automatically apply them to the cluster.

Creating a Grafana Dashboard

To create a new Grafana dashboard, define a GrafanaDashboard Kubernetes resource. Below is an example:

apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard
metadata:
  name: node-exporter-full
spec:
  folderRef: host-systems
  instanceSelector:
    matchLabels:
      division: "sc"
  grafanaCom:
    id: 1860
    revision: 37

This GrafanaDashboard resource creates a Prometheus node exporter dashboard in the host-systems folder. It uses instanceSelector.matchLabels.division to select the Smart Cities grafana instance.

The above dashboard uses grafanaCom to obtain the dashboard definition from https://grafana.com/grafana/dashboards/ but dashboards can be configured as pure JSON, gzipped JSON, URL, and Jsonnet as well. More information on the configuration options and how to use them is available in the Grafana operator docs.