Riemann installieren unter Ubuntu 17.10

By | 30. März 2018

Ach wie schön ist es doch mal etwas zu installieren was meinen schönen Namen trägt. Nein leider habe ich ansonsten mit der Software „Riemann“ nichts zu tun. Beginnen wir mal damit was Riemann überhaupt ist.

Riemann aggregiert im Prinzip Events von Servern und Anwendungen und besitzt eine leistungsstarke aber komplexeVerarbeitungssprache. Wofür braucht man das? Naja, man kann auf diese Events die man sich definiert reagieren und so Alarme auslösen oder auch eine Slack Nachricht versenden. Für uns war es interessant, da alle Lognachrichten zentral zwar auf einem Log-Server landen, aber die Auswertung nur rudimentär möglich ist. Sprich möchte man zum Beispiel alarmiert werden, wenn der Festplattenplatz unverhältnismäßig schnell ansteigt, oder extrem viele 500er Fehler vom Webserver kommen wird es kompliziert.

Der Aufbau wäre dann wie folgt: Webserver sendet seine Lognachrichten an den Logserver, dieser leitet alles an die Riemann Instanz weiter, und diese wertet den Stream aus. Für dieses kleine Tutorial basteln wir uns aber „nur“ einen Riemann Server mit Nginx und nutzen ein Riemann Plugin zum Überwachen des Riemann Servers, alles auf einem Ubuntu 17.10 Server.

Installieren Ubuntu Development Tools

Für das Kompilieren der diversen Komponenten brauchen wir unter Ubuntu die Development Tools, sowie Ruby und die JAVA Runtime Umgebung.

Riemann Server installieren

Wir sind ja faul, daher installieren wir den Riemann Server über ein „.deb“ – Paket, hier wird das ganze auch gleich als systemd.service angelegt.

Für unseren Test passen wir noch die „riemann.config“ an, so dass er Anfragen von „draußen“ annehmen mag (let [host „0.0.0.0“]).

Die ersten Events ansehen

Riemann sollte jetzt laufen, jetzt packen wir uns ein paar Tools auf den Server, unteranderem die Dashboard Komponente und einen Basic Server Health Monitor, welcher zum Beispiel Meldungen zum Festplattenplatz an Riemann schickt.

Anschließend in deinem Verzeichnis eine „config.rb“ Datei mit folgendem Inhalt anlegen.

Zum Starten des Dashboards brauchst du jetzt nur folgenden Befehl ausführen:

Wenn alles geklappt hat, sollte auf deiner Konsole folgendes auftauchen

Das Dashboard erreichst du über deinen Browser: http://<<IP>>:4567, aber bitte nicht erschrecken – für verwöhnte Nutzer sieht das ganze sehr .. dürftig aus.

 

Das Riemann Dashboard zum Testen konfigurieren

Für unseren Test legen wir uns jetzt ein neues Dashboard an. Dafür klickst mit gedrückter „CMD“ Taste (Mac) auf das Riemann und drückst ‚e‘. Als Titel nimm was immer du möchtest, Type: log und als query einfach nur „true“.

Du wirst jetzt eine Fehlermeldung bekommen (Websocket), also ändere rechts oben die IP auf deine eigene:

Zum Schluss drückst du nun noch ’s‘ zum Speichern des Dashboards.

Events an Riemann senden

Langsam wollen wir aber auch mal etwas sehen oder? Mach dir eine zweite Konsole zu deinem Server auf, und starte mal „riemann-health„.

Wirfst du jetzt einen Blick auf dein „fancy“-Dashboard, müssten die ersten Events vom Server erscheinen.

Fantastisch oder? .. klar das Design ist etwas für Puristen, aber es funktioniert! Natürlich doof, riemann-health nach jedem Reboot zu starten, also richten wir uns dafür einen systemd Service ein:

Gleiches Spiel mit dem Dashboard

Nginx für das Frontend

Jetzt der Feinschliff, Nginx soll das Dashboard ausliefern.

Die Default config des Nginx ersetzen wir jetzt wie folgt:

Ab jetzt kannst du dein Dashboard einfach über „http://ip“ aufrufen.

Wie geht es weiter

Dein Riemann Server läuft nun wie gewünscht, jetzt kannst du dich in Ruhe mit dem Auswerten beschäftigen, oder weitere Server anbinden. Alles was du brauchst findest du in der Dokumentation von Riemann. Wer sich wirklich damit beschäftigen möchte, findet bei Amazon auch genau ein Buch zum dem Thema: „The Art of Monitoring„*

In diesem Sinne, macht euch ein paar schöne Ostertage.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.