
Sensu ist eine Open-Source-Anwendungs- und Infrastrukturüberwachungslösung, die entwickelt wurde, um Überwachungsherausforderungen zu lösen, die durch eine Mischung aus Infrastrukturen (d. h. öffentliche, private und hybride Clouds) entstehen.
Sensu-Dienste verwenden einen Nachrichtenbus (z. B. RabbitMQ), um Prüfanfragen und Prüfergebnisse zu kommunizieren, die Daten zu Prüfungen, Ereignissen und Client-Informationen werden dauerhaft im Datenspeicher (z. B. Redis) gespeichert.
Der Sensu-Server veröffentlicht und plant Prüfausführungsanforderungen an Client-Abonnements. Abonnements können einfach als Liste von Rollen bezeichnet werden (z. B. Webserver, Datenbank, Betriebssystemtyp), die bestimmen, welche Prüfungen vom Client ausgeführt werden.
Auf dem Client-Computer wird die Sensu-Client-Software ausgeführt, ein voll ausgestatteter Überwachungsagent, der die Client-Registrierung, Abonnements, die Ausführung lokaler Prüfungen (geplant durch den Sensu-Client, nicht durch den Sense-Server) und die vom Sensu-Server geplanten Prüfanforderungen durchführt.
Bei einer Kontrolle, z. um den Status des Apache-Webservers zu überprüfen. Die Prüfung wird auf dem Sensu-Client ausgeführt. Wenn die Prüfung einen Dienstausfall meldet, leitet der Sensu-Server das Ergebnis an den Ereignisprozessor weiter, der die Prüfungsergebnisse verarbeitet und Maßnahmen wie das Senden einer E-Mail oder das Benachrichtigen im Dashboard über die RESTful-API ergreift.
Artikelserie:
TEIL 1 : Installieren Sie Sensu auf Ubuntu 16.04 / Debian 9 / Debian 8
TEIL 2 :Installieren Sie Uchiwa – Dashboard für Sensu Core Monitoring Tool
TEIL 3 :So fügen Sie einen Remote-Linux-Host zum Sensu Monitoring Tool hinzu
Freigabe:
Sensu Core – ein Open-Source-Softwareprojekt, veröffentlicht unter einer freizügigen MIT-Lizenz.
Sensu Enterprise – die kommerzielle Version von Sense Core mit zusätzlichen Funktionen, Support, Schulung und vielen anderen Vorteilen.
Eigenschaften:
Im Folgenden sind die Vorteile von Sensu aufgeführt,
- Server, Anwendungsintegrität, Dienste und Geschäfts-KPIs überwachen
- Warnungen und Benachrichtigungen
- Dynamische Kundenregistrierung und -abmeldung
- Kann mit Chef, Puppet und Ansible automatisiert werden
- Verfügbarkeit von kommerziellem Support
Umgebung:
Hostname | IP-Adresse | Betriebssystem | Zweck |
---|---|---|---|
server.itzgeek.local | 10.128.0.3 | Ubuntu 16.04 | Sensu-Server (Redis, RabbitMQ und Uchiwa) |
debian.itzgeek.local | 10.128.0.4 | Debian 9 | Sensu-Client |
Diese Anleitung führt Sie durch die Installation von Sensu auf Ubuntu 16.04 / Debian 8.
Redis installieren:
Installieren Sie zunächst Redis auf dem Sensu-Server.
sudo apt-get update sudo apt-get -y install redis-server apt-transport-https
Starten Sie den Redis-Dienst, falls erforderlich.
sudo service redis-server start
Stellen Sie sicher, dass Redis einsatzbereit ist, indem Sie den folgenden Befehl ausführen.
redis-cli ping
Ausgabe
PONG
Installieren Sie RabbitMQ:
Fügen Sie das Erlang-Repository hinzu, wenn RabbitMQ auf der Erlang-Laufzeit ausgeführt wird.
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb sudo dpkg -i erlang-solutions_1.0_all.deb
Fügen Sie den öffentlichen Erlang-Schlüssel zu Ihrer Liste vertrauenswürdiger Schlüssel hinzu.
wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -
Installieren Sie RabbitMQ zusammen mit der Erlang-Laufzeitumgebung mit dem folgenden Befehl.
sudo apt-get update && sudo apt-get install -y socat erlang-nox=1:19.3-1
RabbitMQ ist in den Standard-Repositorys von Ubuntu und Debian enthalten, aber die Versionen sind oft ziemlich alt. Diese Anleitung empfiehlt Ihnen, die neueste Version von RabiitMQ über das offizielle Repository zu installieren.
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server_3.6.10-1_all.deb
Installieren Sie das RabbitMQ-Repository-Paket.
sudo dpkg -i rabbitmq-server_3.6.10-1_all.deb
Fahren Sie mit der Installation des RabbitMQ-Servers fort.
sudo apt-get update && sudo apt-get install -y rabbitmq-server
Starten Sie den RabbbitMQ-Dienst.
sudo service rabbitmq-server start
Erstellen Sie einen RabbitMQ vhost und einen Benutzer für Senso. Ersetzen Sie Passwort mit dem Passwort Ihrer Wahl. Sie benötigen diese Kontodaten später, um den Sensu-Server zu konfigurieren.
sudo rabbitmqctl add_vhost /sensu sudo rabbitmqctl add_user sensu password sudo rabbitmqctl set_permissions -p /sensu sensu ".*" ".*" ".*"
Installieren Sie Sensu Core:
Sensu bietet offizielle Repositories an für die Betriebssysteme Debian und Ubuntu. Das Sensu Core-Paket enthält sensu-server , sensu-api , und sensu-client .
Installieren Sie den öffentlichen GPG-Schlüssel und fügen Sie die APT-Konfigurationsdatei unter /etc/apt/sources.list.d/sensu.list hinzu .
wget -O- https://sensu.global.ssl.fastly.net/apt/pubkey.gpg | sudo apt-key add - echo "deb https://sensu.global.ssl.fastly.net/apt sensu main" | sudo tee /etc/apt/sources.list.d/sensu.list
Installieren Sie Sensu mit dem folgenden Befehl.
sudo apt-get update && sudo apt-get install -y sensu
Sensu-Server konfigurieren:
Auf Debian- und Ubuntu-Systemen lädt Sensu die Konfiguration aus /etc/sensu/config.json und /etc/sensu/conf.d/ Verzeichnis.
Sensu-Prozesse erfordern eine zusätzliche Konfiguration, um ihnen mitzuteilen, wie sie sich mit dem RabbitMQ-Transportbus verbinden sollen.
sudo nano /etc/sensu/conf.d/rabbitmq.json
Aktualisieren Sie die Datei mit den folgenden Werten. Ersetzen Sie Passwort mit dem von Ihnen gewählten Passwort einige Schritte zurück.
{ "rabbitmq": { "host": "127.0.0.1", "port": 5672, "vhost": "/sensu", "user": "sensu", "password": "password" } }
In diesem Leitfaden wird die Sicherung des Transports (RabbitMQ) nicht behandelt, aber wir empfehlen Ihnen dringend, eine Sensu-Installation zu sichern.
LESEN :Sensu-Transport per SSL-Verschlüsselung sichern
Erstellen Sie redis.json Datei, um die Verbindungsinformationen für Sensu für den Zugriff auf Redis einzuschließen.
sudo nano /etc/sensu/conf.d/redis.json
Fügen Sie der obigen Datei die folgenden Zeilen hinzu.
{ "redis": { "host": "127.0.0.1", "port": 6379 } }
Erstellen Sie api.json Datei, die die Verbindungsinformationen für Sensu enthält, um auf den API-Dienst zuzugreifen.
sudo nano /etc/sensu/conf.d/api.json
Fügen Sie der obigen Datei die folgenden Zeilen hinzu.
{ "api": { "host": "localhost", "bind": "0.0.0.0", "port": 4567 } }
Sensu Core wird nicht mit dem Überwachungs-Dashboard geliefert, daher müssten Sie Uchiwa installieren, das ein Open-Source-Dashboard für Sensu ist.
LESEN :So installieren Sie das Uchiwa-Dashboard.
Das ist vorerst alles. Bleiben Sie dran für weitere Artikel zum Sensu Monitoring Tool.