Agent

Übersicht

Der Zabbix Agent wird auf einem Überwachungsziel bereitgestellt, um lokale Ressourcen und Anwendungen (Festplatten, Arbeitsspeicher, Prozessorstatistiken usw.) aktiv zu überwachen.

Der Agent erfasst Betriebsinformationen lokal und meldet die Daten zur weiteren Verarbeitung an den Zabbix Server. Bei Fehlern (z. B. wenn eine Festplatte voll läuft oder ein Dienstprozess abstürzt) kann der Zabbix Server die Administratoren des jeweiligen Computers, der den Fehler gemeldet hat, aktiv benachrichtigen.

Zabbix Agents sind aufgrund der Verwendung nativer Systemaufrufe zur Erfassung statistischer Informationen äußerst effizient.

Es ist möglich, mehrere Instanzen des Agents auf einem Host auszuführen.

Siehe auch:

Passive und aktive Prüfungen

Zabbix Agents können passive und aktive Prüfungen durchführen:

  • Passive Prüfungen - Der Zabbix Agent antwortet auf eine Anfrage vom Zabbix Server (oder Proxy). Zum Beispiel fordert der Server Daten an (z. B. CPU-Auslastung), und der Agent gibt das Ergebnis zurück.
  • Aktive Prüfungen - Der Zabbix Agent sammelt und sendet Daten, ohne auf eine Anfrage vom Zabbix Server (oder Proxy) zu warten. Zuerst ruft er eine Liste der Überwachungsdatenpunkte vom Server ab (CPU-Auslastung, verfügbarer Speicher usw.), sammelt dann die erforderlichen Daten und sendet regelmäßig neue Werte zurück.

Der Typ der Agent-Prüfung wird durch Auswahl des entsprechenden Überwachungs-Datenpunkttyps konfiguriert. Der Zabbix Agent verarbeitet Datenpunkte vom Typ Zabbix agent oder Zabbix agent (active).

Unterstützte Plattformen

Informationen zu unterstützten Plattformen finden Sie auf der Seite Anforderungen.

Agent auf Unix-ähnlichen Systemen

Der Zabbix Agent auf Unix-ähnlichen Systemen wird auf dem überwachten Host ausgeführt.

Installation

Der Zabbix Agent kann auf Linux-basierten Systemen mit einer der folgenden Methoden installiert werden:

  • Zabbix-Pakete – wählen Sie die Komponente Agent aus (nachdem Sie Ihre Zabbix-Version, die Betriebssystemdistribution und die Betriebssystemversion ausgewählt haben) und befolgen Sie die bereitgestellten Anweisungen;
  • Zabbix-Quellen – laden Sie die Quelldateien herunter und kompilieren Sie den Zabbix Agent, indem Sie die Quellen mit der Option --enable-agent konfigurieren.

Im Allgemeinen funktionieren 32-Bit-Zabbix-Agents auf 64-Bit-Systemen, können jedoch in einigen Fällen fehlschlagen.

Vorkompilierte Binärdateien des Zabbix Agents stehen für macOS, IBM AIX, FreeBSD, OpenBSD und Solaris zum Download bereit. Legacy-Binärdateien, die mit der aktuellen Zabbix-Server-/Proxy-Version kompatibel sind, stehen für NetBSD und HP-UX bereit. Informationen zur Installation und Ausführung des Agents auf IBM AIX finden Sie unter Zabbix Agent auf IBM AIX.

Wenn als Paket installiert

Der Zabbix Agent läuft als Daemon-Prozess. Der Agent kann mit folgendem Befehl gestartet werden:

systemctl start zabbix-agent

Dies funktioniert auf den meisten GNU/Linux-Systemen. Auf anderen Systemen müssen Sie möglicherweise Folgendes ausführen:

/etc/init.d/zabbix-agent start

Um den Zabbix Agent zu stoppen, neu zu starten oder seinen Status zu prüfen, verwenden Sie die folgenden Befehle:

systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
Bei Installation aus einem Binärarchiv

Entpacken Sie das Archiv und suchen Sie die Binärdatei zabbix_agentd sowie die Konfigurationsdatei zabbix_agentd.conf. Ihr Speicherort im Archiv hängt von der Plattform ab (zum Beispiel sbin/ und conf/ oder usr/sbin/ und etc/zabbix/). Führen Sie die Binärdatei direkt aus dem entpackten Verzeichnis aus und geben Sie die Konfigurationsdatei mit der Option -c an. Beispiel:

/opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/etc/zabbix/zabbix_agentd.conf

Auf UNIX-ähnlichen Systemen ist der Zabbix Agent dafür vorgesehen, als Benutzer ohne Root-Rechte ausgeführt zu werden. Wenn er als Root gestartet wird, wechselt er zum Benutzer zabbix (oder zu dem Benutzer, der durch den Parameter User angegeben ist), sofern in der Konfigurationsdatei nicht AllowRoot=1 festgelegt ist. Dieser Benutzer muss auf dem System vorhanden sein. Andernfalls wird der Agent nicht gestartet.

Unter IBM AIX kann der Agent auch mit dem System Resource Controller (SRC) ausgeführt und beim Systemstart gestartet werden. Weitere Informationen finden Sie unter Zabbix Agent unter IBM AIX.

Manuell starten

Sie können den Zabbix Agent starten, indem Sie die Binärdatei zabbix_agentd direkt ausführen, zum Beispiel:

zabbix_agentd

Dies funktioniert, wenn das Verzeichnis, das zabbix_agentd enthält, in PATH enthalten ist.

Agent auf Windows-Systemen

Der Zabbix Agent unter Windows wird als Windows-Dienst ausgeführt.

Installation

Der Zabbix Agent kann unter Windows mit einer der folgenden Methoden installiert werden:

Weitere Informationen zur Installation des Zabbix Agent (aus einem ZIP-Archiv) als Windows-Dienst finden Sie auf der Seite Zabbix Agent unter Microsoft Windows.

Optionen

Die folgenden Befehlszeilenparameter können mit dem Zabbix Agent verwendet werden:

Parameter Beschreibung
UNIX- und Windows-Agent
-c --config <config-file> Pfad zur Konfigurationsdatei.
Mit dieser Option können Sie eine andere als die standardmäßige Konfigurationsdatei angeben.
-f --foreground Zabbix Agent im Vordergrund ausführen (Standard: true).
-p --print Bekannte Datenpunkte ausgeben und beenden.
Beachten Sie, dass Sie die Konfigurationsdatei angeben müssen, wenn sie sich nicht am Standardspeicherort befindet, damit auch Ergebnisse von Benutzerparametern zurückgegeben werden.
-t --test <item key> Den angegebenen Datenpunkt testen und beenden.
Beachten Sie, dass Sie die Konfigurationsdatei angeben müssen, wenn sie sich nicht am Standardspeicherort befindet, damit auch Ergebnisse von Benutzerparametern zurückgegeben werden.
-T --test-config Konfigurationsdatei validieren und beenden.
-h --help Hilfeinformationen anzeigen.
-V --version Versionsnummer anzeigen.
Nur UNIX-Agent
-R --runtime-control <option> Administrative Funktionen ausführen. Siehe Laufzeitsteuerung.
Nur Windows-Agent
-m --multiple-agents Mehrere Agent-Instanzen verwenden (mit den Optionen -i, -d, -s, -x).
Um die Dienstnamen der Instanzen zu unterscheiden, enthält jeder Dienstname den Wert Hostname aus der angegebenen Konfigurationsdatei.
-S --startup-type <value> Den Starttyp des Zabbix-Windows-Agent-Dienstes festlegen. Zulässige Werte:
automatic - (Standard) den Dienst beim Start von Windows automatisch starten;
delayed - den Dienst erst starten, nachdem die automatisch gestarteten Dienste vollständig gestartet wurden (verfügbar unter Windows Server 2008/Vista und späteren Versionen);
manual - den Dienst manuell starten (durch einen Benutzer oder eine Anwendung);
disabled - den Dienst deaktivieren, sodass er nicht von einem Benutzer oder einer Anwendung gestartet werden kann.
Sie können diese Option zusammen mit der Option -i oder separat verwenden, um den Starttyp eines bereits installierten Dienstes zu ändern.
-i --install Den Zabbix-Windows-Agent als Dienst installieren.
-d --uninstall Den Zabbix-Windows-Agent-Dienst deinstallieren.
-s --start Den Zabbix-Windows-Agent-Dienst starten.
-x --stop Den Zabbix-Windows-Agent-Dienst stoppen.

Spezifische Beispiele für die Verwendung von Befehlszeilenparametern:

  • Alle integrierten Agent-Datenpunkte mit Werten ausgeben.
  • Einen Benutzerparameter mit dem im angegebenen Konfigurationsdatei definierten Schlüssel mysql.ping testen.
  • Einen Zabbix-Agent-Dienst für Windows unter Verwendung des Standardpfads zur Konfigurationsdatei installieren.
  • Einen Zabbix-Agent-Dienst [Hostname] für Windows unter Verwendung der Konfigurationsdatei im selben Ordner wie die ausführbare Agent-Datei installieren und den Dienstnamen durch Erweiterung um den Wert Hostname aus der Konfigurationsdatei eindeutig machen.
  • Den Starttyp eines installierten Zabbix-Agent-Dienstes für Windows unter Verwendung der Konfigurationsdatei im selben Ordner wie die ausführbare Agent-Datei ändern.
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
Laufzeitsteuerung

Mit den Optionen zur Laufzeitsteuerung können Sie die Protokollstufe von Agent-Prozessen ändern.

Option Beschreibung Ziel
log_level_increase[=<target>] Protokollstufe erhöhen.
Wenn kein Ziel angegeben ist, sind alle Prozesse betroffen.
Das Ziel kann wie folgt angegeben werden:
Prozesstyp – alle Prozesse des angegebenen Typs (z. B. listener)
Siehe alle Agent-Prozesstypen.
Prozesstyp,N – Prozesstyp und Nummer (z. B. listener,3)
PID – Prozesskennung (1 bis 65535). Für größere Werte geben Sie das Ziel als „Prozesstyp,N“ an.
log_level_decrease[=<target>] Protokollstufe verringern.
Wenn kein Ziel angegeben ist, sind alle Prozesse betroffen.
userparameter_reload Werte der Optionen UserParameter und Include aus der aktuellen Konfigurationsdatei neu laden.

Beispiele:

  • Protokollstufe aller Prozesse erhöhen
  • Protokollstufe des dritten Listener-Prozesses erhöhen
  • Protokollstufe des Prozesses mit der PID 1234 erhöhen
  • Protokollstufe aller Prozesse für aktive Prüfungen verringern
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"

Die Laufzeitsteuerung wird unter OpenBSD, NetBSD und Windows nicht unterstützt.

Agent-Prozesstypen

Die Agent-Prozesstypen sind wie folgt:

  • active checks - Prozess für die Durchführung aktiver Prüfungen;
  • collector - Prozess für die Datenerfassung;
  • listener - Prozess zum Abhören passiver Prüfungen.

Die Agent-Logdatei kann verwendet werden, um diese Prozesstypen zu beobachten.

Die Agent-Logdatei wird mit Lese- und Schreibberechtigungen nur für den Dateieigentümer erstellt. Zusätzlich ist die Datei für die Eigentümergruppe lesbar. Alle anderen Berechtigungen sind verweigert.

Benutzerprozess

Der Zabbix Agent unter UNIX ist dafür ausgelegt, als Benutzer ohne Root-Rechte ausgeführt zu werden.
Er wird als der Benutzer ausgeführt, unter dem er gestartet wurde.
Daher können Sie den Agent problemlos als beliebigen Benutzer ohne Root-Rechte ausführen.

Wenn Sie versuchen, ihn als „root“ auszuführen, wechselt er zu einem fest codierten Benutzer „zabbix“, der auf Ihrem System vorhanden sein muss.
Sie können den Agent nur als „root“ ausführen, wenn Sie den Parameter AllowRoot in der Agent-Konfigurationsdatei entsprechend ändern.

Konfigurationsdatei

Der Standardpfad zur Konfigurationsdatei hängt vom Betriebssystem und der Installationsmethode von Zabbix ab:

  • Unter UNIX lautet der Standardpfad:
    • Bei der Installation aus den Quellen: /usr/local/etc/zabbix_agentd.conf oder der Pfad, der durch die Kompilierungsvariablen --sysconfdir oder --prefix festgelegt wurde.
    • Bei der Installation aus Paketen und bei der Appliance: /etc/zabbix/zabbix_agentd.conf.
  • Unter Windows lautet der Standardpfad C:\Program Files\Zabbix Agent\zabbix_agentd.conf.

Wenn auf einem Host nur eine Instanz des Agent ausgeführt wird, kann sie die Standardkonfigurationsdatei oder eine in der Befehlszeile angegebene Konfigurationsdatei verwenden. Bei mehreren Instanzen muss jede Agent-Instanz über eine eigene Konfigurationsdatei verfügen (eine der Instanzen kann die Standardkonfigurationsdatei verwenden).

Weitere Informationen zur Konfiguration des Zabbix Agent finden Sie in den Optionen der Konfigurationsdatei für den Zabbix Agent unter Unix oder den Zabbix Agent unter Windows.

Locale

Beachten Sie, dass der Agent ein UTF-8-Locale benötigt, damit einige textbasierte Agent-Datenpunkte den erwarteten Inhalt zurückgeben können. Die meisten modernen Unix-ähnlichen Systeme verwenden standardmäßig ein UTF-8-Locale; es gibt jedoch einige Systeme, auf denen dies ausdrücklich festgelegt werden muss.

Exit-Code

Der Zabbix Agent gibt bei erfolgreichem Abschluss 0 und bei einem Fehler 1 zurück.