InfluxDB installeren op een Raspberry Pi

In deze handleiding wordt uitgelegd hoe je InfluxDB moet installeren en configueren op een systeem waarop Rasbian geïnstalleerd is, zoals een Raspberry Pi. Vanuit o.a.  Domoticz kun je data pushen naar InfluxDB, waarna je met Grafana heel eenvoudig (maar wel uitgebreide) grafieken kunt maken. Ook wordt er in dit artikel uitgelegd hoe je authenticatie op de InfluxDB server aan kunt zetten voor een betere beveiliging. Tot slot komt de gaan we het hebben over het benaderen van de database via de command line (PuTTy).

InfluxDB is een zogenaamd ‘time series based’ database. Dit houdt in dat alle gegevens in de database een timestamp hebben. Hierdoor kun je de gegevens heel gemakkelijk gebruiken voor monitoring en grafieken. Denk aan de temperatuur in een kamer of de CPU van een computer. InfluxDB is de ideale database software i.c.m. Grafana. In Grafana kun je met enkele muisklikken de InfluxDB database koppelen.

Benodigdheden

InfluxDB installeren op een Raspberry Pi

Voordat we InfluxDB op de Raspberry Pi kunnen installeren moeten we er voor zorgen dat alle geïnstalleerde packages up-to-date zijn. Met onderstaande commando’s gaan we de geïnstalleerde packages upgraden:

sudo apt update
sudo apt upgrade

Nu alles up-to-date is kunnen we verder gaan met het installeren van InfluxDB op de Raspberry Pi. De volgende stap is het toevoegen van de InfluxDB repository key aan de Raspbery Pi. Doordat we de key toevoegen kan de package manager van Raspbian de repository zoeken en de geïnstalleerde packages controleren. De InfluxDB key voegen we toe door onderstaand commando in te geven:

wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add -

Nu de InfluxDB repository key geïnstalleerd is op de Raspberry Pi kunnen we de repository toevoegen aan de sources list. Hierbij is het van belang dat je weet of je Raspbian Stretch of Raspbian Buster gebruikt.

Raspbian Stretch:

echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Raspbian Buster:

echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.list

Nu the repository toegevoegd is moeten we de package list weer updaten:

sudo apt update

De voorbereidingen zijn klaar, nu kunnen we de InfluxDB software op de Raspberry Pi gaan installeren met onderstaand commando:

sudo apt install influxdb

InfluxDB is nu geinïnstalleerd op de Raspberry Pi. Het is belangrijk dat InfluxDB ook werkt na een reboot van de Raspberry Pi. Geef onderstaande commando’s in:

sudo systemctl unmask influxdb
sudo systemctl enable influxdb

De laatste stap is het starten van InfluxDB op de Raspberry Pi:

sudo systemctl start influxdb

 

InfluxDB gebruiken op een Raspberry Pi

Nu InfluxDB op de Raspberry Pi geïnstalleerd is kunnen kunnen we een database en gebruikers aan gaan maken. Geef onderstaande commando’s in. In dit voorbeeld heet de database ehoco, maar uiteraard kun je zelf een andere naam gebruiken.

influx
CREATE DATABASE ehoco
USE ehoco
exit

De database is nu aangemaakt en in gebruik. De volgende stap is om wat meer veiligheid in te bouwen door een gebruiker (admin) aan te maken. Uiteraard moet je vervangen door een zelfgekozen , sterk wachtwoord:

influx
CREATE USER admin WITH PASSWORD '' WITH ALL PRIVILEGES
exit

We gaan nu de InfluxDB config file aanpassen om de authenticatie in te schakelen

sudo nano /etc/influxdb/influxdb.conf

Ga nu opzoek naar de [HTTP] sectie en voeg onderstaande opties toe:

auth-enabled = true
pprof-enabled = true
pprof-auth-enabled = true
ping-auth-enabled = true

Sla de wijzigingen op met CTRL+X, dan Y, gevolgd door ENTER.

Hoewel de wijzigingen nu opgeslagen zijn, zijn ze nog niet actief. Geef onderstaand commando in op de wijziginen actief te maken:

sudo systemctl restart influxdb

Aangezien we de InfluxDB authenticatie ingeschakeld hebben moeten we vanaf nu de gebruikersnaam en wachtwoord ingeven, voordat we de InfluxDB CLI tool kunnen gebruiken. Je kunt het “auth” command hiervoor gebuiken of het commando zoals hieronder staat:

influx -username admin -password 

InfluxDB is nu helemaal geïnstalleerd en geconfigureerd! De volgende stap in het installeren van Grafana.

 

 

 

Waarden in de InfluxDB database zetten:

influx
INSERT temperature,location=living_room value=20
INSERT temperature,location=living_room value=10
INSERT temperature,location=bedroom value=34
INSERT temperature,location=bedroom value=23
exit

Waarden van de InfluxDB opvragen:

influx
SELECT * FROM temperature

Bovenstaand commando zal onderstaande output geven:

name: temperature
time location value
---- -------- -----
1574055049844513350 living_room 20
1574055196564029842 living_room 10
1574055196576516557 bedroom 34
1574055197188117724 bedroom 23

5 gedachten over “InfluxDB installeren op een Raspberry Pi

  • 9 februari 2020 om 21:30
    Permalink

    Goede uitleg alleen blijf ik haken op het volgende.

    Na het commando achter de raspberry promp > sudo systemctl start influxdb
    komt het volgende:
    InfluxDB gebruiken op een Raspberry Pi
    daarbij moet ik een aantal cmd ingeven om een database aan te maken.
    Als ik het eerste cmd ingeef “Influx” achter de raspberry promp slaat mijn rasp op slot en doet verder niets.

    Ergens moet ik nog iets anders doen denk ik.

    Beantwoorden
  • 9 februari 2020 om 21:39
    Permalink

    pi@raspberrypi:~ $
    pi@raspberrypi:~ $ sudo systemctl status influxdb
    ● influxdb.service – InfluxDB is an open-source, distributed, time series database
    Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enabled)
    Active: active (running) since Sun 2020-02-09 21:18:33 CET; 19min ago
    Docs: https://docs.influxdata.com/influxdb/
    Main PID: 6474 (influxd)
    Memory: 11.2M
    CGroup: /system.slice/influxdb.service
    └─6474 /usr/bin/influxd -config /etc/influxdb/influxdb.conf

    Het lijkt erop dat alles goed geïnstalleerd is en actief.

    Beantwoorden
  • 12 februari 2020 om 22:31
    Permalink

    Goed artikel weer.
    De installatie is nog niet uitgevoerd. Er zijn nog een hoop andere taken die eerst maar eens goed moeten werken.
    Wel een vraag, kun je ook opgeven waar je de InfluxDB wilt laten opslaan? Om de SD-kaart te ontlasten zou deze b.v. goed op een nas kunnen worden opgeslagen.

    Beantwoorden
    • 13 februari 2020 om 07:29
      Permalink

      Je kunt niet opgegeven waar je InfluxDB op wilt slaan, maar je kunt InfluxDB op vrijwel alle Linux, Windows of Max OS systeem installeren. Ik gebruik zelf een VPS van Contabo met Debian 10. De installatie is vrijwel hetzelfde. In het Grafana-configuratiebestand verwijs je vervolgens naar de server waar InfluxDB op draait.

      Beantwoorden
  • 18 februari 2020 om 08:19
    Permalink

    Debian Buster lite geinstaleerd volgens de handleiding hier. Influxdb volgens deze handleiding.
    Na 3x compleet opnieuw alles te hebben geïnstalleerd nog steeds het probleem dat ik de CLI niet kan aanspreken.
    Wat doe ik fout ??

    Beantwoorden

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *