Cerebro und Openshift

Andreas Nowak

Cerebro bietet eine WebGui zur Administration von Elasticsearch. Wie Cerebro genutzt werden kann und über welche praktischen Funktionen sie verfügt, erzählt Andreas Nowak in seinem Blogpost.

Cerebro ist der Nachfolger von kopf und bietet eine WebGUI zur Administration von Elasticsearch. Es bietet neben einem guten Überblick der Nodes, Indizes und Shards auch die Möglichkeit zur Verwaltung des Clusters auf einem viel einfacheren Weg, ohne Expertenwissen.

Die Installation auf Openshift kann mittels meinem Image bewerkstelligt werden, welches unter https://hub.docker.com/r/4nn0/cerebro/ verfügbar ist. Alternativ kann man es auch aus dem Sourcecode bauen: https://github.com/4nn0/openshift-cerebro

Cerebro kann natürlich auch ohne Openshift genutzt werden und eignet sich sehr gut als Ergänzung zu Kibana.

Man spricht Elasticsearch auf Openshift via oc exec und curl an, dabei muss man alle unten dargestellten Parameter mitgeben. Das erzeugt nicht nur viel Aufwand, sondern hat auch ein erhöhtes Fehlerpotential.

Die Übersichtsseite zeigt die Nodes und Indizes, welche alphabetisch sortiert sind. Zudem bietet die Seite eine Filterfunktion für beide Sachen, womit man schnell Zugriff auf den jeweiligen Node oder Index bekommt. Man kann hier Funktionen (öffnen, schliessen, fushen, löschen usw.) für die einzelnen Indizes ausführen oder auch für alle vorhandenen bzw. die dem aktuellen Filter matchen. Ausserdem werden diverse Metriken für die Indizes und Nodes angezeigt.

Die Nodesseite zeigt detailliertere Informationen über die Nodes. Diese Seite bietet keine weiteren Funktionen für das eigentliche Clustermanagement an. Man kann die Spalten sortieren und sie bietet diverse Filter an, um schnell an Informationen zu bestimmten Nodes oder Node-Typ zu gelangen.

Die Rest-Seite bietet die Möglichkeit Requests gegen die Elasticsearch API auszuführen, dabei kann man den Pfad, Request Methoden (GET, PUT, POST und DELETE) und Daten (JSON) für den Request definieren. Diese sollte man nur mit entsprechenden Vorkenntnissen nutzen. Die aktuelle Dokumentation dazu findet man hier: https://www.elastic.co/guide/en/elasticsearch/reference/current/api-conventions.html

Hier sieht man den Response auf den GET-Request gegen “/_cluster/health”

Cerebro bietet im “more” Menü noch viele weitere Funktionen, auf welche ich in diesem Blogpost nicht näher eingehen werde. Wir werden uns noch die “cat apis” etwas genauer anschauen.

Die aktuelle Dokumentation zu den Elasticsearch “cat APIs” findet man hier: https://www.elastic.co/guide/en/elasticsearch/reference/current/cat.html

Im folgenden Bild sieht man eine Liste mit den Endpunkten, welche cerebro anbietet. Bis auf Snapshots und Templates sind alle Endpunkte. Diese beiden sind jedoch über das “more” Menü auffindbar, welche man dort auch direkt verwalten kann.

Hier sieht man exemplarisch die Ausgabe vom “cat API” Endpunkt “Nodes”. Man kann sich mit wenigen Klicks alle relevanten Informationen holen und bekommt diese übersichtlich dargestellt.

Im Grossen und Ganzen kann ich Cerebro wärmstens weiterempfehlen. Es bietet viele Möglichkeiten und lässt sich sehr gut bedienen. Bei vielen Dingen ist man auch um einiges schneller als über die Console.

Kommentare sind geschlossen.