So Installieren Sie Zabbix mit Nginx unter Ubuntu Linux

Dieses Tutorial zeigt Ihnen alle Schritte, die zur Installation von Zabbix 4 mit Nginx und PHP-FPM unter Ubuntu Linux erforderlich sind.

Dieses Tutorial wurde auf Ubuntu 18.04 getestet.

1. Konfigurieren Sie Datum und Uhrzeit mit NTP

Es ist sehr wichtig, dass Sie Ihr System mit dem richtigen Datum und der richtigen Uhrzeit halten.

Stellen Sie die richtige Zeitzone ein.

# dpkg-reconfigure tzdata

Installieren Sie das Ntpdate-Paket und stellen Sie das richtige Datum und die richtige Uhrzeit ein.

# apt-get update
# apt-get install ntpdate
# ntpdate pool.ntp.br

Deaktivieren Sie den Ubuntu-Standard-NTP-Client.

Installieren Sie den NTP-Dienst, um das Datum und die Uhrzeit des Computers nach einem Neustart zu aktualisieren.

# timedatectl set-ntp 0
# apt-get install ntp

Vergewissern Sie sich, dass auf Ihrem Computer das richtige Datum und die richtige Uhrzeit eingestellt sind.

# date

2. Installieren Sie MySQL unter Ubuntu Linux

Zabbix benötigt ein Datenbanksystem, um seine gesamte Konfiguration zu speichern.

Verwenden Sie den Ubuntu APT-Befehl, um den MySQL-Server zu installieren.

# apt-get update
# apt-get install mysql-server mysql-client

Verwenden Sie den folgenden Befehl, um auf die MySQL-Servicekonsole zuzugreifen.

# mysql -u root -p

Auf der MySQL-Konsole müssen Sie die folgenden Aufgaben ausführen:

• Erstellen Sie eine Datenbank mit dem Namen zabbix.
• Erstellen Sie ein MySQL-Benutzerkonto mit dem Namen zabbix.
• Geben Sie dem zabbix-Benutzer die vollständige Kontrolle über die zabbix-Datenbank.

CREATE DATABASE zabbix CHARACTER SET UTF8 COLLATE UTF8_BIN;
CREATE USER 'zabbix'@'%' IDENTIFIED BY 'kamisama123';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%';
quit;

Laden Sie das Zabbix-Installationspaket herunter, um die Datenbankvorlagen abzurufen.

# mkdir /downloads
# cd /downloads
# wget https://ufpr.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz

Extrahieren Sie das Zabbix-Installationspaket.

Importieren Sie die Zabbix-Datenbankvorlagen in die MySQL-Datenbank.

Wenn Sie dazu aufgefordert werden, müssen Sie das MySQL-Kennwort für den Zabbix-Benutzer eingeben.

# tar -zxvf zabbix-4.0.3.tar.gz
# cd zabbix-4.0.3/database/mysql/
# mysql -u zabbix -p zabbix < schema.sql
# mysql -u zabbix -p zabbix < images.sql
# mysql -u zabbix -p zabbix < data.sql

Die Installation der Zabbix-Datenbank wurde abgeschlossen.

3. Installieren Sie Nginx unter Ubuntu Linux

Verwenden Sie den Ubuntu APT-Befehl, um den Nginx-Server zu installieren.

# apt-get update
# apt-get install nginx

Bearbeiten Sie die Konfigurationsdatei nginx.conf.

Fügen Sie dem HTTP-Abschnitt client_max_body_size hinzu.

Konfigurieren Sie die maximale Uploadgröße auf 32 Megabyte.

# vi /etc/nginx/nginx.conf

Hier ist die Datei mit unserer Konfiguration.

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
}
http {
client_max_body_size 32M;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}

Starten Sie den Nginx-Webserver manuell neu.

# service nginx restart
# service nginx status

Überprüfen Sie den Nginx-Servicestatus.

● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2018-12-29 04:29:22 UTC; 1h 17min ago
Docs: man:nginx(8)
Process: 2233 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status
Process: 2221 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exite
Main PID: 2238 (nginx)
Tasks: 2 (limit: 1152)
CGroup: /system.slice/nginx.service
├─2238 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─2239 nginx: worker process

Der Nginx-Webserver wurde erfolgreich installiert.

4. Fügen Sie Nginx die PHP-Unterstützung Hinzu

Nginx benötigt ein externes Programm, um die PHP-Unterstützung hinzuzufügen.

Verwenden Sie den Ubuntu APT-Befehl, um die erforderlichen PHP-Pakete zu installieren.

# apt-get update
# apt-get install php7.2-fpm

Verwenden Sie den folgenden Befehl, um die erforderlichen PHP-Module zu installieren.

# apt-get install php7.2-mysql php7.2-mbstring php7.2-xml
# apt-get install php7.2-gd php7.2-curl php7.2-bcmath php7.2-ldap

Suchen Sie den Ort der PHP-Konfigurationsdatei auf Ihrem System.

Bearbeiten Sie die Konfigurationsdatei php.ini.

# updatedb
# locate php.ini
# vi /etc/php/7.2/fpm/php.ini

Ihre PHP-Version stimmt möglicherweise nicht mit unserer überein.

Der Speicherort Ihrer PHP-Konfigurationsdatei stimmt möglicherweise nicht mit unserem überein.

Hier ist die Datei mit unserer Konfiguration.

max_execution_time = 300
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 32M
max_input_time = 300
date.timezone = America/Sao_Paulo

Bearbeiten Sie die Nginx-Standard-Website-Konfigurationsdatei.

# vi /etc/nginx/sites-available/default

Hier ist die Originaldatei vor unserer Konfiguration.

server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}

Hier ist die neue Datei mit unserer Konfiguration.

server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.php index.html index.htm;
server_name _;
location / {
try_files $uri $uri/ =404;
}
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
}
}

Überprüfen Sie, ob Ihre Nginx-Konfigurationsdatei keinen Fehler enthält.

# nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Starten Sie den PHP-Dienst neu.
Starten Sie den Nginx-Dienst neu.

# service php7.2-fpm restart
# service nginx restart

Die PHP-Konfiguration des Nginx-Servers wurde abgeschlossen.

5. Installieren Sie Zabbix 4 unter Ubuntu Linux

Nachdem Sie die Konfiguration von MySQL und Nginx abgeschlossen haben, können Sie die Zabbix-Installation starten.

Erstellen Sie das erforderliche Benutzerkonto für den Zabbix-Dienst.

# groupadd zabbix
# useradd -g zabbix -s /bin/bash zabbix

Verwenden Sie den Ubuntu APT-Befehl, um die erforderlichen Pakete zu installieren.

# apt-get install build-essential libmysqlclient-dev libssl-dev libsnmp-dev libevent-dev
# apt-get install libopenipmi-dev libcurl4-openssl-dev libxml2-dev libssh2-1-dev libpcre3-dev
# apt-get install libldap2-dev libiksemel-dev libcurl4-openssl-dev libgnutls28-dev

Greifen Sie auf das Verzeichnis zu, in das das Zabbix-Installationspaket heruntergeladen wurde.

Kompilieren und installieren Sie die Zabbix-Serveranwendung.

# cd /downloads/zabbix-4.0.3/
# ./configure --enable-server --enable-agent --with-mysql --with-openssl --with-net-snmp --with-openipmi --with-libcurl --with-libxml2 --with-ssh2 --with-ldap
# make
# make install

Suchen Sie nach dem Speicherort der Zabbix-Server-Konfigurationsdatei auf Ihrem System.

Bearbeiten Sie die Konfigurationsdatei zabbix_server.conf.

# updatedb
# locate zabbix_server.conf
# vi /usr/local/etc/zabbix_server.conf

Hier ist die Originaldatei vor unserer Konfiguration.

LogFile=/tmp/zabbix_server.log
DBName=zabbix
DBUser=zabbix
Timeout=4
LogSlowQueries=3000

Hier ist die neue Datei mit unserer Konfiguration.

LogFile=/tmp/zabbix_server.log
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=kamisama123
Timeout=4
LogSlowQueries=3000

Starten Sie den Zabbix-Server mit dem folgenden Befehl.

# /usr/local/sbin/zabbix_server

Starten Sie die Zabbix-Agentenanwendung mit dem folgenden Befehl.

# /usr/local/sbin/zabbix_agentd

Wahlweise! Das Zabbix-Installationspaket bietet Service-Startskripts.

Kopieren Sie das Zabbix-Startskript.

# cd /downloads/zabbix-4.0.3/
# cp misc/init.d/debian/* /etc/init.d/

Sie können jetzt die folgenden Befehle verwenden, um den Zabbix-Serverdienst zu starten.

# /etc/init.d/zabbix-server start

Mit den folgenden Befehlen können Sie jetzt den Zabbix-Serverdienst stoppen.

# /etc/init.d/zabbix-server stop

Verschieben Sie die Zabbix-Frontend-Dateien in Ihr Nginx-Stammverzeichnis.

Geben Sie dem Benutzer www-data die vollständige Kontrolle über das Zabbix-Verzeichnis und seine Dateien.

# cd /downloads/zabbix-4.0.3/frontends
# mv php /var/www/html/zabbix
# chown www-data.www-data /var/www/html/zabbix/* -R

Starten Sie den Nginx-Dienst neu.

# service nginx stop
# service nginx start

6. Konfigurieren Sie Zabbix unter Ubuntu Linux

Öffnen Sie Ihren Browser und geben Sie die IP-Adresse Ihres Webservers plus / zabbix ein.

In unserem Beispiel wurde die folgende URL in den Browser eingegeben:

• http://200.200.200.200//zabbix

Der Zabbix-Installationsassistent wird angezeigt.

Zabbix Installation

Überprüfen Sie, ob alle Zabbix-Anforderungen erfolgreich erfüllt wurden.

Zabbix install Nginx requirements

Geben Sie die MySQL-Anmeldeinformationen ein, die für die Verbindung zur Zabbix-Datenbank erforderlich sind

Zabbix database connetion

Klicken Sie auf die Schaltfläche Weiter.

Zabbix Agent Connection

Überprüfen Sie die Zabbix-Installationszusammenfassung.

Zabbis Installation Summary

Klicken Sie auf die Schaltfläche Fertig stellen, um den Zabbix-Anmeldebildschirm aufzurufen.

Zabbix installation finished

Geben Sie im Zabbix-Anmeldebildschirm die folgenden Informationen ein.

• Standardbenutzername von Zabbix: Admin
• Zabbix-Standardkennwort: zabbix

Zabbix Login

Nach einem erfolgreichen Login wird das Zabbix-Dashboard angezeigt.

Zabbix Dashboard

Herzlichen Glückwunsch, Zabbix ist auf Ihrem System installiert.

7. Überwachen Sie den Zabbix-Server

Der Zabbix-Server muss sich selbst überwachen können.

Rufen Sie im Zabbix-Dashboard das Menü Konfiguration auf und wählen Sie die Option Host aus.

Zabbix menu

Wählen Sie oben rechts auf dem Bildschirm die Option Zabbix-Server aus

Zabbix Server Group

Suchen Sie den Host namens Zabbix-Server und klicken Sie auf das Wort DISABLED.

Dadurch kann der Zabbix-Server sich selbst überwachen.

Zabbix server agent disabled

Der Status des Zabbix-Servers wechselt von DEAKTIVIERT zu AKTIVIERT.

Zabbix server agent enabled

Der Zabbix-Server überwacht sich nun selbst.