Configure Radix Node Dashboard on Grafana

Introduction

By default the Radix team have provided their own Prometheus server and Grafana Dashboard within the node build. However you may want to consolidate dashboards with other systems or services so the steps below provide a guide on how to import the Radix node metrics into your own monitoring server.

Pre-Reqs

Pre-Configure the Node Server

To export the metrics you will need to install Prometheus on the Node server. The easist way to do this is to install it via the Radixnode CLI. You can follow the instructions here.

Then open the firewall on the Node Server if you haven't already

sudo ufw allow proto tcp from <WebServer IP> to any port 8099

Configure your Monitoring server

On your Monitoring WebServer copy and paste the following into the existing yml file. From the Monitoring Build guide this was created at /etc/prometheus/prometheus.yml

/etc/prometheus/prometheus.yml
  - job_name: 'mynode'
    scheme: https
    basic_auth:
      username: "metrics"
      password: "<YOUR METRICS PASSWORD>"
    tls_config:
      insecure_skip_verify: true
    static_configs:
      - targets:
          - <NODE IP 1>
          - <NODE IP 2>

Save and close the file then restart the service

sudo systemctl daemon-reload
sudo systemctl restart prometheus

Import the Radix Node Runner Dashboard JSON

This can either be exported by running the radixnode monitoring setup CLI command and accessing the dashboard from http://<YOUR NODE IP>:3000/d/radix_node_dashboard/radix-node-dashboard?orgId=1&refresh=5s

then export the Dashboard JSON from there or ask one of the other node runners to export it for you.

Configure the Dashboard

Depending on what other infrastructure you are monitoring with Grafana you may need to specify the particular node IP for some of the panels.

Eg. you may need to edit the Status panel to focus on the node IP.

and that should be it.

You can now go ahead and add alerting for any of the panels eg. create a Telegram alert when the Node status is 'Down'.

Last updated