Sensu Go

Open Source Monitoring in der Cloud

25. Februar 2019, 9:50 Uhr | Autor: Christian Michel / Redaktion: Axel Pomper | Kommentar(e)

Fortsetzung des Artikels von Teil 1

Event-Pipelines im Backend

Im Backend von Sensu Go werden die Monitoring-Ergebnisse verarbeitet. Mit Hilfe von Filtern, Mutatoren und Handlern lassen sich Regeln definieren, die die Monitoring-Ergebnisse nach den Checks durchlaufen sollen – die so genannte Event-Pipeline. So können sie auf unterschiedliche Weise gefiltert, in ihrer Darstellung verändert und an Skripte übergeben werden. Durch diesen Aufbau kann Sensu Go nahezu nahtlos an Drittlösungen angebunden und mit bestehenden Systemen integriert werden: So lässt sich mittels verfügbarer Handler beispielsweise innerhalb weniger Minuten eine Integration mit InfluxDB als Timeseries Datenbank (TSDB), mit Grafana zur Visualisierung gesammelter Metriken und mit dem Chat-Channel Slack für Benachrichtigungen einrichten.

Das Backend von Sensu Go kümmert sich außerdem um das Speichern der Konfiguration, das jeweils aktuelle Ergebnis eines jeden Checks sowie dessen Status. Ergänzt man weitere Backend-Instanzen, lassen sich Cluster erstellen, um Lasten zu verteilen und die Ausfallsicherheit zu erhöhen. Aus dem Backend wird außerdem die Frontend-Komponente von Sensu Go gestartet. Das mit der JavaScript Bibliothek React entwickelte Dashboard bietet die Funktion, alle Monitoring-Inhalte von Sensu Go einzusehen oder Aktionen zu steuern wie das Anstoßen von Prüfanforderungen, die Bestätigung von Alarmen oder das (De-)Aktivieren von Prüfungen.

Agile Agenten im Zielsystem

Für die Durchführung der Monitoring-Checks sind bei Sensu Go Agenten verantwortlich, die auf den zu überwachenden Systemen installiert werden. Dies können zum Beispiel Server, virtuelle Maschinen oder Container sein. Von dort aus meldet sich der Agent initial an den Backends an, die in seiner Konfigurationsdatei hinterlegt sind, und führt dann lokal alle Monitoring-Prüfungen durch, für die er zuständig ist.

Ein Sensu-Agent ist aber nicht nur in der Lage, selbst Prüfungen durchzuführen, er kann auch Ergebnisse und Alarme von Drittlösungen annehmen, die beispielsweise nicht von außen abfragbar sind. Dafür gibt es verschiedene Möglichkeiten, die durch das Setzen eines Parameters in der Konfigurationsdatei des Agenten ganz einfach aktiviert werden können: Der Agent kann Events von außen über die Agent-API annehmen oder einen integrierten StatsD Listener verwenden. Die Werte werden dann an das Backend weitergegeben und standardmäßig dem jeweiligen Agenten automatisch zugeordnet.

Die Monitoring-Checks der Sensu-Agenten werden durch einen Publish-Subscribe Mechanismus gesteuert. Das bedeutet, allen Agenten können ein oder mehrere Tags für entsprechende Prüfaufträge als Abonnement zugeordnet werden. So erhalten alle Agenten mit entsprechender Subscription eine bestimmte Prüfanfrage, führen sie lokal aus und übermitteln das Ergebnis zurück. Dadurch lassen sich in der IT-Umgebung beispielsweise 10.000 Prüfungen anstoßen, während auf dem Monitoring-Server nur eine geplant und verwaltet werden muss. Mit dem Publish-Subscribe Mechanismus lassen sich so Prüfaufträge äußerst flexibel und effizient verwalten und steuern.

Wachsende Community

Die Vorteile von Sensu Go verschaffen dem jungen Open Source Monitoring System weltweit eine wachsende Fan- und Entwickler-Gemeinde. International setzen bereits Unternehmen wie Uber, Ericsson oder der Cloudspeicher-Anbieter Box.com auf Sensu. Auch für IT-Verantwortliche in Deutschland lohnt sich daher ein Blick auf diesen vielversprechenden Youngster im modernen Cloud-Monitoring.

Christian Michel ist Teamleiter System Monitoring bei Becon

Anbieter zum Thema

zu Matchmaker+

  1. Open Source Monitoring in der Cloud
  2. Event-Pipelines im Backend

Verwandte Artikel

funkschau

Professional Datacenter

Matchmaker+