GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So fügen Sie einen Remote-Linux-Host zum Sensu Monitoring Tool hinzu

Sensu-Clients sind Überwachungsagenten, die auf jedem Server installiert und ausgeführt werden, der vom Sensu-Tool überwacht wird. Die Arbeit eines Sensu-Clients besteht darin, ein System bei Sensu zu registrieren , Senden von Keepalive-Nachrichten und Ausführen von Überwachungsprüfungen .

Jeder Kunde kann Mitglied eines oder mehrerer Abonnements sein – sagen Sie einfach; eine Liste der ihnen zugewiesenen Rollen (Bsp., Webserver, Datenbank usw.).

Wenn ein Client die vom Sensu-Server veröffentlichten Prüfanforderungen (über RabbitMQ – Sensu-Transport) abonniert, führt er sie lokal aus und veröffentlicht das Ergebnis der Prüfung zurück an den Sensu-Transport, und dann verarbeitet ein Sensu-Server die Ergebnisse. P>

In diesem Handbuch werden wir Client-Rechner so konfigurieren, dass sie Ergebnisse von Dienstprüfungen an den Sensu-Server senden. Vorausgesetzt, Sie haben unsere vorherigen Artikel über Sensu Core gelesen.

LESEN :Installieren Sie Sensu auf Ubuntu 16.04 / Debian 8

Sensu Core wird nicht mit dem grafischen Dashboard geliefert, daher müssten Sie Uchiwa installieren – ein Open-Source-Dashboard für das Sensu-Überwachungstool.

LESEN :So installieren Sie Uchiwa – Open Source Dashboard für Sensu Monitoring Tool

Sensu-Repositories hinzufügen:

Konfigurieren Sie je nach Betriebssystem das Sensu-Repository, um das Paket von der offiziellen Website abzurufen.

### CentOS 7 / RHEL 7 ###

echo '[sensu]
name=sensu
baseurl=https://sensu.global.ssl.fastly.net/yum/7/x86_64/
gpgcheck=0
enabled=1' | sudo tee /etc/yum.repos.d/sensu.repo

### Ubuntu 16.04 / Debian 8 ###

sudo apt-get update && sudo apt-get -y install apt-transport-https
wget -q https://sensu.global.ssl.fastly.net/apt/pubkey.gpg -O- | sudo apt-key add -
echo "deb     https://sensu.global.ssl.fastly.net/apt sensu main" | sudo tee /etc/apt/sources.list.d/sensu.list
sudo apt-get update

Installieren Sie Sensu mit dem folgenden Befehl.

### CentOS 7 / RHEL 7 ### 

yum -y install sensu

### Ubuntu 16.04 / Debian 8 ###

sudo apt-get -y install sensu

System registrieren:

Das Standardkonfigurationsverzeichnis von Sensu ist /etc/sensu/config.d , in einigen Fällen müssen Sie dieses Verzeichnis möglicherweise manuell erstellen, falls es nicht verfügbar ist.

Konfigurationsdateien sollten im JSON-Format vorliegen . Erstellen Sie client.json Datei.

vi /etc/sensu/conf.d/client.json

Fügen Sie den folgenden Inhalt in die obige Datei ein.

{
"client": {
  "name": "debian.itzgeek.local",
  "address": "10.128.0.4",
  "environment": "production",
  "subscriptions": [
    "web",
    "debian"
  ]
 }
}

Wo,

client – ​​Name für den Client, sollte ein eindeutiger Name sein. Mein Rechner ist Debian 8 .

Adresse –  IP-Adresse oder Hostname des Clients.

Umgebung –  Ein benutzerdefiniertes Attribut, das nicht Teil der Sensu-Client-Spezifikation ist. Diese benutzerdefinierten Attribute werden von Sensu-Filtern überprüft, die Ihnen helfen, bestimmte Aktionen basierend auf der Umgebung auszuführen (z. B. nur Warnungen bei Ereignissen in der Produktionsumgebung)

Abonnements –  Liste der Rollen oder Verantwortlichkeiten, die dem Kunden zugewiesen sind.

Konfigurieren Sie den Sensu-Client für die Verbindung mit dem Sensu-Transport. Transport.json-Datei erstellen.

vi /etc/sensu/conf.d/transport.json

Fügen Sie den folgenden Inhalt in die obige Datei ein.

{
 "transport": {
   "name": "rabbitmq",
   "reconnect_on_error": true
  }
 }

Konfigurieren Sie Sensu-Transportdetails, indem Sie rabbitmq.json erstellen.

vi /etc/sensu/conf.d/rabbitmq.json

Kopieren Sie den folgenden Inhalt und fügen Sie ihn in die obige Datei ein. Ersetzen Sie grüne Werte je nach Sensu-Setup.

{
  "rabbitmq": {
    "host": "10.128.0.3",
    "port": 5672,
    "vhost": "/sensu",
    "user": "sensu",
    "password": "password"
  }
}

Wo,

host – RabbitMQ-Server-IP (Sensu-Server)

Port – Port des RabbitMQ-Servers

vhost, user and password – RabbitMQ virtueller Host, Benutzer und Passwort, die wir während der Installation des Sensu-Servers erstellt haben.

Starten Sie den Sensu-Client-Dienst mit dem folgenden Befehl neu.

service sensu-client restart

Öffnen Sie das Uchiwa-Dashboard und prüfen Sie, ob der neue Client erfolgreich auf dem Sensu-Server registriert wurde.

Der folgende Screenshot zeigt Ihnen die Details eines neu hinzugefügten Kunden.

Jetzt ist es an der Zeit, Sensu für die Überwachung Ihrer Infrastruktur zu konfigurieren.

Dienst überwachen:

Sensu verwendet Prüfungen (Befehle), um eine Infrastruktur zu überwachen, sie werden vom Sensu-Client ausgeführt, um eine Bedingung zu überwachen (z. B. den Status des Dienstes zu überprüfen) oder Messungen zu erfassen (z. B. wie viel Speicher verwendet wird).

Ergebnisdaten von Standardprüfungen liegen typischerweise in einer für Menschen lesbaren Nachricht vor, und Metrikprüfungen würden typischerweise Messungen enthalten, die durch Prüfung erfasst wurden. Außerdem gibt der Exit-Code-Status den Zustand an; 0 – OK , 1 – WARNUNG , und 2 – KRITISCH , ähnlich wie Nagios; bedeutet, dass Sie Nagios-Plugins verwenden können mit Sensu ohne Modifikation.

Diese Prüfungen werden entweder vom Sensu-Server oder vom Sensu-Client geplant.

Abonnementprüfungen:

Diese Prüfungen werden zentral vom Sensu-Server definiert und geplant, und sie haben eine definierte Gruppe von Abonnenten (man könnte sagen – eine Rolle) und Sensu-Clients werden Abonnenten dieser Rollen (d. h. Abonnement) über „Abonnement “. ”-Attribut.

Lassen Sie uns den Apache-Dienst mithilfe der „Abonnementprüfungen“ überwachen “ mit dem Intervall von 60 Sekunden. Erstellen Sie auf dem Sensu-Server eine Konfigurationsdatei für „Abonnementprüfungen ” auf dem Sensu-Server.

raj@server:~$ sudo vi /etc/sensu/conf.d/apache_check.json

Fügen Sie den folgenden Inhalt in die obige .json ein Datei.

Wenn der Client Ubuntu 16.04 ist / Debian 8 :

{
  "checks": {
    "apache-status": {
      "command": "check-process.rb -p apache2",
      "subscribers": [
        "web"
      ],
      "interval": 60    
    }
  }
}

Wenn der Client CentOS 7/RHEL 7 ist :

{
  "checks": {
    "apache-status": {
      "command": "check-process.rb -p httpd",
      "subscribers": [
        "web"
      ],
      "interval": 60    
    }
  }
}

Starten Sie den „sensu-server“ neu ” mit dem folgenden Befehl.

raj@server:~$ sudo service sensu-server restart

Stellen Sie sicher, dass der Client-Rechner (z. B. debian.itzgeek.local ) hat „web“ abonniert „Wenn nicht, aktualisieren Sie die client.json Datei.

vi /etc/sensu/conf.d/client.json

Die Datei sollte wie unten aussehen.

{
"client": {
  "name": "debian.itzgeek.local",
  "address": "10.128.0.4",
  "environment": "production",
  "subscriptions": [
    "web",
    "debian"
  ]
 }
}

Sensu-Plug-ins bieten ein ausführbares Skript, das als Sensu-Prüfungen verwendet werden kann, um Systemressourcen, Dienste und den Zustand von Anwendungen zu überwachen. Installieren Sie das Sensu-Plugin für Prozessprüfungen „sensu-plugins-process-checks “ mit dem Gem-Befehl auf dem Client-Rechner (debian.itzgeek.local ).

/opt/sensu/embedded/bin/gem install sensu-plugins-process-checks

Öffnen Sie das Uchiwa-Dashboard und warten Sie einige Zeit, überprüfen Sie erneut „Apache-Status “ wird in einer Minute angezeigt. Wenn der Apache-Prozess nicht läuft oder nicht gefunden wird, erhalten Sie möglicherweise eine kritische Ereignismeldung wie unten im Dashboard.

Wenn der Apache-Prozess ausgeführt wird, könnte das Dashboard wie folgt aussehen.

Ich hoffe, Sie haben jetzt verstanden, wie „Abonnementprüfungen ” Arbeit in Sensu. Wir werden „Eigenständige Prüfungen sehen ” im nächsten Abschnitt.

Eigenständige Prüfungen:

Diese Prüfungen werden auf einem Sensu-Client definiert (debian.itzgeek.local ) mit dem Prüfattribut „eigenständig “ auf „true“ gesetzt “. Hier verwendet der Sensu-Client seinen eigenen Planer zum Planen eigenständiger Prüfungen und sendet das Ergebnis der Prüfungen an den Sensu-Server.

Lassen Sie uns den Speicherplatz mithilfe der „Standalone-Prüfungen“ überwachen “ mit dem Intervall von 60 Sekunden. Auf dem Client-Rechner (debian.itzgeek.local ), installieren Sie das Sensu Disk Space Plugin mit dem folgenden Befehl.

/opt/sensu/embedded/bin/gem install sensu-plugins-disk-checks

Erstellen Sie eine Konfigurationsdatei für die Festplattenprüfung unter „/etc/sensu/conf.d ” Verzeichnis.

vi /etc/sensu/conf.d/disk_check.json

Verwenden Sie für diese Überprüfung den folgenden Inhalt.

{
  "checks": {
    "disk-status": {
      "command": "check-disk-usage.rb -w 70 -c 90",
      "standalone": true,
      "interval": 60
   }
 }
}

Starten Sie den Sensu-Client-Dienst neu.

service sensu-client restart

Öffnen Sie das Uchiwa-Dashboard und prüfen Sie, ob der neue Haken auf dem Dashboard sichtbar ist.

Das folgende Bild zeigt, dass sich die Festplattennutzung im Warnzustand befindet.

Interessiert an Serverüberwachung:

LESEN :Installieren und konfigurieren Sie Nagios auf CentOS 7 / Ubuntu 16.04 / Debian 8

LESEN :Installieren Sie Icinga2 auf Ubuntu 16.04 / 14.04 , Debian und Mint

LESEN:So installieren Sie Zabbix Server 3.2 unter CentOS 7 / Ubuntu 16.04 / Debian 8

LESEN :Installieren Sie Monitorix auf CentOS 7 / Ubuntu 16.04 / Fedora 24 / Debian 8 – OpenSource Lightweight System Monitoring Tool

LESEN :Netdata – Echtzeit-Leistungsüberwachungstool für Linux

Das ist alles. Danke fürs Lesen.


Debian
  1. So fügen Sie entfernte Linux- und Windows-Hosts zu Icinga 2 für die Überwachung hinzu

  2. So fügen Sie Nagios Server Windows- und Linux-Hosts zur Überwachung hinzu

  3. So fügen Sie Cacti einen Remote-Linux-Host zur Überwachung hinzu

  4. Wie man eine IP in Fail2ban unter Debian Linux auf die Whitelist setzt

  5. Wie füge ich eine Remote-MySQL-Verbindung unter Linux hinzu?

So führen Sie SSH in ein bestimmtes Verzeichnis unter Linux aus

So installieren Sie das Gtop-Systemüberwachungstool unter Linux

So fügen Sie einen Linux-Host zu Nagios Ubuntu Server hinzu – Teil 2

So installieren Sie das Pandora FMS-Überwachungstool unter Ubuntu Linux

So installieren Sie den Remmina Remote Desktop Client unter Ubuntu Linux

So installieren Sie das Icinga 2-Überwachungstool unter Rocky Linux 8