GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie Zabbix unter CentOS 7

Zabbix ist eine voll funktionsfähige Open-Source-Überwachungssoftware. Zabbix sammelt Metriken von Ihren Netzwerkgeräten, Systemen und Anwendungen und stellt sicher, dass sie betriebsbereit sind. Im Falle von Problemen sendet Zabbix Benachrichtigungen über verschiedene Methoden.

Zabbix kann für agentenbasierte und agentenlose Überwachung bereitgestellt werden. Der Zabbix-Agent hat einen geringen Platzbedarf und kann auf verschiedenen Plattformen ausgeführt werden, darunter Linux, UNIX, macOS und Windows.

In diesem Tutorial wird erläutert, wie Sie die neueste Version von Zabbix 4.0 auf einem CentOS 7-Server mit MariaDB als Datenbank-Back-End installieren und konfigurieren. Wir zeigen Ihnen auch, wie Sie den Zabbix-Agenten auf einem Remote-Host installieren und den Host zum Zabbix-Server hinzufügen.

Voraussetzungen #

Sie müssen als Benutzer mit sudo-Zugriff angemeldet sein, um Pakete installieren zu können.

Mysql-Datenbank erstellen #

Zabbix unterstützt MySQL/MariaDB und PostgreSQL als Datenbankserver. In diesem Tutorial verwenden wir MariaDB als Datenbank-Back-End.

Wenn Sie MariaDB nicht auf Ihrem CentOS-Server installiert haben, können Sie es installieren, indem Sie diesen Anweisungen folgen.

Melden Sie sich bei der MySQL-Shell an, indem Sie den folgenden Befehl eingeben:

sudo mysql

Führen Sie in der MySQL-Shell den folgenden SQL-Befehl aus, um eine neue Datenbank zu erstellen:

CREATE DATABASE zabbix CHARACTER SET utf8 collate utf8_bin;

Erstellen Sie als Nächstes ein MySQL-Benutzerkonto und gewähren Sie Zugriff auf die Datenbank:

GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Stellen Sie sicher, dass Sie change-with-strong-password ändern mit einem starken Passwort.

Wenn Sie fertig sind, verlassen Sie die MySQL-Konsole, indem Sie Folgendes eingeben:

EXIT;

Installieren von Zabbix auf CentOS #

Zum Zeitpunkt des Schreibens dieses Artikels ist die neueste stabile Version von Zabbix Version 4.0. Die in CentOS-Repositorys verfügbaren Zabbix-Pakete sind veraltet, daher verwenden wir das offizielle Zabbix-Repository.

1. Zabbix installieren #

Laden Sie das neueste Zabbix-Repository-RPM-Paket mit dem folgenden wget-Befehl herunter:

wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm

Fügen Sie nach dem Herunterladen der Datei das Zabbix-Repository zu Ihrem CentOS 7-System hinzu, indem Sie Folgendes eingeben:

sudo yum localinstall zabbix-release-4.0-1.el7.noarch.rpm

Installieren Sie den Zabbix-Server, das Web-Frontend mit MySQL-Datenbankunterstützung und die Zabbix-Agentenpakete:

sudo yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent

Wenn Apache und PHP noch nicht auf Ihrem Server installiert sind, werden sie mit dem obigen Befehl installiert.

2. Konfigurieren von PHP für das Zabbix-Frontend #

Während der Installation wird eine Apache-Konfigurationsdatei erstellt, die alle erforderlichen Apache- und PHP-Einstellungen enthält. Sie müssen nur eine kleine Änderung vornehmen und die entsprechende Zeitzone einstellen.

Öffnen Sie die Konfigurationsdatei, kommentieren Sie die Zeitzonenzeile aus und ändern Sie sie in Ihre Zeitzone. Die vollständige Liste der von PHP unterstützten Zeitzonen finden Sie hier.

/etc/httpd/conf.d/zabbix.conf
...
    <IfModule mod_php5.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value max_input_vars 10000
        php_value always_populate_raw_post_data -1
        php_value date.timezone Europe/Riga
    </IfModule>
...

Speichern Sie anschließend die Konfigurationsdatei und starten Sie den Apache-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart httpd

3. Konfigurieren der MySQL-Datenbank für Zabbix-Server #

Das Zabbix-Installationspaket stellt eine Dump-Datei bereit, die ein anfängliches Schema und Daten für den Zabbix-Server mit MySQL enthält.

Importieren Sie die MySQL-Dump-Datei, indem Sie Folgendes ausführen:

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

Wenn Sie dazu aufgefordert werden, geben Sie das zuvor erstellte Benutzerkennwort ein. Bei Erfolg erfolgt keine Ausgabe.

Öffnen Sie als Nächstes die Zabbix-Konfigurationsdatei in Ihrem Editor:

sudo nano /etc/zabbix/zabbix_server.conf

Suchen Sie nach dem folgenden Abschnitt, kommentieren Sie das DBPassword aus Direktive und fügen Sie das Datenbankpasswort hinzu.

/etc/zabbix/zabbix_server.conf
...
### Option: DBPassword
#       Database password.
#       Comment this line if no password is used.
#
# Mandatory: no
# Default:
DBPassword=change-with-strong-password
...

Speichern und schließen Sie die Datei.

Starten Sie den Zabbix-Server und die Agentendienste neu und ermöglichen Sie ihnen, beim Systemstart zu starten:

sudo systemctl restart zabbix-server zabbix-agentsudo systemctl enable zabbix-server zabbix-agent

Überprüfen Sie den Status des Zabbix-Servers:

sudo systemctl status zabbix-server

Die Ausgabe sollte active (running) anzeigen :

● zabbix-server.service - Zabbix Server
   Loaded: loaded (/usr/lib/systemd/system/zabbix-server.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2018-12-30 21:18:01 UTC; 51s ago
 Main PID: 5558 (zabbix_server)
   CGroup: /system.slice/zabbix-server.service
   ...

Installieren und Konfigurieren des Zabbix-Frontends #

Die Zabbix-Webschnittstelle ist in PHP geschrieben und ermöglicht es uns, den Server zu konfigurieren, gesammelte Daten anzuzeigen und Hosts hinzuzufügen, die wir überwachen möchten.

Bevor Sie das Webinterface verwenden können, müssen wir es installieren.

Öffnen Sie Ihren bevorzugten Browser und geben Sie den Domänennamen oder die öffentliche IP-Adresse Ihres Servers ein, gefolgt von /zabbix :

http(s)://your_domain_or_ip_address/zabbix

Auf dem ersten Bildschirm erhalten Sie eine Willkommensnachricht. Klicken Sie auf Next step um fortzufahren.

Als Nächstes sehen Sie die folgende Informationsseite, auf der alle PHP-Voraussetzungen aufgeführt sind, die zum Ausführen des Zabbix-Frontends erforderlich sind. Alle Werte in dieser Tabelle sollten OK sein , scrollen Sie nach unten, um zu überprüfen, ob alles richtig eingerichtet ist. Klicken Sie nach der Bestätigung auf Next step um fortzufahren.

Auf dem nächsten Bildschirm fordert Sie der Einrichtungsassistent auf, Ihre Datenbankverbindungsdaten einzugeben. Geben Sie die MySQL-Benutzer- und Datenbankdetails ein, die Sie zuvor erstellt haben.

Die Eingabe eines Namens für den Server ist optional. Geben Sie es ein, wenn Sie mehr als einen Zabbix-Überwachungsserver haben. Falls vorhanden, wird es in der Menüleiste und den Seitentiteln angezeigt.

Klicken Sie auf Next step um fortzufahren.

Auf dem nächsten Bildschirm wird Ihnen die Zusammenfassung vor der Installation angezeigt.

Klicken Sie auf Next step und sobald die Installation abgeschlossen ist, werden Sie zu einer Seite weitergeleitet, die Sie darüber informiert, dass die Zabbix-Webschnittstelle installiert wurde. Um auf Ihre Zabbix-Anmeldeseite zuzugreifen, klicken Sie auf Finish Schaltfläche.

Der Standardbenutzer ist „Admin“ und das Passwort „zabbix“. Geben Sie den Benutzernamen und das Passwort ein und klicken Sie auf Log in Schaltfläche.

Sobald Sie sich angemeldet haben, werden Sie zum Zabbix-Administrations-Dashboard weitergeleitet.

Von hier aus können Sie damit beginnen, Ihre Zabbix-Installation anzupassen und neue Hosts hinzuzufügen. Ihr erster Schritt sollte darin bestehen, das aktuelle Passwort zu ändern. Navigieren Sie dazu zur Benutzerprofilseite, indem Sie auf das Profilsymbol in der oberen Navigationsleiste klicken.

Hinzufügen eines neuen Hosts zu Zabbix-Server #

Das Verfahren zum Hinzufügen eines neuen Hosts zur Überwachung zum Zabbix-Server umfasst zwei Schritte.

Zuerst müssen Sie den Zabbix-Agenten auf dem Remote-Host installieren und dann den Host über die Webschnittstelle zum Zabbix-Server hinzufügen.

Installieren des Zabbix-Agenten #

Dieses Tutorial geht davon aus, dass der Hostcomputer auch CentOS 7 verwendet.

Führen Sie wie bei der Installation des Zabbix-Servers die folgenden Befehle aus, um das Zabbix-Repository zu aktivieren:

wget https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpmsudo yum localinstall zabbix-release-4.0-1.el7.noarch.rpm

Installieren Sie das Zabbix-Agentenpaket:

sudo yum install zabbix-agent

Zabbix unterstützt zwei Methoden für die Verschlüsselung der Server-Client-Kommunikation, Preshared Key (PSK) und zertifikatbasierte Verschlüsselung. In diesem Tutorial verwenden wir die Pre-Shared Keys (PSK)-Methode, um die Verbindung zwischen dem Server und dem Agenten zu sichern.

Verwenden Sie den folgenden Befehl, um einen vorinstallierten Schlüssel zu generieren und in einer Datei zu speichern:

openssl rand -hex 32 | sudo tee /etc/zabbix/zabbix_agentd.psk

Der PSK-Schlüssel sieht etwa so aus:

fc3077ed3db8589ec920ac98a7ddea96aca205eb63bbd29c66ae91743a7ecbb6

Öffnen Sie die Konfigurationsdatei des Zabbix-Agenten:

sudo nano /etc/zabbix/zabbix_agentd.conf

Suchen Sie nach dem Server IP-Adresse und ändern Sie sie vom Standardwert in die IP Ihres Zabbix-Servers:

/etc/zabbix/zabbix_agentd.conf
...
### Option: Server
#       List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#       Incoming connections will be accepted only from the hosts listed here.
#       If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally
#       and '::/0' will allow any IPv4 or IPv6 address.
#       '0.0.0.0/0' can be used to allow any IPv4 address.
#       Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=127.0.0.1
...

Suchen Sie als Nächstes TSLConnect Option, kommentieren Sie sie aus und setzen Sie sie auf psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSConnect
#       How the agent should connect to server or proxy. Used for active checks.
#       Only one value can be specified:
#               unencrypted - connect without encryption
#               psk         - connect using TLS and a pre-shared key
#               cert        - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSConnect=psk
...

Suchen Sie TLSAccept Option, kommentieren Sie sie aus und setzen Sie sie auf psk :

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSAccept
#       What incoming connections to accept.
#       Multiple values can be specified, separated by comma:
#               unencrypted - accept connections without encryption
#               psk         - accept connections secured with TLS and a pre-shared key
#               cert        - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
TLSAccept=psk
...

Suchen Sie als Nächstes die TLSPSKIdentity Option, kommentieren Sie sie aus und setzen Sie sie auf PSK 001 Der Wert muss eine eindeutige Zeichenfolge sein:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKIdentity
#       Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKIdentity=PSK 001
...

Suchen Sie schließlich die TLSPSKFile Option, kommentieren Sie sie aus und stellen Sie sie so ein, dass sie auf den zuvor erstellten vorinstallierten Schlüssel verweist:

/etc/zabbix/zabbix_agentd.conf
...
### Option: TLSPSKFile
#       Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
TLSPSKFile=/etc/zabbix/zabbix_agentd.psk 
...

Wenn Sie fertig sind, speichern und schließen Sie die Datei.

Starten Sie den Zabbix-Agentendienst und stellen Sie ihn so ein, dass er beim Booten gestartet wird mit:

sudo systemctl start zabbix-agentsudo systemctl enable zabbix-agent

Als Nächstes müssen Sie eine Firewallregel hinzufügen, die Datenverkehr von Ihrem Zabbix-Server auf TCP-Port 10050 zulässt .

Angenommen, Sie verwenden FirewallD zum Verwalten Ihrer Firewall und Sie möchten den Zugriff von 192.168.121.70 zulassen IP-Adresse würden Sie den folgenden Befehl ausführen:

sudo firewall-cmd --new-zone=zabbix --permanentsudo firewall-cmd --zone=special --add-source=192.168.121.70/32sudo firewall-cmd --zone=special --add-port=10050/tcp

Neuen Host # einrichten

Nachdem der Agent auf dem Remote-Host, den Sie überwachen möchten, installiert und konfiguriert ist, besteht der nächste Schritt darin, den Host auf dem Zabbix-Server zu registrieren.

Melden Sie sich als Admin-Benutzer bei der Zabbix Server-Weboberfläche an:

http(s)://your_domain_or_ip_address/zabbix

Sobald Sie sich darin befinden, klicken Sie in der oberen Navigationsleiste auf Configuration , und dann Hosts

Klicken Sie anschließend auf den blauen Create host Schaltfläche in der oberen rechten Ecke des Bildschirms und die Host-Konfigurationsseite wird geöffnet:

Geben Sie den Hostnamen und die IP-Adresse des Remote-Host-Computers ein, den Sie überwachen möchten. Fügen Sie den Host zu einer oder mehreren Gruppen hinzu, indem Sie die Gruppe aus der Liste auswählen, oder geben Sie einen nicht vorhandenen Gruppennamen ein, um einen neuen zu erstellen. Die Linux Servers Gruppe ist eine gute Wahl.

Wenn Sie fertig sind, klicken Sie auf Templates Tab. Wählen Sie das Template OS Linux aus und klicken Sie auf Add Link zum Hinzufügen der Vorlage zum Host.

Klicken Sie anschließend auf Encryption Tab. Wählen Sie PSK für beide Connections to host und Connections from host .

Legen Sie die PSK identity fest Wert auf PSK 001 , der Wert von TLSPSKIdentity Option des Zabbix-Agenten, den Sie im vorherigen Schritt konfiguriert haben.

Im PSK value file fügen Sie den Schlüssel hinzu, den Sie für den Zabbix-Agenten generiert haben, der in /etc/zabbix/zabbix_agentd.psk gespeichert ist Datei.

Um den Host hinzuzufügen, klicken Sie abschließend auf die blaue button hinzufügen .


Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren und konfigurieren Sie Zabbix unter Ubuntu 18.04

  3. So installieren und konfigurieren Sie Redis unter CentOS 7

  4. So installieren und konfigurieren Sie GitLab unter CentOS 7

  5. So installieren und konfigurieren Sie CyberPanel unter CentOS 8

So installieren und konfigurieren Sie ISPConfig CP unter CentOS 7

So installieren und konfigurieren Sie ownCloud auf CentOS 7

So installieren und konfigurieren Sie Samba unter CentOS 8

So installieren und konfigurieren Sie Fail2ban unter CentOS 8

So installieren und konfigurieren Sie HAproxy unter CentOS 6

So installieren Sie Zabbix unter CentOS 6