Standardmäßig führt die Relianoid- Appliance einfache Integritätsprüfungen der Backend- oder Realserver durch. Manchmal reichen diese Prüfungen jedoch nicht aus, um festzustellen, ob die Backends ordnungsgemäß funktionieren. Daher führt die Appliance erweiterte Integritätsprüfungen über einen Daemon durch, der eine Reihe von Plugins namens Farmguardian verwendet.
Die Hauptaufgabe von Farmguardian besteht darin, als fortschrittliches Überwachungstool für die Backends von Anwendungen zu fungieren. Farmguardian liest die Farmkonfiguration aus, ermittelt die Backend-Liste und wird dabei von Plugins unterstützt, die den Zustand der Backends überprüfen. Farmguardian aktualisiert außerdem den Backend-Status für eine bestimmte Farm und legt fest, ob der Load Balancer den Datenverkehr an dieses Backend weiterleiten soll.
In diesem Abschnitt erfahren Sie, wie Sie die FarmGuardian -Prüfungen konfigurieren. Wir werden beide Registerkarten, die Registerkarte „Global“ und die Registerkarte „Farmen“ , genauer betrachten.
Globale Einstellungen #
Im globalen Bereich finden Sie Einstellungen für bestimmte FarmGuardian- Gesundheitsprüfungen, wie in der Abbildung unten dargestellt.
Die Felder dieses Tabs können nicht bearbeitet werden, wenn die Prüfung bereits im System vorinstalliert ist. Um eine Integritätsprüfung zu ändern, müssen Sie einen neuen FarmGuardian erstellen, die Option „FarmGuardian kopieren“ aktivieren und den neuen FarmGuardian bearbeiten.
NameDieser Identifikationsname der aktuellen Farm Guardian-Prüfung kann nicht bearbeitet werden.
Befehl. Legt den ausgeführten Befehl fest, um den Status des Backends zu überprüfen.
Timeout. Die längste Zeit, die das Backend benötigt, um eine Antwort zurückzusenden. Einheiten (Sekunden).
Intervall. Zeit zwischen den Integritätsprüfungsbatches für alle Backends. Beachten Sie, dass die Farmguardian-Prüfung in jedem Intervall angehalten und neu gestartet wird. Sie muss also hoch genug sein, damit alle Backends geprüft werden können (Timeout * Anzahl Backends +1).
BeschreibungDieses Feld enthält eine kurze Beschreibung der Farmguardian-Prüfung.
Verbindungen trennen. Wenn diese Option aktiviert ist, werden die aktuellen Verbindungen der erkannten ausgefallenen Backends gelöscht, wodurch eine sofortige Neuverbindung mit den verfügbaren Backends erzwungen wird. Wenn diese Option deaktiviert ist, werden die aktuellen Verbindungen gelöscht, ohne dass die Verbindung zu einem Client getrennt wird.
Aktivieren von Protokollen. Aktiviert oder deaktiviert die Protokolle jeder Farmguardian-Prüfung. Wenn die Protokolle deaktiviert sind, werden in den Protokolldateien nur die Änderungen am Backend-Status angezeigt.
Konfigurieren von Integritätsprüfungen #
Alle verfügbaren FarmGuardian- Plugins befinden sich im Verzeichnis /usr/local/zevenet/app/libexec/ innerhalb des Load Balancers.
Farmguardian verwendet Plugins, um erweiterte Integritätsprüfungen zu konfigurieren und so zu erkennen, ob ein bestimmter Server wie erwartet funktioniert. Dabei können benutzerdefinierte Optionen genutzt werden. Für jedes Protokoll, jeden Dienst und jede Anwendung stehen zahlreiche Integritätsprüfungen zur Verfügung. Die wichtigsten Plugins werden im Folgenden beschrieben.
check_ftp . Dieses Plugin testet FTP-Verbindungen mit dem angegebenen Host.
Verwendung: check_ftp -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_fping : Dieses Plugin verwendet den fping-Befehl, um den angegebenen Host für eine schnelle Überprüfung anzupingen.
Verwendung: check_fping -w Limit -c Limit [-b Größe] [-n Zahl] [-T Zahl] [-i Zahl]
check_http : Dieses Plugin testet den HTTP-Dienst auf dem angegebenen Host. Es kann unverschlüsselte (HTTP) und verschlüsselte (HTTPS) Protokolle testen, Weiterleitungen folgen, nach Zeichenketten und regulären Ausdrücken suchen, Verbindungszeiten überprüfen und Informationen zu Zertifikatsablaufzeiten, HTTP-Rückgabecodes usw. ausgeben.
Verwendung: check_http -H | -ICH [-u ] [-P ] [-J ] [-K ] [-w ] [-C ] [-T ] [-L] [-E] [-a Authentifizierung] [-b Proxy-Authentifizierung] [-f ] [-e ] [-d Zeichenfolge] [-s Zeichenfolge] [-l] [-r | -R ] [-P Zeichenfolge] [-m : ] [-4|-6] [-N] [-M ] [-A Zeichenfolge] [-k Zeichenfolge] [-S ] [--sni] [-C [, ]] [-T ] [-j Methode]
check_imap : Dieses Plugin testet IMAP-Verbindungen mit dem angegebenen Host.
Verwendung: check_imap -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_ldap : Dieses Plugin testet LDAP-Dienste. Es kann mit einer vorgegebenen Suche getestet werden.
Verwendung: check_ldap -H -B [-P ] [-A ] [-D ] [-P ] [-w ] [-C ] [-t Zeitüberschreitung] [-2|-3] [-4|-6]
check_ldaps : Dieses Plugin testet LDAPS-Dienste. Es kann mit einer vorgegebenen Suche getestet werden.
Verwendung: check_ldaps -H -B [-P ] [-A ] [-D ] [-P ] [-w ] [-C ] [-t Zeitüberschreitung] [-2|-3] [-4|-6]
check_mysql : Dieses Plugin testet Verbindungen zu einem MySQL-Server.
Verwendung: check_mysql [-d Datenbank] [-H Host] [-P Port] [-s Socket] [-u Benutzer] [-p Passwort] [-S] [-l] [-a Zertifikat] [-k Schlüssel] [-C CA-Zertifikat] [-D CA-Verzeichnis] [-L Chiffren] [-f Optfile] [-g Gruppe]
check_mysql_query : Dieses Plugin prüft das Ergebnis einer Abfrage anhand von Schwellenwerten.
Verwendung: check_mysql_query -q SQL_query [-w warn] [-c crit] [-H host] [-P port] [-s socket] [-d database] [-u user] [-p password] [-f optfile] [-g group]
check_pgsql : Testet, ob eine PostgreSQL-Datenbank Verbindungen akzeptiert.
Verwendung: check_pgsql [-H ] [-P ] [-C ] [-w ] [-T ] [-D ] [-l ] [-P ] [-Q ] [-C ] [-W ]
check_pop : Dieses Plugin testet POP-Verbindungen mit dem angegebenen Host.
Verwendung: check_pop -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_radius : Testet, ob ein RADIUS-Server Verbindungen akzeptiert.
Verwendung: check_radius -H Host -F Konfigurationsdatei -u Benutzername -p Passwort [-P Port] [-t Timeout] [-r Wiederholungen] [-e Erwartet] [-n NAS-ID] [-N NAS-IP-Adresse]
check_simap : Dieses Plugin testet sichere IMAP-Verbindungen mit dem angegebenen Host.
Verwendung: check_simap -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_smtp : Dieses Plugin versucht, eine SMTP-Verbindung zum Host herzustellen.
Verwendung: check_smtp -H Host [-p Port] [-4|-6] [-e erwarten] [-C Befehl] [-R Antwort] [-f von Adresse] [-A Authtyp -U Authuser -P Authpass] [-w warnen] [-c crit] [-t Timeout] [-q] [-F fqdn] [-S] [-D warnen Tage Zertifikat läuft ab[,crit Tage Zertifikat läuft ab]] [-v]
check_snmp : Überprüft den Status von Remote-Rechnern und erhält Systeminformationen via SNMP.
Verwendung: check_snmp -H -Ö [-w Warnbereich] [-c Kritbereich] [-C Community] [-s Zeichenfolge] [-r regulärer Ausdruck] [-R regexi] [-t Zeitüberschreitung] [-e Wiederholungen] [-l Bezeichnung] [-u Einheiten] [-p Portnummer] [-d Trennzeichen] [-D Ausgabetrennzeichen] [-m Miblist] [-P SNMP-Version] [-N Kontext] [-L Sicherheitsebene] [-U Sicherheitsname] [-a Auth-Protokoll] [-A Auth-Passwort] [-x Privatprotokoll] [-X Privatpasswort] [-4|6]
check_spop : Dieses Plugin testet sichere POP-Verbindungen mit dem angegebenen Host.
Verwendung: check_spop -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_ssh : Versuche, eine Verbindung zu einem SSH-Server auf dem angegebenen Server und Port herzustellen.
Verwendung: check_ssh [-4|-6] [-t ] [-R ] [-P ]
check_ssmtp : Dieses Plugin testet SSMTP-Verbindungen mit dem angegebenen Host.
Verwendung: check_ssmtp -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
check_tcp : Dieses Plugin testet TCP-Verbindungen mit dem angegebenen Host.
Verwendung: check_tcp -H Host -p Port [-w ] [-C ] [-S ] [-e ] [-Q ][-M ] [-D ] [-T ] [-R ] [-M ] [-v] [-4|-6] [-j] [-D [, ]] [-S ] [-E]
Für weitere Informationen führen Sie den folgenden Befehl unter dem Plugin-Pfad aus:
Plugin-Name --help
Farmguardian verwendet diese Plugins , um den Gesundheitszustand der Backends zu überprüfen und die Ausgabe von Ausführungsfehlern des ausgeführten Plugins zu verwalten, um den Backend-Status wie folgt zu bestimmen:
Wenn der Fehler Ausgabe == 0 dann ist das Backend OK > $? = 0
Wenn der Fehler Ausgabe <> 0 dann ist das Backend NICHT OK > $? <> 0
Benutzerdefiniertes Plugin #
Systemadministratoren können diese Plugins konfigurieren, da sie vollständig programmierbar sind und an jedes Protokoll oder jede Anwendung angepasst werden können.
Dieses Beispiel zeigt ein benutzerdefiniertes Plugin check_load.sh.
#!/bin/bash ### ###Kommentare: ###SNMP-Dienstprogramme sollten installiert sein. ###SNMPd sollte installiert und in den Backends konfiguriert sein. ### MAXVALUE=4 COMMUNITY="public" EXECUTE=`snmpget -v 2c -c $COMMUNITY $1 .1.3.6.1.4.1.2021.10.1.3.1 |cut -d ':' -f2 | cut -d '.' -f1 | sed s/\ // | sed s/\"//` echo "SNMP-CPU-Auslastungsprüfung für $1 ist $EXECUTE" # Wenn das Ergebnis wahr ist, beenden Sie mit 1; Fehler; sonst exit = 0; OK if (( $EXECUTE >= $MAXVALUE )); dann #Fehlerausgabe; der Server ist überlastet und der Load Balancer sendet keine weiteren Verbindungen exit 1 sonst #, kein Fehler; der Server kann weitere Verbindungen akzeptieren exit 0 fi
Konstante #
Wenn Farmguardian ein Plugin ausführt, kann es Konstanten oder Token als Argumente verwenden, wie zum Beispiel:
HOST. Bauernwächter kümmert sich darum, diese Konstante durch die echte Server-IP-Adresse zu ändern.
PORT. Bauernwächter kümmert sich darum, diese Konstante durch den tatsächlichen Server-Port zu ändern.
Diese Konstanten werden für jedes Plugin verwendet. Farmguardian nutzt sie, um den Integritätscheck mit den tatsächlichen Parametern durchzuführen.
Farms #
Auf diesem Tab finden Sie eine Liste der Farmen und Dienstleistungen, die diesen Farmguardian -Gesundheitscheck verwenden.
Farmen und Dienste können über diese Farmguardian -Gesundheitsprüfung mithilfe mehrerer Auswahlen mit einfachen Pfeilsymbolen oder Doppelpfeilen zum Aktivieren oder Deaktivieren aller Farmen hinzugefügt oder daraus entfernt werden.

