Telegraf
I stumbled upon a nice go project Telegraf which saves metrics from various sources to InfluxDB among others. I already had InfluxDB running so I gave it a shot.There are two servers, Babylon, the internet facing and an other one named Black Pearl. Latter one is the Kubernetes master for a Raspberry Pi cluster. Installing Telegraf is easy enough.
Installation instructions from packages: https://github.com/influxdata/telegraf
I want to install this on docker images too so I did it like this:
sudo mkdir -p /work cd /work sudo curl -LO https://dl.influxdata.com/telegraf/releases/telegraf-1.0.0-beta2_linux_armhf.tar.gz sudo tar xvzf telegraf-1.0.0-beta2_linux_armhf.tar.gz cd telegraf
sudo cp etc/logrotate.d/* /etc/logrotate.d/ sudo mkdir -p /var/log/telegraf sudo cp usr/bin/telegraf /usr/bin sudo bash -c "telegraf -sample-config -input-filter cpu:mem:net:swap:mongodb -output-filter influxdb > /etc/telegraf/telegraf.conf" sudo mkdir -p /etc/telegraf sudo bash -c "nohup telegraf > /var/log/telegraf/telegraf.log 2>1 &"
On the raspberry pi, I also had to change the config line a bit,
cpu:mem:net:swap:mongodb -> cpu:mem:net:swap
since there is no mongodb on that instance.
Grafana
Grafana is a tool for making graph dashboards. Installing Grafana is easy. Adding a datasource is done straight from the UI, no need for config handling.
Adding a graph to a dashboard is easy too.
The main tab adding the graph is Metrics. You add the query there.
With Telegraf it's easy to get all metrics to a database and from there on using Grafana is a breeze.
Telegraf: https://github.com/influxdata/telegraf
InfluxDB: https://influxdata.com/time-series-platform/influxdb/