Monitoring mit Zabbix – Teil 1

Auf dem Markt gibt es doch viele Lösungen und Programme , um Monitoring betreiben zu können. Zabbix unterscheidet doch etwas von allen anderen. Ich kann es vollständig auf dem Webinterface konfigurieren und ist aus meiner Sicht besonders benutzerfreundlich.

Vorbereitung

Für die Installation benötigen wir einen Server mit einer Linux Distro ( Ubuntu, Debian etc. ) . Das System kann sowohl physisch als auch virtuell sein. Ein Raspberry Pi eignet sich ebenfalls dafür. Aufpassen muss man hier nur, da das Zabbix recht viel schreibt. Das geht dann natürlich auf Kosten der SD Karte. Außerdem können wir das Zabbix auch in einem Docker Container installieren. Dazu gibt es vorgefertigte Images. Eine minimal Installation reicht erstmal vollkommen aus. Gute Erfahrungen habe ich mit folgenden Specs gemacht:

  • 2 Cores
  • 1GB RAM
  • 5GB freien Speicher
  • feste IP. ( entweder im LAN oder auf einem VPS)

Installation

Wir laden uns im Internet unsere benötigten Dateien herunter. Dazu gehen wir auf zabbix.com und wählen unsere Spezifikationen aus.

Ich verwende hier ein Debian 10 minimal mit MySQL Datenbank. Scrollen wir dann etwas nach unten, bekommen wir anschließend Code angezeigt, welchen wir (grundsätzlich) einfach kopieren können. Vorraussetzung dafür ist, dass wir als root user angemeldet sind oder mit sudo vor jedem Befehl arbeiten.

wget https://repo.zabbix.com/zabbix/5.2/debian/pool/main/z/zabbix-release/zabbix-release_5.2-1+debian10_all.deb
dpkg -i zabbix-release_5.2-1+debian10_all.deb
apt update
apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-agent mariadb-server

Damit haben wir schon mal alle notwendigen Pakete installiert. Nun müssen wir die Datenbank anlegen. Der Datenbankserver kann sowohl auf dem gleichen Host wie der Zabbix laufen, als auch auf einem eigenständigen Datenbank Server. In größeren Umgebunden ist dies meistens der Fall.

Datenbank anlegen

Um die Datenbank anzulegen, loggen wir uns mit dem root User auf dem SQL Server ein. Das passiert in diesem Fall ohne Passwort Abfrage. Mysql / Mariadb fragt bei der Anmeldung den aktuellen Benutzer ab. Enspricht er nicht root, ist ein Passwort notwendig.Wem das stört und wie gewohnt mit einem root Kennwort arbeiten möchte, kann dies deaktivieren. Aus Sicherheitsgründen erstellen wir sowohl eine Datenbank als auch ein eigene Benutzer , damit wir nicht mit root arbeiten müssen. Das ist auch gut so. Das root Passwort rauszugeben ist doch recht kritisch und sollte niemals gemacht werden! Damit hätte jeder, welcher das Passwort hätte zugriff auf alles. Alles Dick Grdruckte sollte angepasst werden. Dies wäre der USername und das Kennwort, was gut überlegt sein sollte.Den geänderten Usernamen sollte man im dritten Grant befehl ebenfalls noch anpassen.

mysql -uroot
create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'password';
grant all privileges on zabbix.* to zabbix@localhost;
quit;

Ist das fertig, können wir das sql Image auf unsere neu erstellte Datenbank importieren. Auch hier im Befehl Benutzername anpassen. In diesem Fall wird dies mit dem -u davor geschrieben. Das ist Absicht. Anschließend werden wir nach Passwort für unser SQL Server gefragt. Das kennen wir ja bereits.

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

Ist dieser Prozess Abgeschlossen, so finden wir uns als root wieder und bekommen keine weitere Rückmeldung. Als nächstes müssen wir Das erstellte SQL PAsswort und Benutzernamen hinterlegen. Das passiert unter

/etc/zabbix/zabbix_server.conf 

Danach scrollen wir herunter , bis wir DBPassword finden und passen es an. Die Raute davor entfernen.Ebenfalls passen wir den Usernamen an, sofern benötigt.

Wir speichern die Datei mit Strg + O und wechseln zurück in die Konsole mit Strg + X

Zum Schluss müssen wir nur noch alle benötigten Dienste starten

systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2

Zabbix Konfigurieren

Die Kosole wird nun nicht mehr benötigt und der Rest der Konfiguration findet im Web Browser statt.

Wir rufen unsere URL auf http://(IP-Adresse)/zabbix

Hier wählen wir die Sprache aus. Standardmäßig wird nur Englisch mit installiert und klicken “next step”

Hier werden uns noch einmal unsere Konfigurationen angezeigt. Dies kann auch mit ” next step” bestätigt werden.

Hier müssen wir noch einmal unsere SQL Daten eintragen, welche wir für die Zabbix Datenbank erstellt haben.

Hier können wir noch die Zeizone und Thema auswählen. Ist das bestätigt können wir noch einen Server Namen angeben und sind auch schon fertig. Wir werden anschließend auf die Login Seite weitergeleitet und können uns mit Admin / zabbix anmelden.

Wichtig: Diese Daten bitte nach der Anmeldung sofort ändern!

Nach Der Anmeldung gehen wir unter “Administration” / “Users” / und klicken unseren Benutzer an. Dort klicken wir unter Change Passwort und tragen unser neues Kennwort ein. Bei Bedarf können wir den Alias ebenfalls noch anpassen und abändern.

Anschließend nur noch unter “update” alles bestätigen und unser User ist fertig.

Wir haben nun Zabbix als Server vollständig installiert. Dies wäre Teil eins der Zabbix Serie, welche ich hier noch verfassen möchte. Der lokale Server wird automatisch mit eingerichtet. Hosts können hier sowohl mit Agent als auch über SSH überwacht werden. Wie das funktioniert, kommt noch.

Bis dahin – frohes Überwachen

Christian

Quelle Titelbild: https://pixabay.com/illustrations/pulse-trace-healthcare-medicine-163708/

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.