Nächste: , Vorige: , Nach oben: Dienste   [Inhalt][Index]


12.9.16 Systemüberwachungsdienste

Tailon-Dienst

Tailon ist eine Web-Anwendung, um Protokolldateien zu betrachten und zu durchsuchen.

Das folgende Beispiel zeigt, wie Sie den Dienst mit den Vorgabewerten konfigurieren. Nach Vorgabe kann auf Tailon auf Port 8080 zugegriffen werden (http://localhost:8080).

(service tailon-service-type)

Im folgenden Beispiel werden mehr Anpassungen an der Tailon-Konfiguration vorgenommen: sed gehört dort auch zur Liste der erlaubten Befehle dazu.

(service tailon-service-type
         (tailon-configuration
           (config-file
             (tailon-configuration-file
               (allowed-commands '("tail" "grep" "awk" "sed"))))))
Datentyp: tailon-configuration

Der Datentyp, der die Konfiguration von Tailon repräsentiert. Dieser Typ verfügt über die folgenden Parameter:

config-file (Vorgabe: (tailon-configuration-file))

Die Konfigurationsdatei, die für Tailon benutzt werden soll. Als Wert kann ein tailon-configuration-file-Verbundsobjekt oder ein beliebiger G-Ausdruck dienen (siehe G-Ausdrücke).

Um zum Beispiel stattdessen eine lokale Datei zu benutzen, kann von der Funktion local-file Gebrauch gemacht werden.

(service tailon-service-type
         (tailon-configuration
           (config-file (local-file "./my-tailon.conf"))))
package (Vorgabe: tailon)

Das tailon-Paket, das benutzt werden soll.

Datentyp: tailon-configuration-file

Datentyp, der die Konfigurationsoptionen für Tailon repräsentiert. Dieser Typ verfügt über die folgenden Parameter:

files (Vorgabe: (list "/var/log"))

Die Liste der anzuzeigenden Dateien. In der Liste dürfen Zeichenketten stehen, die jeweils für eine einzelne Datei oder ein Verzeichnis stehen, oder auch Listen, deren erstes Element den Namen eines Unterbereichs angibt und deren übrige Elemente die Dateien oder Verzeichnisse in diesem Unterbereich benennen.

bind (Vorgabe: "localhost:8080")

Adresse und Port, an die sich Tailon binden soll.

relative-root (Vorgabe: #f)

Welcher URL-Pfad für Tailon benutzt werden soll. Wenn Sie hierfür #f angeben, wird kein Pfad benutzt.

allow-transfers? (Vorgabe: #t)

Ob es möglich sein soll, die Protokolldateien über die Weboberfläche herunterzuladen.

follow-names? (Vorgabe: #t)

Ob noch nicht existierende Dateien „getailt“ werden können.

tail-lines (Vorgabe: 200)

Wie viele Zeilen am Anfang aus jeder Datei gelesen werden.

allowed-commands (Vorgabe: (list "tail" "grep" "awk"))

Welche Befehle ausgeführt werden dürfen. Nach Vorgabe wird sed nicht erlaubt.

debug? (Vorgabe: #f)

Legen Sie debug? als #t fest, um Nachrichten zur Fehlersuche anzuzeigen.

wrap-lines (Vorgabe: #t)

Ob lange Zeilen nach der Anfangseinstellung in der Weboberfläche umgebrochen werden sollen. Setzen Sie es auf #t, werden Zeilen in der Anfangseinstellung umgebrochen (die Vorgabe), bei #f werden sie anfänglich nicht umgebrochen.

http-auth (Vorgabe: #f)

Welcher HTTP-Authentifizierungstyp benutzt werden soll. Setzen Sie dies auf #f, damit sich Benutzer nicht authentisieren müssen (die Vorgabe). Unterstützte Werte sind "digest" oder "basic".

users (Vorgabe: #f)

Wenn HTTP-Authentifizierung aktiviert ist (siehe http-auth), wird der Zugriff nur gewährt, nachdem die hier angegebenen Zugangsinformationen eingegeben wurden. Um Nutzer hinzuzufügen, geben Sie hier eine Liste von Paaren an, deren erstes Element jeweils der Benutzername und deren zweites Element das Passwort ist.

(tailon-configuration-file
  (http-auth "basic")
  (users     '(("benutzer1" . "passwort1")
               ("benutzer2" . "passwort2"))))

Darkstat-Dienst

Darkstat ist ein Netzwerkanalyseprogramm, das Pakete im Datenverkehr aufzeichnet, Statistiken zur Netzwerknutzung berechnet und über HTTP Berichte dazu bereitstellt.

Variable: darkstat-service-type

Dies ist der Diensttyp für den darkstat-Dienst. Sein Wert muss ein darkstat-configuration-Verbundsobjekt sein, wie in diesem Beispiel:

Datentyp: darkstat-configuration

Datentyp, der die Konfiguration von darkstat repräsentiert.

package (Vorgabe: darkstat)

Welches darkstat-Paket verwendet werden soll.

interface

Datenverkehr an der angegebenen Netzwerkschnittstelle mitschneiden.

port (Vorgabe: "667")

Bindet die Weboberfläche an den angegebenen Port.

bind-address (Vorgabe: "127.0.0.1")

Bindet die Weboberfläche an die angegebene Adresse.

base (Vorgabe: "/")

Geben Sie den Pfad der Basis-URL an. Das kann nützlich sein, wenn auf darkstat über einen inversen Proxy („Reverse Proxy“) zugegriffen wird.

Prometheus-Node-Exporter-Dienst

Der Prometheus-„Node-Exporter“ stellt Statistiken über Hardware und Betriebssystem für das Prometheus-Systemüberwachungssystem bereit, die vom Linux-Kernel geliefert werden. Dieser Dienst sollte auf allen physischen Netzwerkknoten und virtuellen Maschinen installiert werden, für die eine Überwachung ihrer Statistiken gewünscht wird.

Variable: prometheus-node-exporter-service-type

Dies ist der Diensttyp für den „prometheus-node-exporter“-Dienst. Sein Wert muss ein prometheus-node-exporter-configuration-Verbundsobjekt sein.

Datentyp: prometheus-node-exporter-configuration

Repräsentiert die Konfiguration von node_exporter.

package (Vorgabe: go-github-com-prometheus-node-exporter)

Das Paket für den prometheus-node-exporter, was benutzt werden soll.

web-listen-address (Vorgabe: ":9100")

Bindet die Weboberfläche an die angegebene Adresse.

textfile-directory (Vorgabe: "/var/lib/prometheus/node-exporter")

In dieses Verzeichnis können maschinenspezifische Metriken exportiert werden. Hier hinein sollten Dateien mit Metriken im Textformat platziert werden, die die Dateiendung .prom haben.

extra-options (Vorgabe: '())

Zusätzliche Befehlszeilenoptionen, die an den prometheus-node-exporter übergeben werden sollen.

Zabbix-Server

Zabbix ist ein hochleistungsfähiges Überwachungssystem, mit dem Daten von vielen Quellen gesammelt in einer Web-Oberfläche zur Schau gestellt werden. Alarm- und Berichtsfunktionen sind eingebaut; auch gibt es Vorlagen für gängige Betriebssystemmetriken, unter anderem die Netzwerk- und Prozessorauslastung sowie den Plattenplatzverbrauch.

In diesem Diensttyp steckt das zentrale Überwachungssystem von Zabbix. Zudem brauchen Sie zabbix-front-end-service-type, um Zabbix zu konfigurieren und Ergebnisse anzuzeigen, und vielleicht zabbix-agent-service-type auf den zu überwachenden Maschinen (auch andere Datenquellen werden unterstützt wie etwa Prometheus Node Exporter).

Variable: zabbix-server-service-type

Der Diensttyp des Zabbix-Server-Dienstes. Sein Wert muss ein zabbix-server-configuration-Verbundsobjekt sein. Folgendes ist enthalten.

Datentyp: zabbix-server-configuration

Verfügbare zabbix-server-configuration-Felder sind:

zabbix-server (Vorgabe: zabbix-server) (Typ: dateiartig)

Das zabbix-server-Paket.

user (Vorgabe: "zabbix") (Typ: Zeichenkette)

Das Benutzerkonto, mit dem der Zabbix-Server ausgeführt wird.

group (Vorgabe: "zabbix") (Typ: Zeichenkette)

Die Gruppe, mit der der Zabbix-Server ausgeführt wird.

db-host (Vorgabe: "127.0.0.1") (Typ: Zeichenkette)

Rechnername der Datenbank.

db-name (Vorgabe: "zabbix") (Typ: Zeichenkette)

Datenbankname.

db-user (Vorgabe: "zabbix") (Typ: Zeichenkette)

Benutzerkonto der Datenbank.

db-password (Vorgabe: "") (Typ: Zeichenkette)

Das Datenbankpasswort. Bitte benutzen Sie stattdessen include-files mit DBPassword=SECRET in einer angegebenen Datei.

db-port (Vorgabe: 5432) (Typ: Zahl)

Datenbank-Portnummer.

log-type (Vorgabe: "") (Typ: Zeichenkette)

Gibt an, wohin Protokollnachrichten geschrieben werden.

  • system - Syslog.
  • file - Die im log-file-Parameter angegebene Datei.
  • console - Standardausgabe.
log-file (Vorgabe: "/var/log/zabbix/server.log") (Typ: Zeichenkette)

Protokolldateiname für den file-Parameter von log-type.

pid-file (Vorgabe: "/var/run/zabbix/zabbix_server.pid") (Typ: Zeichenkette)

Name der PID-Datei.

ssl-ca-location (Vorgabe: "/etc/ssl/certs/ca-certificates.crt") (Typ: Zeichenkette)

Der Ort mit den Dateien über die Zertifikatsautoritäten (Certificate Authoritys, CAs) zur Prüfung der SSL-Serverzertifikate.

ssl-cert-location (Vorgabe: "/etc/ssl/certs") (Typ: Zeichenkette)

Der Ort mit den SSL-Client-Zertifikaten.

extra-options (Vorgabe: "") (Typ: Zusatzoptionen)

Zusätzliche Optionen werden an die Zabbix-Server-Konfigurationsdatei angehängt.

include-files (Vorgabe: ()) (Typ: Einzubindende-Dateien)

Sie können einzelne Dateien oder alle Dateien in einem Verzeichnis in die Konfigurationsdatei einbinden.

Zabbix-Agent

Der Zabbix-Agent sammelt Informationen über das laufende System zur Überwachung mit dem Zabbix-Server. Einige Überprüfungen sind von vornherein verfügbar; eigene können Sie über Benutzerparameter hinzufügen.

Variable: zabbix-agent-service-type

Der Diensttyp des Zabbix-Agent-Dienstes. Sein Wert muss ein zabbix-agent-configuration-Verbundsobjekt sein. Folgendes ist enthalten.

Datentyp: zabbix-agent-configuration

Verfügbare zabbix-agent-configuration-Felder sind:

zabbix-agent (Vorgabe: zabbix-agentd) (Typ: dateiartig)

Das zabbix-agent-Paket.

user (Vorgabe: "zabbix") (Typ: Zeichenkette)

Das Benutzerkonto, mit dem der Zabbix-Agent ausgeführt wird.

group (Vorgabe: "zabbix") (Typ: Zeichenkette)

Die Gruppe, mit der der Zabbix-Agent ausgeführt wird.

hostname (Vorgabe: "") (Typ: Zeichenkette)

Der eindeutige Rechnername in richtiger Groß-/Kleinschreibung, der für aktive Überprüfungen benötigt wird und dem im Server eingestellten Rechnernamen entsprechen muss.

log-type (Vorgabe: "") (Typ: Zeichenkette)

Gibt an, wohin Protokollnachrichten geschrieben werden.

  • system - Syslog.
  • file - Die Datei aus dem log-file-Parameter.
  • console - Standardausgabe.
log-file (Vorgabe: "/var/log/zabbix/agent.log") (Typ: Zeichenkette)

Protokolldateiname für den file-Parameter von log-type.

pid-file (Vorgabe: "/var/run/zabbix/zabbix_agent.pid") (Typ: Zeichenkette)

Name der PID-Datei.

server (Vorgabe: ("127.0.0.1")) (Typ: Liste)

Die Liste der IP-Adressen, optional in CIDR-Notation angegeben, oder die Rechnernamen von Zabbix-Servern und Zabbix-Proxys. Eingehende Verbindungen werden nur dann angenommen, wenn sie von hier angegebenen Rechnern stammen.

server-active (Vorgabe: ("127.0.0.1")) (Typ: Liste)

Die Liste aus IP:Port-Paaren (oder Rechnername:Port-Paaren) von Zabbix-Servern und Zabbix-Proxys für aktive Überprüfungen. Wenn kein Port angegeben wurde, wird der Vorgabeport benutzt. Wenn dieser Parameter nicht angegeben wird, werden aktive Überprüfungen deaktiviert.

extra-options (Vorgabe: "") (Typ: Zusatzoptionen)

Zusätzliche Optionen werden an die Zabbix-Server-Konfigurationsdatei angehängt.

include-files (Vorgabe: ()) (Typ: Einzubindende-Dateien)

Sie können einzelne Dateien oder alle Dateien in einem Verzeichnis in die Konfigurationsdatei einbinden.

Zabbix-Frontend

Mit dem Zabbix-Frontend wird eine Weboberfläche als Vordergrundsystem (Frontend) für Zabbix bereitgestellt. Es kann auch auf einer anderen Maschine als der Zabbix-Server laufen. Dieser Diensttyp beruht darauf, die Dienste für PHP-FPM und NGINX mit der nötigen Konfiguration zum Laden der Zabbix-Benutzeroberfläche zu erweitern.

Variable: zabbix-front-end-service-type

Dieser Diensttyp stellt das Zabbix-Web-Frontend als Vordergrundsystem zur Verfügung. Sein Wert muss ein zabbix-front-end-configuration-Verbundsobjekt sein wie hier gezeigt.

Datentyp: zabbix-front-end-configuration

Verfügbare zabbix-front-end-configuration-Felder sind:

zabbix-server (Vorgabe: zabbix-server) (Typ: dateiartig)

Das zabbix-server-Paket, das benutzt werden soll.

nginx (Vorgabe: ()) (Typ: Liste)

Liste von nginx-server-configuration-Blöcken für das Zabbix-Frontend. Wenn es leer gelassen wird, lässt die Vorgabeeinstellung auf Port 80 lauschen.

db-host (Vorgabe: "localhost") (Typ: Zeichenkette)

Rechnername der Datenbank.

db-port (Vorgabe: 5432) (Typ: Zahl)

Datenbank-Portnummer.

db-name (Vorgabe: "zabbix") (Typ: Zeichenkette)

Datenbankname.

db-user (Vorgabe: "zabbix") (Typ: Zeichenkette)

Benutzerkonto der Datenbank.

db-password (Vorgabe: "") (Typ: Zeichenkette)

Das Datenbankpasswort. Bitte benutzen Sie stattdessen db-secret-file.

db-secret-file (Vorgabe: "") (Typ: Zeichenkette)

Die Datei mit den Geheimnis-Informationen, die an die zabbix.conf.php-Datei angehängt wird. Diese Datei enthält Zugangsdaten für die Nutzung durch das Zabbix-Frontend. Es wird von Ihnen erwartet, dass Sie sie manuell erzeugen.

zabbix-host (Vorgabe: "localhost") (Typ: Zeichenkette)

Zabbix-Server-Rechnername.

zabbix-port (Vorgabe: 10051) (Typ: Zahl)

Zabbix-Server-Port.


Nächste: , Vorige: , Nach oben: Dienste   [Inhalt][Index]