Grafana Setup
The following is a guide outlining the steps to setup Grafana Dashboard to visualize metric data for a Tangle node. If you do not have Tangle node setup yet, please review the Tangle Node Quickstart setup guide here.
In this guide we will configure the following modules to visualize metric data from a running Tangle node.
- Grafana is the visual dashboard tool that we access from the outside (through SSH tunnel to keep the node secure).
What are Grafana Dashboards?
A dashboard is a set of one or more panels organized and arranged into one or more rows. Grafana ships with a variety of panels making it easy to construct the right queries, and customize the visualization so that you can create the perfect dashboard for your need. Each panel can interact with data from any configured Grafana data source. To learn more about Grafana Dashboards, please visit the official docs site here (opens in a new tab).
Getting Started
Let's first start by downloading the latest releases of the above mentioned modules (Grafana).
This guide assumes the user has root access to the machine running the Tangle node, and following the below steps inside that machine. As well as, the user has already configured Prometheus on this machine.
1. Download Grafana
brew update
brew install grafana
2. Add Grafana repository to APT sources:
This guide assumes the user is installing and configuring Grafana for a linux machine. For Macos instructions please visit the offical docs here (opens in a new tab).
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
3. Refresh your APT cache to update your package lists:
sudo apt update
4. Next, make sure Grafana will be installed from the Grafana repository:
apt-cache policy grafana
The output of the previous command tells you the version of Grafana that you are about to install, and where you will retrieve the package from. Verify that the installation candidate at the top of the list will come from the official Grafana repository at https://packages.grafana.com/oss/deb
.
Output of apt-cache policy grafana
grafana:
Installed: (none)
Candidate: 6.3.3
Version table:
6.3.3 500
500 https://packages.grafana.com/oss/deb stable/main amd64 Packages
...
5. You can now proceed with the installation:
sudo apt install grafana
6. Install the Alert manager plugin for Grafana:
sudo grafana-cli plugins install camptocamp-prometheus-alertmanager-datasource
Service Setup
Grafana
The Grafana's service is automatically created during extraction of the deb package, you do not need to create it manually.
Launch a daemon reload to take the services into account in systemd:
sudo systemctl daemon-reload
Start the Grafana service:
sudo systemctl start grafana-server
And check that they are working fine, one by one:
systemctl status grafana-server
If everything is working adequately, activate the services!
sudo systemctl enable grafana-server
Run Grafana dashboard
Now we are going to setup the dashboard to visiualize the metrics we are capturing.
From the browser on your local machine, navigate to http://localhost:3000/login
. You should be greeted with
a login screen. You can login with the default credentials, admin/admin
. Be sure to update your password afterwards.
This guide assumes the user has configured Prometheus, AlertManager, and Loki as a data source.
Next, we need to add Prometheus as a data source.
- Open the Settings menu
- Select Data Sources
- Select Add Data Source
- Select Prometheus
- Input the URL field with http://localhost:9090 (opens in a new tab)
- Click Save & Test
Next, we need to add AlertManager as a data source.
- Open the Settings menu
- Select Data Sources
- Select Add Data Source
- Select AlertManager
- Input the URL field with http://localhost:9093 (opens in a new tab)
- Click Save & Test
Next, we need to add Loki as a data source.
- Open the Settings menu
- Select Data Sources
- Select Add Data Source
- Select Loki
- Input the URL field with http://localhost:3100 (opens in a new tab)
- Click Save & Test
We have our data sources connected, now its time to import the dashboard we want to use. You may create your own or import others, but the purposes of this guide we will use the Polkadot Essentials dashboard created by bLD nodes!
To import a dashboard:
- Select the + button
- Select Import
- Input the dashboard number, 13840
- Select Prometheus and AlertManager as data sources from the dropdown menu
- Click Load
In the dashboard selection, make sure you select:
- Chain Metrics: substrate
- Chain Instance Host: localhost:9615 to point the chain data scrapper
- Chain Process Name: the name of your node binary
Congratulations!! You have now configured Grafana to visualize the metrics we are capturing. You now have monitoring setup for your node!