Zabbix 6.0 (MariaDB und NGINX)

Vorwort

Für das Monitoring meiner Systeme habe ich mich für Zabbix entschieden.

In diesem Eintrag geht es um die Installation eines einfachen Zabbix Servers auf AlmaLinux 8.5.
Als Datenbank nutzen wir eine MariaDB. Als Webserver einen NGINX.

Installation MariaDB

Zum aktuellen Datum ist in den AlmaLinux 8.5 Repos eine MariaDB 10.3.28 als Standardmodul vorhanden.
Zabbix braucht allerdings eine 10.5. Hierfür müssen wir auf das passende Modul wechseln.
Die Installation erfolgt ganz einfach über yum

sudo yum module enable mariadb:10.5
sudo yum install mariadb-server

Jetzt können wir direkt die MariaDB starten

sudo systemctl enable --now mariadb.service

Danach müssen wir noch folgendes Program starten:

sudo mysql_secure_installation

Hier bekommen wir dann folgende Fragen beantworten:

Enter current password for root (enter for none):

Hier einfach ENTER drücken

Set root password? [Y/n]

Hier dann einmal Y eingeben und ein Passwort vergeben

Folgendes dann alles mit Y bestätigen

Remove anonymous users? [Y/n]
Disallow root login remotely? [Y/n]
Remove test database and access to it? [Y/n]
Reload privilege tables now? [Y/n]

Anlegen SQL Zabbix DB

Jetzt müssen wir noch eine Datenbank für unsere Zabbix installation anlegen.

Dafür müssen wir uns erstmal in der MySql shell anmelden.

mysql -u root -p

Hier dann das Kennwort, das wir vorhin vergeben haben eingeben.
Dann können wir auch gleich die Datenbank anlegen.
„DBNAME“ mit eurem Datenbanknamen ersetzen.

create database DBNAME character set utf8 collate utf8_bin;

Danach brauchen wir noch einen SQL Benutzer für Zabbix und können diesem auch gleich die Berechtigungen vergeben.
„meinpasswort“ mit eurem Wunschkennwort ersetzen.

create user zabbix@localhost identified by 'meinpasswort';
grant all privileges on DBNAME.* to zabbix@localhost;
FLUSH PRIVILEGES;
quit;

Installation von Zabbix

Hierfür müssen wir erstmal das Repo für Zabbix 5.4-1 Hinzufügen.
Ich empfehle hier das aktuelle Repo von der Offiziellen Zabbix Seite Rauszusuchen

sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
sudo dnf clean all 

Danach installieren wir einfach alle Pakete

sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent 

Jetzt müssen wir noch das Zabbix Schema in die DB importieren. „DBNAME“ wieder mit eurem Datenbanknamen ersetzen.

zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p DBNAME

Danach einmal das Kennwort für den Zabbix Benutzer eingeben.

PHP und Zabbix Konfiguration

Damit Zabbix mit der Datenbank sprechen kann, müssen wir die DB Zugangsdaten in der Konfigurationsdatei anpassen.

sudo nano /etc/zabbix/zabbix_server.conf 

Hier müssen entsprechend die folgenden Werte angepasst werden:

DBHostDie IP-Adresse oder der FQDN des Datenbank Hosts. Hier „localhost
DBNameDas ist der name der Datebank (in dieser anleitung „DBNAME„)
DBUserDer Benutzername des Datenbankbenutzers (hier „zabbix„)
DBPasswordDas Passwort für den Benutzer

NGINX Konfiguration

Wir müssen jetzt noch den „VHost“ für Zabbix aktivieren. Hierfür wurde automatisch eine Konfiguration im NGINX Ordner angelegt.

sudo nano /etc/nginx/conf.d/zabbix.conf

Hier müssen diese beiden Zeilen auskommentiert werden und wie folgend angepasst werden

listen 80 default_server;
server_name _; 

In der Datei /etc/nginx/nginx.conf habe ich folgendes auskommentiert. Ich möchte das auf diesem Server der Default Server das Zabbix ist.

    #server {
    #    listen       80 default_server;
    #    listen       [::]:80 default_server;
    #    server_name  _;
    #    root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
    #    include /etc/nginx/default.d/*.conf;

    #    location / {
    #    }

    #    error_page 404 /404.html;
    #        location = /40x.html {
    #    }

    #    error_page 500 502 503 504 /50x.html;
    #        location = /50x.html {
    #    }
    #}

Danach müssen wir einmal die Dienste starten und aktivieren.

sudo systemctl restart zabbix-server zabbix-agent nginx php-fpm
sudo systemctl enable zabbix-server zabbix-agent nginx php-fpm 

Danach müssen wir noch http und zabbix-agent durch die Firewall lassen

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=zabbix-agent --permanent
sudo firewall-cmd --reload

Danach können wir Zabbix über die IP-Adresse vom Server aufrufen.

Web Setup

Die erste Seite die wir sehen ist die Sprachauswahl. Ich installiere Zabbix hier in US Englisch

Danach wird einmal geprüft, ob die PHP Konfiguration passt.

Nun müssen wir einmal die Datenbankverbindung herstellen.
Hier bei „DBNAME“ den Namen der Datenbank angeben und die Zugangsdaten weiter unten.

Nun kann man Servername, Zeitzone und Design angeben

Danach landen wir auf der Loginseite vom Zabbix und Können uns mit dem Benutzername „Admin“ und dem Passwort „zabbix“ einloggen

Schreibe einen Kommentar

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