Installatie Grafana, InfluxDB en Telegraf op een RPi (Raspbian)

In deze tutorial beschrijf ik hoe je Grafana, InfluxDB en Telegraf op een RPi (3b) installeert. Grafana word gebruikt om mooie grafieken van data (bijv. SNMP) te maken.

Update Raspbian

  1. sudo apt-get update
  2. sudo apt-get upgrade

Installatie InfluxDB

  1. curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add –
  2. echo “deb https://repos.influxdata.com/debian stretch stable” | sudo tee /etc/apt/sources.list.d/influxdb.list
  3. sudo apt update
  4. sudo apt install influxdb
  5. sudo systemctl enable influxdb
  6. sudo systemctl start influxdb
  7. influx (of sudo influx)
  8. CREATE DATABASE telegraf

Installatie Grafana

  1. sudo apt-get install -y adduser libfontconfig1
  2. wget https://dl.grafana.com/oss/release/grafana-rpi_6.7.2_armhf.deb
  3. sudo dpkg -i grafana-rpi_6.7.2_armhf.deb
  4. sudo systemctl enable grafana-server
  5. sudo systemctl start grafana-server
  6. Nu is Grafana te bereiken op het http://IP:3000 login is admin-admin

(installatie InfluxDB en Grafana bronnen)

Installatie Telegraf

  1. sudo apt install -y gnupg2 curl wget
  2. wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add –
  3. echo “deb https://repos.influxdata.com/debian buster stable” | sudo tee /etc/apt/sources.list.d/influxdb.list
  4. sudo apt update
  5. sudo apt -y install telegraf
  6. systemctl status telegraf (hiermee controleer je of Telegraf correct is geïnstalleerd en draait)

(installatie Telegraf bron)

Installatie SNMP

  1. sudo apt install snmp snmpd snmp-mibs-downloader
  2. Indien je gebruikt maakt van een andere string zoals public kan je het config bestand aanpassen met: sudo nano /etc/snmp/snmpd.conf
  3. Ga naar de regel waar je het volgende ziet:

    rocommunity public default -V systemonly
    rocommunity6 public default -V systemonly

    Pas dan dus hier public aan naar wat anders.
  4. Indien aangepast voer het volgende commando uit:
    sudo service snmpd restart
  5. Om te zien of je SNMP MIBS kunnen worden uitgelezen kun je dit testen d.m.v. het volgende commando (in mijn geval):
    snmpwalk -v 2c -c public 192.168.1.1

(installatie SNMP bron)

Configuratie Telegraf

  1. sudo nano /etc/telegraf/telegraf.conf
  2. Zoek naar [agent] (commando zoeken in nano: CTRL + W)
  3. Haal de hashtag weg bij interval en zet deze op 5s
  4. Zoek naar [[outputs.influxdb]]
  5. Haal de hashtag weg bij urls = [“http://127.0.0.1:8086”]
  6. Haal 3 regels lager de hashtag weg bij database = “telegraf”
    (pas telegraf aan indien er een andere database is gekozen bij de installatie van InfluxDB)
  7. Zoek nu naar de regel:  #   dump_zeros       = true
  8. Zet tussen deze regel en de regel # # Get standard NTP query metrics, requires ntpq executable de volgende tekst:
[[inputs.snmp]]
 agents = [ "192.168.1.1" ]
 version = 2
 community = "public"
 name = "snmp"

 [[inputs.snmp.field]]
    name = "hostname"
    oid = "RFC1213-MIB::sysName.0"
    is_tag = true

  [[inputs.snmp.table]]
    name = "snmp"
    inherit_tags = [ "hostname" ]
    oid = "IF-MIB::ifXTable"

    [[inputs.snmp.table.field]]
      name = "ifName"
      oid = "IF-MIB::ifName"
      is_tag = true

Tip

Als je van een ander apparaat de SNMP wil uitlezen, zet je uiteraard bij [[inputs.snmp]] een ander IP adres neer.

Dat ziet er dan zo ongeveer uit:

Vervolgens als laatste herstart je de telegraf service:
sudo service telegraf restart

Configuratie InfluxDB in Grafana

  1. Login op Grafana.
  2. Maak een datasource aan.
  3. Kies voor, of zoek naar InfluxDB.
  4. Vul bij URL http://localhost:8086 in.
  5. Onder InfluxDB Details vul je bij Database telegraf in.
  6. Klik onderaan op Save & Test.

Nu is alles gereed en kan er worden gestart met de configuratie van je dashboard.