I’m working on a project that houses a bunch of Raspberry Pi computers in multiple remote locations. I wanted to be able to monitor the “Health” of the hardware in these remote locations. The metrics I was hoping to capture are Up-time, CPU temps, CPU usage, Memory and disk usage, etc.. as you may have noticed, I also have a love/hate relationship with Grafana, which made it the only choice for displaying these metrics in a user-friendly way.

Prerequisites:

1 x VM running Ubuntu 20.04 – I tested using a Cloud Compute server on VULTR, but you could use any VM that is on the same network as the RPi.

1 x RPi – As long as the RPi is on the same network it will be good to go. I tested over a VPN and it worked also.

Software Stack:

Influxdb – As usual the time series database.

Grafana – My favorite program for displaying this kind of data.

Telegraf – A plugin server agent for collecting and passing hardware metrics such as CPU, Temps, RAM, Storage, etc…

Install InfluxDb on VM/Host

Install Grafana on VM/Host

PLEASE READ: Now that our host/server has Grafana and InfluxDb Installed. We need to install Telegraf on the RPi that we wish to fetch metrics from. Don’t worry, we will come back and configure Grafana/InfluxDb Shortly.

Install Telegraf on Raspberry Pi (RPi)

Configuration – Telegraf on RPi

Telegraf.conf

PLEASE READ: Now that we are done configuring the Raspberry Pi, it’s back to the VM/Host to configure influx and grafana.

Configuration – InfluxDB on VM/Host

Configuration – Grafana

Navigate to your Grafana Install: http://<server-ip-address>:3000

Login: default login is admin:admin

Please change the username and password straight away.

The first step is to add the Influxdb data source:

Grafana Datasource

The second step is to import the Dashboard – We used this dashboard from the Grafana Library:

https://grafana.com/grafana/dashboards/10578/reviews Props to Jorge

To import the dashboard, navigate to DASHBOARD > MANAGE > IMPORT

Insert 10578 into the field and click ‘Load’

Grafana Import Dashboard

 

 

 

 

 

Make sure you then select the datasource to associate with the dashboard.

Grafana Import Dashboard

 

 

 

 

 

You should now be greeted with a Dashboard that is connected to the RPi.

Dashboard Complete

 

The rest is now up to you! Add multiple RPi’s. You can switch between them at the top of the Dashboard.

A big thanks to Dorian Machado and his article. Also Jorge de la Cruz and his Dashboard! These guys did the real heavy lifting.