Der grundsätzliche Aufbau beginnt mit einem Linux-System, auf dem die Datenbank und das Grafana betrieben wird. Ich nutze in meinem Fall ein Debian in der aktuellen Version 9.6. Grafana ist aktuell in der Version 5.4.3 verfügbar, InfluxDB steht aktuell bei Version 1.7.3. Dies ist wichtig, da bei einer Erneuerung der Version und einem Nachbau der Installation mit dieser Anleitung sehr wahrscheinlich schon wieder neuere Versionen verfügbar sind, die dann auch genutzt werden sollten.
Die Grundinstallation von Debian
Nach einer initialen Grundinstallation von Debian beginne ich mit der Installation von ein paar optionalen Paketen und einem Check, ob alle Pakete und das System selbst aktuell sind.
apt update && apt install mc htop nano -y && apt upgrade -y && apt dist-upgrade -y
Benötigte Pakete für Grafana
Nun beginnt der Download und die Installation von den benötigten Paketen für Grafana. Dies ist notwendig, ansonsten wird es bei der Installation zu einer Fehlermeldung kommen.
apt-get install -y adduser libfontconfig
Download der Pakete
Nun können wir die Software-Pakete herunterladen. Ich mache dies im Ordner /tmp, da die Pakete nicht dauerhaft benötigt werden.
cd /tmp
wget https://dl.influxdata.com/influxdb/releases/influxdb_1.7.3_amd64.deb
wget https://dl.grafana.com/oss/release/grafana_5.4.3_amd64.deb
Achtet genau an dieser Stelle darauf, dass ihr die Versionen vorher prüft und die Version ggf. anpasst. Eine Übersicht über die aktuellen Versionen gibt es auf den folgenden Seiten:
Installation der Pakete
Nach dem Download beginnt die Installation der Pakete, dies ist recht schnell gemacht.
dpkg -i influxdb_1.7.3_amd64.deb
dpkg -i grafana_5.4.3_amd64.deb
Nun müssen wir noch dafür sorgen, dass Grafana automatisch nach jedem Neustart startet. Dies können wir mittels systemctl-Befehl erreichen:
/bin/systemctl enable grafana-server
/bin/systemctl start grafana-server
Die Anpassung von InfluxDB
Anpassung der Config-Datei
Nachdem wir nun die Installation abgeschlossen haben, können wir nun eine Konfiguration von InfluxDB machen. Dazu passen wir die Datei influxdb.conf an, die unter /etc/influxdb/ zu finden ist.
nano /etc/influxdb/influxdb.conf
Die Datei ist recht lang, was wir an dieser Stelle anpassen müssen ist der Bereich http.
Hier aktivieren wir, wie im Screenshot sichtbar, die beiden Optionen enabled und bind-address.
Nach der Anpassung müssen wir den Dienst einmal durchstarten, damit die Änderungen greifen.
service influxd restart
Anlegen von einem neuen Benutzer
Da die Datenbank nicht von jedermann benutzbar sein soll, erstellen wir nun einen neuen Benutzer für InfluxDB und weisen dem Konto ein Kennwort zu. Dazu wechseln wir mit dem Befehl
influx
in die Datenbank-Shell und legen dort einen neuen Benutzer an.
CREATE USER "username" WITH PASSWORD 'password' WITH ALL PRIVILEGES
CREATE DATABASE "Datenbankname"
Ist dies geschehen, verlassen wir die Datenbank-Shell mit einem beherzten exit. Nun haben wir eine Influx-Datenbank sowie einen Benutzer, der mit dieser Datenbank arbeiten kann.
Weitere Hilfen und Infos zu InfluxDB findet man auf den Hilfe-Seiten von dem Projekt selbst, hier z.B. die Beschreibung, wie man eine Datenbank anlegt und welche optionalen Parameter es noch so alles gibt:
docs.influxdata.com: Database management using InfluxQL
Verbindung per Shell mit der Datenbank
Wenn wir uns nun mit Influx verbinden möchten, müssen wir beim Aufruf den Benutzernamen und das Kennwort mit angeben, da wir sonst einen Authentifizierungsfehler bekommen.
influx -username "username" -password "password"
Fazit
Wir sind nun fertig mit der Erstellung der Datenbank, im nächsten Teil schauen wir uns dann an, wie wir Grafana einstellen, damit diese gerade erstellte Datenbank genutzt werden kann.
Hallo Jan,
sehr schöner Artikel. Dafür schon einmal vielen Dank!
Nach der Anpassung der influxdb.conf ist noch ein Neustart des Dienstes nötig, damit die Änderungen wirksam sind:
service influxd restart
Erst dann ist die Verbindung mit dem Befehl influx möglich.
Bei den Datenbank Kommandos hat es glaube ich die Formatierung der Befehle etwas zerrissen.
Beste Grüße,
Frank
Hallo Frank,
danke für den Hinweis, da hat das Plugin ein bisschen zu viel interpretiert, ist korrigiert. Den Hinweis mit dem Neustart vom Dienst habe ich ebenfalls aufgenommen 🙂
Besten Gruß zurück
Jan
Pingback:Exchange Server Dashboards: Grafana, InfluxDB, PowerShell, PRTG und Telegraf - Frankys Web