NETWAYS GmbH
Deutschherrnstraße 15-19
90429 Nürnberg

Phone:
+49 911 92885-0
Fax:
+49 911 92885-77
Email:
info(at)netways.de

Kontaktformular

Unsere Kunden

O2 Germany GmbH & Co. OHG

O2 Germany GmbH & Co. OHG

TYPO3 CMS

Graphite - Scalable Realtime Graphing

Graphite mit Grafana

Graphite ist eine Open Source Graphing Lösung, die stark auf Flexibilität und Performance ausgelegt ist.

Somit eignet sich Graphite nicht nur zum Erfassen von Daten aus einem Monitoring System wie Nagios oder Icinga, sondern kann auch zusammen mit beliebigen anderen Toolstacks genutzt werden.

Graphite ist sehr flexibel - Performance Daten werden nicht von einem Reaper eingelesen, sondern über einen TCP-Socket an den Graphite Agent geschickt.

Alle Komponenten von Graphite sind in einem Dienst - dem Graphite Carbon - zusammengefasst, der sowohl Daten entgegen nimmt und für das Webinterface bereitstellt, als auch als Whisper-Files auf den Storage schreibt.

Performante und flexible Speicherung

Der überwiegende Teil der heute verwendeten Graphinglösungen setzt aktuell auf ein RRD-Backend (PNP4Nagios). RRDs sind schnell, bieten aber wenig Flexibilität in der Verarbeitung historischer Daten. Datenbanken wären hier im Vergleich deutlich flexibler in der Weiterverarbeitung, können aber vor allem in großen Umgebungen zu Performancenegpässen führen.

Aus diesem Grund haben die Macher von Graphite die Vorteile aus beiden Lagern genommen und eine Datenbank namens Whisper entwickelt. Diese auf Python basierende Lösungen ähnelt im Grundsatz RRD sehr stark, geht jedoch mit der Speicherung von Werten anders um.

Neben der Möglichkeit historische Daten zu verarbeiten, werden hoch frequentierte Daten im Arbeitsspeicher (Carbon) gehalten und können so optimiert an Whisper übergeben werden. In den kommenden Versionen von Graphite wird Whisper von der neuen Storage-Engine Ceres ersetzt. Die aktuell noch in Entwicklung befindliche Lösung erlaubt ergänzend zu Whisper die dynamische Allokation von Speicherplatz und Verteilung der Daten auf eine Vielzahl von Servern.

Vorteile von Graphite

  • Open Source
  • Sehr schnell und stabil
  • Große Community
  • Umfangreiche API
  • Verschiedene Webfrontends für alle Anwendungsbereiche
  • Direkte Anbindung an Icinga 2

Graphite auch ohne Monitoring

Natürlich setzen wir Graphite schwerpunktmäßig bei Kunden ein, die mit uns ein Monitoringprojekt auf Basis von Nagios oder Icinga umsetzen. Jedoch ist Graphite eine sehr umfangreiche Lösung, die es erlaubt, in den verschiedensten Umgebungen effizient zu arbeiten und dabei beispielsweise auch mit anderen Analyse Tools kombiniert werden kann. In der Regel kann nahezu jede Software an Graphite angebunden werden, sofern die Daten entweder per TCP-Stream in einem vordefinierten Format geschickt werden oder man sich ein eigenes Reaper-Skript baut, welches die Verbindungen aufbaut und anschließend bestimmte Dateien einliest und deren Inhalte an Graphite überträgt.

Die Darstellung all dieser Informationen erfolgt schließlich über eines der Webinterfaces, über welche z.T. auch mathematische Funktionen auf einzelne oder mehrere Graphen angewendet werden können. Natürlich bietet sich zusätzlich noch die Angliederung von anderen Applikationen an Graphite an - denn über die umfangreiche API können die einzelnen Daten ebenfalls angezogen werden.