2 Einfache Prüfung

Übersicht

Einfache Prüfungen werden normalerweise für entfernte agentenlose Prüfungen von Diensten verwendet.

Beachten Sie, dass der Zabbix Agent für einfache Prüfungen nicht benötigt wird. Der Zabbix Server/Proxy ist für die Verarbeitung einfacher Prüfungen verantwortlich (Herstellen externer Verbindungen usw.).

Beispiele für die Verwendung einfacher Prüfungen:

net.tcp.service[ftp,,155]
net.tcp.service[http]
net.tcp.service.perf[http,,8080]
net.udp.service.perf[ntp]

Die Felder Benutzername und Passwort (auf 255 Zeichen begrenzt) in der Konfiguration eines einfachen Prüfungs-Datenpunkts werden für VMware-Überwachungsdatenpunkte verwendet; andernfalls werden sie ignoriert.

Unterstützte Prüfungen

Die Datenpunkt-Schlüssel werden ohne optionale Parameter und zusätzliche Informationen aufgeführt. Klicken Sie auf den Datenpunkt-Schlüssel, um die vollständigen Details anzuzeigen.

Siehe auch VMware-Monitoring-Datenpunkt-Schlüssel.

Datenpunkt-Schlüssel Beschreibung
icmpping Die Erreichbarkeit des Hosts per ICMP-Ping.
icmppingloss Der Prozentsatz der verlorenen Pakete.
icmppingretry Die Erreichbarkeit des Hosts per ICMP-Ping mit Wiederholungsversuchen.
icmppingsec Die Antwortzeit des ICMP-Pings.
net.tcp.service Prüft, ob ein Dienst ausgeführt wird und TCP-Verbindungen annimmt.
net.tcp.service.perf Prüft die Leistung eines TCP-Dienstes.
net.udp.service Prüft, ob ein Dienst ausgeführt wird und auf UDP-Anfragen antwortet.
net.udp.service.perf Prüft die Leistung eines UDP-Dienstes.

Details des Datenpunktschlüssels

Parameter ohne spitze Klammern sind obligatorisch. Parameter, die mit spitzen Klammern < > gekennzeichnet sind, sind optional.

icmpping[<target>,<packets>,<interval>,<size>,<timeout>,<options>]


Die Erreichbarkeit des Hosts per ICMP-Ping.
Rückgabewert: 0 - ICMP-Ping fehlgeschlagen; 1 - ICMP-Ping erfolgreich.

Parameter:

  • target - die IP-Adresse oder der DNS-Name des Hosts;
  • packets - die Anzahl der Pakete;
  • interval - die Zeit zwischen aufeinanderfolgenden Paketen in Millisekunden;
  • size - die Paketgröße in Bytes;
  • timeout - die Zeitüberschreitung in Millisekunden;
  • options - wird verwendet, um Weiterleitungen zuzulassen: Wenn leer (Standardwert), werden umgeleitete Antworten als Host ausgefallen behandelt; wenn auf allow_redirect gesetzt, werden umgeleitete Antworten als Host erreichbar behandelt.

Siehe auch die Tabelle der Standardwerte.

Kommentar:

  • Wenn mindestens eines der durch den Parameter packets definierten Pakete zurückgegeben wird, gibt der Datenpunkt 1 zurück. Wenn keines der Pakete zurückgegeben wird, gibt der Datenpunkt 0 zurück.

Beispiel:

icmpping[,4] #Wenn mindestens eines der vier Pakete zurückgegeben wird, gibt der Datenpunkt 1 zurück.
icmppingloss[<target>,<packets>,<interval>,<size>,<timeout>,<options>]


Der Prozentsatz verlorener Pakete.
Rückgabewert: Float.

Parameter:

  • target - die IP-Adresse oder der DNS-Name des Hosts;
  • packets - die Anzahl der Pakete;
  • interval - die Zeit zwischen aufeinanderfolgenden Paketen in Millisekunden;
  • size - die Paketgröße in Byte;
  • timeout - das Timeout in Millisekunden;
  • options - wird verwendet, um Umleitungen zuzulassen: wenn leer (Standardwert), werden umgeleitete Antworten so behandelt, als wäre der Ziel-Host nicht erreichbar; wenn auf allow_redirect gesetzt, werden umgeleitete Antworten so behandelt, als wäre der Ziel-Host erreichbar.

Siehe auch die Tabelle der Standardwerte.

icmppingretry[<target>,<retries>,<backoff>,<size>,<timeout>,<options>]


Die Erreichbarkeit des Hosts per ICMP-Ping mit Wiederholungsversuchen. Wenn das erste Paket erfolgreich ist, wird gestoppt; wenn das Paket fehlschlägt, wird der Versuch wiederholt, bis die im Parameter retries definierte maximale Anzahl von Versuchen erreicht ist. Dieser Datenpunkt ist nützlich, um die Anzahl der über das Netzwerk gesendeten Pakete zu reduzieren.
Rückgabewert: 0 - ICMP-Ping fehlgeschlagen; 1 - ICMP-Ping erfolgreich.

Parameter:

  • target - die IP-Adresse oder der DNS-Name des Hosts;
  • retries - die Anzahl der Versuche, ein Ziel per Ping zu erreichen, ohne den ersten Versuch mit einzubeziehen (0 oder größer; Standardwert 1);
  • backoff - der Wert, mit dem die Wartezeit bei jeder nachfolgenden Anfrage multipliziert wird (Bereich 1.0-5.0; Standardwert 1.0);
  • size - die Paketgröße in Byte;
  • timeout - das Timeout in Millisekunden;
  • options - wird verwendet, um Umleitungen zuzulassen: wenn leer (Standardwert), werden umgeleitete Antworten so behandelt, als sei der Ziel-Host nicht erreichbar; wenn auf allow_redirect gesetzt, werden umgeleitete Antworten so behandelt, als sei der Ziel-Host erreichbar.

Siehe auch die Tabelle der Standardwerte.

icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>,<options>]


Die Antwortzeit des ICMP-Pings (in Sekunden).
Rückgabewert: Float.

Parameter:

  • target - die IP-Adresse oder der DNS-Name des Hosts;
  • packets - die Anzahl der Pakete;
  • interval - die Zeit zwischen aufeinanderfolgenden Paketen in Millisekunden;
  • size - die Paketgröße in Byte;
  • timeout - das Timeout in Millisekunden;
  • mode - mögliche Werte: min, max oder avg (Standard);
  • options - wird verwendet, um Umleitungen zuzulassen: wenn leer (Standardwert), werden umgeleitete Antworten so behandelt, als wäre der Ziel-Host nicht erreichbar; wenn auf allow_redirect gesetzt, werden umgeleitete Antworten so behandelt, als wäre der Ziel-Host erreichbar.

Kommentare:

  • Pakete, die verloren gehen oder bei denen ein Timeout auftritt, werden bei der Berechnung nicht berücksichtigt;
  • Wenn der Host nicht verfügbar ist (Timeout erreicht), gibt der Datenpunkt 0 zurück;
  • Wenn der Rückgabewert kleiner als 0.0001 Sekunden ist, wird der Wert auf 0.0001 Sekunden gesetzt;
  • Siehe auch die Tabelle der Standardwerte.
net.tcp.service[service,<ip>,<port>]


Prüft, ob ein Dienst läuft und TCP-Verbindungen akzeptiert.
Rückgabewert: 0 - der Dienst ist nicht verfügbar; 1 - der Dienst läuft.

Parameter:

  • service - mögliche Werte: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (siehe Details);
  • ip - die IP-Adresse oder der DNS-Name (standardmäßig wird die Host-IP/der Host-DNS verwendet);
  • port - die Portnummer (standardmäßig wird die Standard-Portnummer des Dienstes verwendet).

Kommentare:

  • Beachten Sie, dass beim Dienst tcp die Angabe des Ports obligatorisch ist;
  • Diese Prüfungen können zu zusätzlichen Meldungen in den System-Daemon-Logdateien führen (SMTP- und SSH-Sitzungen werden in der Regel protokolliert);
  • Die Prüfung verschlüsselter Protokolle (wie IMAP auf Port 993 oder POP auf Port 995) wird derzeit nicht unterstützt. Als Behelfslösung verwenden Sie bitte für solche Prüfungen net.tcp.service[tcp,<ip>,port].

Beispiel:

net.tcp.service[ftp,,45] #Dieser Datenpunkt kann verwendet werden, um die Verfügbarkeit des FTP-Servers auf TCP-Port 45 zu testen.

Wenn SELinux im Enforcing-Modus läuft, können benutzerdefinierte einfache TCP/UDP-Prüfungen durch die Richtlinie blockiert werden. Um die neue ausgehende Verbindung zu überprüfen und zuzulassen, kontrollieren Sie die Audit-Ablehnungen mit grep denied /var/log/audit/audit.log

net.tcp.service.perf[service,<ip>,<port>]


Prüft die Performance eines TCP-Dienstes.
Rückgabewert: Float: 0.000000 - der Dienst ist nicht verfügbar; Sekunden - die Anzahl der Sekunden, die für die Verbindung mit dem Dienst benötigt wurden.

Parameter:

  • service - mögliche Werte: ssh, ldap, smtp, ftp, http, pop, nntp, imap, tcp, https, telnet (siehe Details);
  • ip - die IP-Adresse oder der DNS-Name (standardmäßig wird die IP/DNS des Hosts verwendet);
  • port - die Portnummer (standardmäßig wird die Standard-Portnummer des Dienstes verwendet).

Kommentare:

  • Beachten Sie, dass beim Dienst tcp die Angabe des Ports zwingend erforderlich ist;
  • Die Prüfung verschlüsselter Protokolle (wie IMAP auf Port 993 oder POP auf Port 995) wird derzeit nicht unterstützt. Als Workaround verwenden Sie bitte net.tcp.service[tcp,<ip>,port] für solche Prüfungen.

Beispiel:

net.tcp.service.perf[ssh] #Dieser Datenpunkt kann verwendet werden, um die Geschwindigkeit der ersten Antwort des SSH-Servers zu testen.
net.udp.service[service,<ip>,<port>]


Prüft, ob ein Dienst läuft und auf UDP-Anfragen antwortet.
Rückgabewert: 0 - der Dienst ist nicht verfügbar; 1 - der Dienst läuft.

Parameter:

  • service - mögliche Werte: ntp (siehe Details);
  • ip - die IP-Adresse oder der DNS-Name (standardmäßig wird die IP/DNS des Hosts verwendet);
  • port - die Portnummer (standardmäßig wird die Standard-Portnummer des Dienstes verwendet).

Beispiel:

net.udp.service[ntp,,45] #Dieser Datenpunkt kann verwendet werden, um die Verfügbarkeit des NTP-Dienstes auf UDP-Port 45 zu testen.
net.udp.service.perf[service,<ip>,<port>]


Prüft die Performance eines UDP-Dienstes.
Rückgabewert: Float: 0.000000 - der Dienst ist nicht verfügbar; Sekunden - die Anzahl der Sekunden, die auf eine Antwort des Dienstes gewartet wurde.

Parameter:

  • service - mögliche Werte: ntp (siehe Details);
  • ip - die IP-Adresse oder der DNS-Name (standardmäßig wird die Host-IP/der Host-DNS verwendet);
  • port - die Portnummer (standardmäßig wird die Standard-Portnummer des Dienstes verwendet).

Beispiel:

net.udp.service.perf[ntp] #Dieser Datenpunkt kann verwendet werden, um die Antwortzeit des NTP-Dienstes zu testen.

Für die Unterstützung von SourceIP in einfachen LDAP-Prüfungen (z. B. net.tcp.service[ldap]) ist OpenLDAP Version 2.6.1 oder höher erforderlich.

Timeout-Verarbeitung

Zabbix verarbeitet einen einfachen Check nicht länger als die im Formular Datenpunktkonfiguration definierten Timeout-Sekunden. Für VMware-Datenpunkte verarbeitet Zabbix einen einfachen Check nicht länger als die im Zabbix-Server- oder Proxy-Konfigurationsdatei definierten Timeout-Sekunden. Für icmpping*-Datenpunkte werden die Werte für Timeout und Wiederholungen direkt im Datenpunktschlüssel angegeben und nicht durch den globalen Parameter Timeout beeinflusst. Stellen Sie sicher, dass diese Werte im Datenpunktschlüssel entsprechend konfiguriert sind. Beachten Sie, dass für icmpping*-Datenpunkte ein fest codiertes maximales mögliches Timeout von 600 Sekunden gilt (seit Zabbix 7.4.6).

ICMP-Pings

Zabbix verwendet ein externes Hilfsprogramm fping, um ICMP-Pings (icmpping, icmppingloss, icmppingretry, icmppingsec) zu verarbeiten.

Installation

fping ist nicht in Zabbix enthalten und muss separat installiert werden:

  • Verschiedene Unix-basierte Plattformen haben das Paket fping in ihren Standard-Repositories, es ist jedoch nicht vorinstalliert. In diesem Fall können Sie den Paketmanager verwenden, um fping zu installieren.

  • Zabbix stellt fping-Pakete für RHEL und seine Derivate bereit. Bitte beachten Sie, dass diese Pakete ohne offiziellen Support bereitgestellt werden.

  • fping kann auch aus dem Quellcode kompiliert werden.

Konfiguration

Geben Sie den Speicherort von fping im Parameter FpingLocation der Konfigurationsdatei des Zabbix Server/Proxy an (oder im Parameter Fping6Location für die Verwendung von IPv6-Adressen).

fping sollte für den Benutzer ausführbar sein, unter dem der Zabbix Server/Proxy ausgeführt wird, und dieser Benutzer sollte über ausreichende Rechte verfügen.

Siehe auch: Bekannte Probleme zur Verarbeitung einfacher Prüfungen mit fping-Versionen unter 3.10.

Standardwerte

Standardwerte, Grenzwerte und Beschreibung der Werte für ICMP-Prüfparameter:

Parameter Einheit Beschreibung Flag von Fping Standardwerte gesetzt durch Zulässige Grenzwerte
durch Zabbix
fping Zabbix min max
packets Anzahl Anzahl der an ein Ziel gesendeten Anfragepakete -C 3 1 10000
interval Millisekunden Wartezeit zwischen aufeinanderfolgenden Paketen an ein einzelnes Ziel -p 1000 20 unbegrenzt
size Bytes Paketgröße in Bytes
56 Bytes auf x86, 68 Bytes auf x86_64
-b 56 oder 68 24 65507
timeout Millisekunden fping v3.x - Wartezeit nach dem Senden des letzten Pakets, beeinflusst durch das Flag -C
fping v4.x - individueller Timeout für jedes Paket
-t fping v3.x - 500
fping v4.x und neuer - vom Flag -p übernommen, jedoch nicht mehr als 2000
50 unbegrenzt
retries Anzahl Anzahl der Wiederholungen eines Ping-Versuchs auf ein Ziel, ohne den ersten Versuch mitzuzählen -r 3 1 0 unbegrenzt
backoff factor Anzahl Faktor, mit dem die Wartezeit bei jeder weiteren Anfrage multipliziert wird -B 1.5 1.0 1.0 5.0

Die Standardwerte können je nach Plattform und Version leicht abweichen.

Zusätzlich verwendet Zabbix die fping-Optionen -i interval ms (nicht mit dem oben in der Tabelle erwähnten Datenpunkt-Parameter interval verwechseln, der der fping-Option -p entspricht) und -S source IP address (oder -I in älteren fping-Versionen). Diese Optionen werden automatisch erkannt, indem Prüfungen mit verschiedenen Optionskombinationen ausgeführt werden. Zabbix versucht, den minimalen Wert in Millisekunden zu erkennen, den fping mit -i zulässt, indem 3 Werte ausprobiert werden: 0, 1 und 10. Der erste erfolgreiche Wert wird dann für nachfolgende ICMP-Prüfungen verwendet. Dieser Prozess wird von jedem ICMP pinger-Prozess einzeln durchgeführt.

Automatisch erkannte fping-Optionen werden jede Stunde verworfen und beim nächsten Versuch, eine ICMP-Prüfung durchzuführen, erneut erkannt. Setzen Sie DebugLevel>=4, um Details dieses Prozesses in der Protokolldatei des Server oder Proxy anzuzeigen.

Zabbix schreibt IP-Adressen, die mit einem der Schlüssel icmpping* geprüft werden sollen, in eine temporäre Datei, die dann an fping übergeben wird. Wenn Datenpunkte unterschiedliche Schlüsselparameter haben, werden nur diejenigen mit identischen Schlüsselparametern in eine einzelne Datei geschrieben. Alle IP-Adressen, die in dieselbe Datei geschrieben werden, werden von fping parallel geprüft, sodass der Zabbix-ICMP-pinger-Prozess unabhängig von der Anzahl der IP-Adressen in der Datei eine feste Zeitspanne benötigt.